/** * Task types for LLM package */ import type { ResolvedModelConfig } from './config.js'; import type { LLMMessage } from './message.js'; import type { LLMApiOptions, LLMCallOptions } from './options.js'; import type { LLMResponse, LLMStreamChunk } from './response.js'; /** Task interface - wraps ResolvedModelConfig */ export interface LLMTask { /** Resolved configuration from ConfigLoader (internal state) */ readonly config: ResolvedModelConfig; /** Task-level call options (can be overridden at call level) */ readonly callOptions: Required; /** Task-level API options (override config values) */ readonly apiOptions: Partial; /** Create a call with optional call-level overrides */ createCall(overrideOptions?: Partial): LLMTaskCall; } /** Task call for execution */ export interface LLMTaskCall { /** Reference to parent task (has access to config via task.config) */ readonly task: LLMTask; /** Merged call options (task-level merged with call-level overrides) */ readonly callOptions: Required; /** Merged API options (task-level apiOptions merged with config values) */ readonly apiOptions: LLMApiOptions; /** Execute a completion request */ complete(input: string | LLMMessage[]): Promise; /** Execute a streaming request */ stream(input: string | LLMMessage[]): AsyncGenerator; } //# sourceMappingURL=task.d.ts.map