import 'package:flowy_sdk/protobuf/flowy-workspace/protobuf.dart'; import 'package:dartz/dartz.dart'; typedef WorkspaceCreateAppCallback = void Function( Either, WorkspaceError> appsOrFail); typedef WorkspaceUpdatedCallback = void Function(String name, String desc); typedef WorkspaceDeleteAppCallback = void Function( Either, WorkspaceError> appsOrFail); abstract class IWorkspace { Future> createApp( {required String name, String? desc}); Future, WorkspaceError>> getApps(); } abstract class IWorkspaceWatch { void startWatching( {WorkspaceCreateAppCallback? addAppCallback, WorkspaceUpdatedCallback? updatedCallback}); Future stopWatching(); }