import 'dart:async'; import 'package:dartz/dartz.dart'; import 'package:flowy_sdk/protobuf/flowy-workspace/errors.pb.dart'; import 'package:flowy_sdk/protobuf/flowy-workspace/trash_create.pb.dart'; abstract class ITrash { Future, WorkspaceError>> readTrash(); Future> putback(String trashId); Future> deleteViews(List> trashList); Future> restoreAll(); Future> deleteAll(); } typedef TrashUpdatedCallback = void Function(Either, WorkspaceError> trashOrFailed); abstract class ITrashListener { void start(TrashUpdatedCallback updateCallback); Future stop(); }