import 'package:appflowy_backend/protobuf/flowy-ai/protobuf.dart'; import 'package:appflowy_result/appflowy_result.dart'; import 'error.dart'; import 'text_completion.dart'; abstract class AIRepository { Future getStreamedCompletions({ required String prompt, required Future Function() onStart, required Future Function(TextCompletionResponse response) onProcess, required Future Function() onEnd, required void Function(AIError error) onError, String? suffix, int maxTokens = 2048, double temperature = 0.3, bool useAction = false, }); Future streamCompletion({ String? objectId, required String text, required CompletionTypePB completionType, required Future Function() onStart, required Future Function(String text) onProcess, required Future Function() onEnd, required void Function(AIError error) onError, }); Future, AIError>> generateImage({ required String prompt, int n = 1, }); }