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 IWorkspaceListener { void start({WorkspaceCreateAppCallback? addAppCallback, WorkspaceUpdatedCallback? updatedCallback}); Future stop(); }