ant-design-x-vue
Version:
Craft AI-driven interfaces effortlessly
17 lines (16 loc) • 723 B
TypeScript
import { ButtonProps } from 'ant-design-vue';
import { type MaybeRefOrGetter, type ComputedRef, type Ref } from 'vue';
export type ControlledSpeechConfig = {
recording?: boolean;
onRecordingChange?: (recording: boolean) => void;
audioIcon?: ButtonProps['icon'];
audioDisabledIcon?: ButtonProps['icon'];
audioRecordingIcon?: ButtonProps['icon'];
};
export type AllowSpeech = boolean | ControlledSpeechConfig;
export type UseSpeechReturn = {
speechPermission: ComputedRef<boolean>;
triggerSpeech: (forceBreak: boolean) => void;
recording: Ref<boolean>;
};
export default function useSpeech(onSpeech: (transcript: string) => void, allowSpeech?: MaybeRefOrGetter<AllowSpeech>): UseSpeechReturn;