import { ESSceneObject } from 'vtxf-xe2/dist-node/xe2-base-objects'; import { Destroyable, Event, PartialWithUndefinedReactivePropsToNativeProps, ReactivePropsToNativePropsAndChanged } from 'vtxf-xe2/dist-node/xe2-base-utils'; import { SceneObjectKey } from 'vtxf-xe2/dist-node/xe2-utils'; import "./FunAsrVoiceMonitor"; import { FunAsrVoiceMonitor } from './FunAsrVoiceMonitor'; import { MyTTS } from '../MyTTS'; export declare function animateFrame(func: (timeStamp: number, ...args: T) => void, ...args: T): () => void; declare class TimeCountDown extends Destroyable { func?: () => void; private _enabled; get enabled(): boolean; set enabled(value: boolean); get enabledChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[boolean, boolean]>; private _duration; get duration(): number; set duration(value: number); get durationChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[number, number]>; private _durationInit; debug: boolean; private _counting; constructor(func: () => void, duration: number, enabled?: boolean); } export declare type MyVoiceControllerMessageFuncType = (awake: boolean, msg: string, context: { myVoiceController: MyVoiceController; }) => void; export declare type MyVoiceControllerAwakeFuncType = (awake: boolean, context: { myVoiceController: MyVoiceController; }) => void; export declare class MyVoiceController extends ESSceneObject { static readonly type: string; get typeName(): string; get defaultProps(): { enabled: boolean; wsUrl: string; ttsUrl: string; wakeWords: import("vtxf-xe2/dist-node/xe2-base-utils").ReactiveVariable; hotWords: string; awakeDuration: number; messageFuncStr: string; awakeFuncStr: string; debug: boolean; execOnceFuncStr: string; updateFuncStr: string; toDestroyFuncStr: string; createAppendedObjFuncStr: string; name: string; ref: string | undefined; devTags: import("vtxf-xe2/dist-node/xe2-base-utils").ReactiveVariable; extras: import("vtxf-xe2/dist-node/xe2-base-utils").ReactiveVariable; }; get json(): JsonType; set json(value: JsonType); static defaults: { viewerTagsEnums: [string, string][]; }; static defaultMessageFuncStr: string; static defaultAwakeFuncStr: string; private _aiSpeaking; get aiSpeaking(): boolean; get speakingChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[boolean, boolean]>; private _myTTS; get myTTS(): MyTTS; speak(text: string): Promise; private _awake; get awake(): boolean; get awakeChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[boolean, boolean]>; private _timeCountDown; get timeCountDown(): TimeCountDown; get sleepCountdown(): number; get sleepCountdownChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[number, number]>; private _monitor; get monitor(): FunAsrVoiceMonitor; get listening(): boolean; get listeningChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[boolean, boolean]>; private _messageEvent; get messageEvent(): Event<[awake: boolean, msg: string]>; private _lastMessage; get lastMessage(): string; get lastMessageChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[string, string]>; private _messageFunc; get messageFunc(): MyVoiceControllerMessageFuncType | undefined; set messageFunc(value: MyVoiceControllerMessageFuncType | undefined); get messageFuncChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[MyVoiceControllerMessageFuncType | undefined, MyVoiceControllerMessageFuncType | undefined]>; private _messageFuncStrInit; private _awakeFunc; get awakeFunc(): MyVoiceControllerAwakeFuncType | undefined; set awakeFunc(value: MyVoiceControllerAwakeFuncType | undefined); get awakeFuncChanged(): import("vtxf-xe2/dist-node/xe2-base-utils").Listener<[MyVoiceControllerAwakeFuncType | undefined, MyVoiceControllerAwakeFuncType | undefined]>; private _awakeFuncStrInit; constructor(id?: SceneObjectKey); getProperties(language?: string): import("vtxf-xe2/dist-node/xe2-base-objects").Property[]; } export declare namespace MyVoiceController { const createDefaultProps: () => { enabled: boolean; wsUrl: string; ttsUrl: string; wakeWords: import("vtxf-xe2/dist-node/xe2-base-utils").ReactiveVariable; hotWords: string; awakeDuration: number; messageFuncStr: string; awakeFuncStr: string; debug: boolean; execOnceFuncStr: string; updateFuncStr: string; toDestroyFuncStr: string; createAppendedObjFuncStr: string; name: string; ref: string | undefined; devTags: import("vtxf-xe2/dist-node/xe2-base-utils").ReactiveVariable; extras: import("vtxf-xe2/dist-node/xe2-base-utils").ReactiveVariable; }; } export interface MyVoiceController extends ReactivePropsToNativePropsAndChanged> { } declare type JsonType = PartialWithUndefinedReactivePropsToNativeProps & { type: string; }>; export {};