// // KBVoiceToTextManager.h // keyBoard // // Created by Mac on 2026/1/26. // #import NS_ASSUME_NONNULL_BEGIN @class KBVoiceInputBar; @class KBVoiceToTextManager; @protocol KBVoiceToTextManagerDelegate @optional - (void)voiceToTextManagerDidBeginRecording:(KBVoiceToTextManager *)manager; - (void)voiceToTextManagerDidEndRecording:(KBVoiceToTextManager *)manager; - (void)voiceToTextManagerDidCancelRecording:(KBVoiceToTextManager *)manager; - (void)voiceToTextManager:(KBVoiceToTextManager *)manager didUpdateInterimText:(NSString *)text; - (void)voiceToTextManager:(KBVoiceToTextManager *)manager didReceiveFinalText:(NSString *)text; - (void)voiceToTextManager:(KBVoiceToTextManager *)manager didFailWithError:(NSError *)error; @end /// Voice-to-text manager (binds KBVoiceInputBar and uses Deepgram). @interface KBVoiceToTextManager : NSObject @property(nonatomic, weak) id delegate; @property(nonatomic, weak, readonly) KBVoiceInputBar *inputBar; - (instancetype)initWithInputBar:(KBVoiceInputBar *)inputBar; - (void)prepareConnection; - (void)disconnect; @end NS_ASSUME_NONNULL_END