import type { ContentBlock } from "@agentclientprotocol/sdk"; import { type PromptImage } from "@automatalabs/shared-types"; import type { TSchema } from "typebox"; import type { Backend } from "./backend.js"; /** Build the exact one-shot run() prompt text: optional engine instructions, a diagnostic label, * the user prompt, and (for schema runs) the backend-appropriate final-output contract. */ export declare function buildRunPrompt(prompt: string, opts: { instructions?: string; label?: string; }, schema: TSchema | undefined, backend: Backend, structuredToolActive?: boolean): string; /** Validate prompt images before spawning/sending. Invalid images are deterministic script * errors, never provider failures, and the bad index is part of the contract for callers. */ export declare function validatePromptImages(images: readonly PromptImage[] | undefined, label?: string): void; /** One-shot run() image shape: the text prompt first, then each image attachment. */ export declare function promptWithImages(text: string, images: readonly PromptImage[]): ContentBlock[]; /** Interactive prompt image shape: string prompts match run(); ContentBlock prompts keep the * caller's blocks and append this turn's image attachments. */ export declare function appendPromptImages(content: string | ContentBlock[], images: readonly PromptImage[] | undefined): string | ContentBlock[]; /** Merge generic turn-scoped `_meta` UNDER the backend-computed turn meta. */ export declare function mergeTurnMeta(user: Record | undefined, backend: Record | undefined): Record | undefined; //# sourceMappingURL=prompt.d.ts.map