import { ExecutionOptions, LLMCache, LLMMeta, EmbeddingOptions, EmbeddingOutput, BaseLLMTokenizeOutput, GenerateOptions, StreamGenerateOptions, AsyncStream, BaseLLMEvents } from '../../llms/base.js'; import { GetRunContext } from '../../context.js'; import { E as Emitter } from '../../emitter-l0W9gC1A.js'; import { VertexAI, BaseModelParams } from '@google-cloud/vertexai'; import { ChatLLMOutput, ChatLLMGenerateEvents, ChatLLM } from '../../llms/chat.js'; import { BaseMessage } from '../../llms/primitives/message.js'; import '../../errors.js'; import '../../internals/types.js'; import '../../internals/helpers/guards.js'; import '../../internals/serializable.js'; import '../../cache/base.js'; import 'promise-based-task'; import '../../internals/helpers/promise.js'; declare class VertexAIChatLLMOutput extends ChatLLMOutput { readonly chunks: BaseMessage[]; constructor(chunk: BaseMessage); get messages(): BaseMessage[]; merge(other: VertexAIChatLLMOutput): void; getTextContent(): string; toString(): string; createSnapshot(): { chunks: BaseMessage[]; }; loadSnapshot(snapshot: typeof this.createSnapshot): void; } interface VertexAIChatLLMInput { modelId: string; project: string; location: string; client?: VertexAI; executionOptions?: ExecutionOptions; cache?: LLMCache; parameters?: BaseModelParams; } type VertexAIChatLLMEvents = ChatLLMGenerateEvents; declare class VertexAIChatLLM extends ChatLLM { protected readonly input: VertexAIChatLLMInput; readonly emitter: Emitter; protected client: VertexAI; protected parameters?: BaseModelParams; constructor(input: VertexAIChatLLMInput); meta(): Promise; embed(input: BaseMessage[][], options?: EmbeddingOptions): Promise; tokenize(input: BaseMessage[]): Promise; protected _generate(input: BaseMessage[], options: GenerateOptions, run: GetRunContext): Promise; protected _stream(input: BaseMessage[], options: Partial, run: GetRunContext): AsyncStream; createSnapshot(): { input: VertexAIChatLLMInput; client: VertexAI; parameters: BaseModelParams | undefined; modelId: string; executionOptions: ExecutionOptions; emitter: Emitter>; cache: LLMCache; }; } export { VertexAIChatLLM, type VertexAIChatLLMEvents, type VertexAIChatLLMInput, VertexAIChatLLMOutput };