i_app.dart 761 B

123456789101112131415161718192021222324
  1. import 'package:flowy_sdk/protobuf/flowy-workspace/protobuf.dart';
  2. import 'package:dartz/dartz.dart';
  3. typedef AppUpdatedCallback = void Function(String name, String desc);
  4. typedef AppCreateViewCallback = void Function(
  5. Either<List<View>, WorkspaceError> viewsOrFailed);
  6. typedef AppDeleteViewCallback = void Function(
  7. Either<List<View>, WorkspaceError> viewsOrFailed);
  8. abstract class IApp {
  9. Future<Either<List<View>, WorkspaceError>> getViews();
  10. Future<Either<View, WorkspaceError>> createView(
  11. {required String name, String? desc, required ViewType viewType});
  12. }
  13. abstract class IAppWatch {
  14. void startWatching(
  15. {AppCreateViewCallback? addViewCallback,
  16. AppUpdatedCallback? updatedCallback});
  17. Future<void> stopWatching();
  18. }