import type { MsgContext } from "../auto-reply/templating.js"; import type { KlawConfig } from "../config/types.js"; import type { MediaUnderstandingConfig } from "../config/types.tools.js"; import type { ActiveMediaModel } from "./active-model.types.js"; import { MediaAttachmentCache } from "./attachments.js"; import type { MediaAttachment, MediaUnderstandingCapability, MediaUnderstandingDecision, MediaUnderstandingOutput, MediaUnderstandingProvider } from "./types.js"; export { createMediaAttachmentCache, normalizeMediaAttachments } from "./runner.attachments.js"; export type { ActiveMediaModel } from "./active-model.types.js"; type ProviderRegistry = Map; export type RunCapabilityResult = { outputs: MediaUnderstandingOutput[]; decision: MediaUnderstandingDecision; }; export declare function buildProviderRegistry(overrides?: Record, cfg?: KlawConfig): ProviderRegistry; export declare function resolveMediaAttachmentLocalRoots(params: { cfg: KlawConfig; ctx: MsgContext; workspaceDir?: string; }): readonly string[]; export declare function clearMediaUnderstandingBinaryCacheForTests(): void; export declare function resolveAutoImageModel(params: { cfg: KlawConfig; agentDir?: string; workspaceDir?: string; activeModel?: ActiveMediaModel; }): Promise; export declare function runCapability(params: { capability: MediaUnderstandingCapability; cfg: KlawConfig; ctx: MsgContext; attachments: MediaAttachmentCache; media: MediaAttachment[]; agentDir?: string; workspaceDir?: string; providerRegistry: ProviderRegistry; config?: MediaUnderstandingConfig; activeModel?: ActiveMediaModel; }): Promise;