import type { DaemonRuntimeConfig } from "../config.js"; import type { DaemonLogger } from "../logger.js"; import { type CandidateCompressionInput, type ContradictionSuspicionInput, type DoctorExplanationInput, type EpisodeTriageInput } from "./schemas.js"; import type { LocalAiBundleState, LocalAiFailureCategory, LocalAiSnapshot, LocalAiTaskName } from "./model-manager.js"; export type LocalAiInvocation = { task: "episode_triage"; prompt: string; input: EpisodeTriageInput; timeoutMs: number; } | { task: "candidate_compression"; prompt: string; input: CandidateCompressionInput; timeoutMs: number; } | { task: "contradiction_suspicion"; prompt: string; input: ContradictionSuspicionInput; timeoutMs: number; } | { task: "doctor_explanation"; prompt: string; input: DoctorExplanationInput; timeoutMs: number; }; export interface LocalAiInferenceAdapter { invoke(invocation: LocalAiInvocation): Promise; } export interface LocalAiAdapterResolution { adapter: LocalAiInferenceAdapter | null; reason: string | null; } export declare function createRuntimeOwnedLocalAiAdapter(config: Pick, snapshot: LocalAiSnapshot, logger?: DaemonLogger): LocalAiInferenceAdapter | null; export declare function resolveLocalAiAdapter(snapshot: LocalAiSnapshot, taskName: LocalAiTaskName, adapter?: LocalAiInferenceAdapter | null): LocalAiAdapterResolution; export declare function isBundleStateReason(value: string | null): value is LocalAiBundleState; export declare function classifyLocalAiFailureReason(reason: string | null): LocalAiFailureCategory; export declare function invokeWithTimeout(factory: () => Promise, timeoutMs: number): Promise; export declare function buildLocalAiTaskLabel(task: LocalAiTaskName): string; //# sourceMappingURL=inference-adapter.d.ts.map