import type { BaseLanguageModelCallOptions } from "@langchain/core/language_models/base"; import { CallbackManagerForLLMRun } from "@langchain/core/callbacks/manager"; import { GenerationChunk } from "@langchain/core/outputs"; import { BaseLLMParams, LLM } from "@langchain/core/language_models/llms"; export interface AI { canCreateTextSession(): Promise; createTextSession(options?: AITextSessionOptions): Promise; defaultTextSessionOptions(): Promise; } export interface AITextSession { prompt(input: string): Promise; promptStreaming(input: string): ReadableStream; destroy(): void; clone(): AITextSession; } export interface AITextSessionOptions { topK: number; temperature: number; } export type AIModelAvailability = "readily" | "after-download" | "no"; export interface ChromeAIInputs extends BaseLLMParams { topK?: number; temperature?: number; systemPrompt?: string; } export interface ChromeAICallOptions extends BaseLanguageModelCallOptions { } /** * To use this model you need to have the `Built-in AI Early Preview Program` * for Chrome. You can find more information about the program here: * @link https://developer.chrome.com/docs/ai/built-in * * @example * ```typescript * // Initialize the ChromeAI model. * const model = new ChromeAI({ * temperature: 0.5, // Optional. Default is 0.5. * topK: 40, // Optional. Default is 40. * }); * * // Call the model with a message and await the response. * const response = await model.invoke([ * new HumanMessage({ content: "My name is John." }), * ]); * ``` */ export declare class ChromeAI extends LLM { temperature?: number; topK?: number; systemPrompt?: string; static lc_name(): string; constructor(inputs?: ChromeAIInputs); _llmType(): string; /** * Initialize the model. This method may be called before invoking the model * to set up a chat session in advance. */ protected createSession(): Promise; _streamResponseChunks(prompt: string, _options: this["ParsedCallOptions"], runManager?: CallbackManagerForLLMRun): AsyncGenerator; _call(prompt: string, options: this["ParsedCallOptions"], runManager?: CallbackManagerForLLMRun): Promise; }