lavva.exalushome
Version:
Library implementing communication and abstraction layers for ExalusHome system
35 lines (34 loc) • 1.22 kB
TypeScript
import { Status } from "../../../../DataFrame";
import { ResponseResult } from "../../../FieldChangeResult";
import { ChatServiceErrorCode } from "../../ChatService";
import { IChatImplementation, IMessage } from "../../IChatService";
export interface IGptChat extends IChatImplementation {
GetChatConfigurationAsync(): Promise<ChatGptConfiguration | ResponseResult<ChatServiceErrorCode>>;
SetChatConfigurationAsync(config: ChatGptConfiguration): Promise<Status>;
IsGptChatAvailableAsync(): Promise<boolean>;
}
export interface IGptChatMessage extends IMessage {
get ControllerActivities(): Map<ControllerActivity, Map<string, string>>;
get Errors(): Map<ChatGptClientError, string>;
}
export declare enum ControllerActivity {
None = 0,
ChangeDeviceState = 1
}
export declare class ChatGptConfiguration {
ApiUrl: string | null;
ApiKey: string;
ChatGPTModel: GptModel;
MaxTokens: number;
}
export declare enum GptModel {
GPT3_5_TURBO = "gpt-3.5-turbo",
GPT3_5_TURBO_16K = "gpt-3.5-turbo-16k",
GPT4 = "gpt-4"
}
export declare enum ChatGptClientError {
UnknownError = 0,
ChatNotConfigured = 1,
MessageNotSend = 2,
InvalidMessageResponseFormat = 3
}