import { t } from '../types/mod.js'; export declare class LLMClient implements t.TaskBasedLLMClient { private configLoader?; private initialized; private logger; private manifestPath?; private provider?; constructor(options?: t.LLMClientOptions); /** * Get or create the provider instance (lazy initialization) */ private getProvider; /** * Initialize the client by loading configuration */ initialize(): Promise; /** * Ensure the client is initialized */ private ensureInitialized; /** * Get the model ID for a specific task */ getModelForTask(task: string): string; /** * Get the raw configuration */ getConfig(): t.LLMConfig; /** * Complete a request with either a prompt string or messages array * @param input - Either a prompt string or an array of LLMMessage objects * @param options - Optional completion options */ complete(input: string | t.LLMMessage[], options?: t.CompletionOptions): Promise; /** * Stream a request with either a prompt string or messages array * @param input - Either a prompt string or an array of LLMMessage objects * @param options - Optional completion options */ stream(input: string | t.LLMMessage[], options?: t.CompletionOptions): AsyncGenerator; /** * Resolve model ID from options or task defaults */ private resolveModelId; /** * Create a task with resolved configuration * @param taskName - The task name to resolve configuration for * @param options - Optional task-level options */ createTask(taskName: string, options?: t.LLMTaskOptions): t.LLMTask; } /** * Create a new LLM client instance */ export declare function createLLMClient(options?: t.LLMClientOptions): t.TaskBasedLLMClient; //# sourceMappingURL=client.d.ts.map