import type { ModelChatOptions, ModelChatResult } from "./types.js";
export declare const defaultOllamaModel = "qwen2.5-coder:7b";
export declare const defaultOllamaUrl = "http://127.0.0.1:11434";
export declare const defaultOllamaPort = 11434;
export type OllamaRunningModel = {
    name: string;
    sizeBytes: number | null;
    sizeVramBytes: number | null;
    expiresAt: string | null;
    contextLength: number | null;
};
type OllamaRuntimeOptions = {
    keepAlive: string;
    numCtx: number;
    numPredict: number;
    temperature: number;
};
export declare class OllamaClient {
    private readonly baseUrl;
    private readonly runtimeOptions;
    constructor(baseUrl?: string, runtimeOptions?: OllamaRuntimeOptions);
    chat(options: ModelChatOptions): Promise<ModelChatResult>;
    listModels(): Promise<string[]>;
    listRunningModels(): Promise<OllamaRunningModel[]>;
    unloadModel(model: string): Promise<void>;
    private fetchOllama;
}
export declare function resolveOllamaBaseUrl(env?: NodeJS.ProcessEnv): string;
export declare function normalizeOllamaBaseUrl(value: string | undefined): string;
export declare function readOllamaRuntimeOptions(env?: NodeJS.ProcessEnv): OllamaRuntimeOptions;
export {};
