import type { Corti } from "@corti/sdk"; import type { RecordingState } from "../types.js"; export type LanguagesChangedEventDetail = { languages: Corti.TranscribeSupportedLanguage[]; selectedLanguage: string | undefined; }; export type LanguageChangedEventDetail = { language: string; }; export type RecordingDevicesChangedEventDetail = { devices: MediaDeviceInfo[]; selectedDevice: MediaDeviceInfo | undefined; }; export type RecordingStateChangedEventDetail = { state: RecordingState; connection?: "CONNECTING" | "OPEN" | "CLOSING" | "CLOSED" | null; processing?: boolean; }; export type AudioLevelChangedEventDetail = { audioLevel: number; }; export type TranscriptEventDetail = Corti.TranscribeTranscriptMessage; export type CommandEventDetail = Corti.TranscribeCommandMessage; export type UsageEventDetail = Corti.TranscribeUsageMessage; export type ErrorEventDetail = { message: string; }; export declare function languagesChangedEvent(languages: Corti.TranscribeSupportedLanguage[], selectedLanguage: string | undefined): CustomEvent; /** * @deprecated Use languagesChangedEvent instead. This event is kept for backward compatibility. */ export declare function languageChangedEvent(language: string): CustomEvent; export declare function recordingDevicesChangedEvent(devices: MediaDeviceInfo[], selectedDevice: MediaDeviceInfo | undefined): CustomEvent; export declare function recordingStateChangedEvent(state: RecordingState, options?: Partial<{ connection: "CONNECTING" | "OPEN" | "CLOSING" | "CLOSED" | null; processing: boolean; }>): CustomEvent; export declare function transcriptEvent(detail: TranscriptEventDetail): CustomEvent; export declare function commandEvent(detail: CommandEventDetail): CustomEvent; export declare function usageEvent(detail: UsageEventDetail): CustomEvent; export declare function errorEvent(error: unknown): CustomEvent; /** * @deprecated Use recording-state-changed event with detail.connection field instead. */ export declare function streamClosedEvent(detail: unknown): CustomEvent; export declare function readyEvent(): CustomEvent; export declare function audioLevelChangedEvent(audioLevel: number): CustomEvent; export type NetworkActivityEventDetail = { direction: "sent" | "received"; data: unknown; }; export declare function networkActivityEvent(direction: "sent" | "received", data: unknown): CustomEvent; export type KeybindingChangedEventDetail = { key: string | null | undefined; code: string | null | undefined; keybinding: string | null; type?: "push-to-talk" | "toggle-to-talk"; }; export type KeybindingActivatedEventDetail = { keyboardEvent: KeyboardEvent; }; export declare function keybindingChangedEvent(key: string | null | undefined, code: string | null | undefined, keybinding: string | null, type?: "push-to-talk" | "toggle-to-talk"): CustomEvent; export declare function keybindingActivatedEvent(keyboardEvent: KeyboardEvent): CustomEvent;