import type { LLMOptions } from "portkey-ai"; import { Portkey as OrigPortKey } from "portkey-ai"; import { BaseLLM } from "./base.js"; import type { ChatMessage, ChatResponse, ChatResponseChunk, LLMChatParamsNonStreaming, LLMChatParamsStreaming, LLMMetadata } from "./types.js"; interface PortkeyOptions { apiKey?: string; baseURL?: string; mode?: string; llms?: [LLMOptions] | null; } export declare class PortkeySession { portkey: OrigPortKey; constructor(options?: PortkeyOptions); } /** * Get a session for the Portkey API. If one already exists with the same options, * it will be returned. Otherwise, a new session will be created. * @param options * @returns */ export declare function getPortkeySession(options?: PortkeyOptions): PortkeySession; export declare class Portkey extends BaseLLM { apiKey?: string; baseURL?: string; mode?: string; llms?: [LLMOptions] | null; session: PortkeySession; constructor(init?: Partial); get metadata(): LLMMetadata; chat(params: LLMChatParamsStreaming): Promise>; chat(params: LLMChatParamsNonStreaming): Promise; streamChat(messages: ChatMessage[], params?: Record): AsyncIterable; } export {};