polyfact
Version:
<h1 align="center">PolyFact</h1>
37 lines (36 loc) • 1.48 kB
TypeScript
/// <reference types="node" />
import * as t from "polyfact-io-ts";
import { UUID } from "crypto";
import { GenerationOptions, Generation, GenerationWithoutWebOptions } from "../generate";
import { InputClientOptions, ClientOptions } from "../clientOpts";
import { Memory } from "../memory";
import { LoaderFunction } from "../dataloader";
declare const Message: t.TypeC<{
id: t.StringC;
chat_id: t.StringC;
is_user_message: t.BooleanC;
content: t.StringC;
created_at: t.StringC;
}>;
export declare function createChat(systemPrompt?: string, systemPromptId?: UUID, options?: InputClientOptions): Promise<string>;
type ChatOptions = {
autoMemory?: boolean;
} & GenerationWithoutWebOptions;
type ProgressCallback = (step: string) => void;
export declare class Chat {
chatId: Promise<string>;
clientOptions: Promise<ClientOptions>;
autoMemory?: Promise<Memory>;
memoryId?: string;
options: ChatOptions;
constructor(options?: ChatOptions, clientOptions?: InputClientOptions);
dataLoader(data: LoaderFunction | LoaderFunction[], onProgress: ProgressCallback): Promise<void>;
sendMessage(message: string, options?: GenerationOptions): Generation;
getMessages(): Promise<t.TypeOf<typeof Message>[]>;
}
export type ChatClient = {
createChat: (systemPrompt?: string, systemPromptId?: UUID) => Promise<string>;
Chat: typeof Chat;
};
export default function client(clientOptions?: InputClientOptions): ChatClient;
export {};