import { AssistantModel } from "./AssistantModel"; import { UserDetector } from "./UserDetector"; import { OperationManager } from "./OperationManager"; import { EUserDetectorStatus } from "./constants"; import { EventListener } from "./utils"; import type { LanguageModel } from "./LanguageModel"; import type { IAssistantRobotConfig, IActionConfig } from "./type"; /** * the main class of the assistant robot. * After the class is instantiated, a fill funtion assistant robot will be show on the page. */ export declare class Assistant extends EventListener { assistantModel: AssistantModel; userDetector: UserDetector; operationManager: OperationManager | undefined; languageModel: T; options: IAssistantRobotConfig; constructor(el: Element, options: IAssistantRobotConfig); handleLanguageModelLoad: () => void; handleUserDetectorStatusChange: (status: EUserDetectorStatus) => void; onMenuClick: (key: string) => void; /** * ask the assistant robot a question * @param question question go ask */ ask: (question: string) => Promise; /** * make the robot say something * @param text what the robot should say */ assistantSay(text: string): void; /** * make the robot play a action * @param name name of the action * @param config config of the action */ assistantPlay(name: string, config?: IActionConfig): void; lookAtUser(): Promise; }