/// A use case represents a single unit of work in the application.
abstract interface class UseCase {
Output call(Input input);
}
/// A use case that returns a Future of [Output].
abstract interface class FutureUseCase
implements UseCase> {
@override
Future