/** * Builds the bounded prompt that turns one reviewed natural-language * instruction into one whole-file or inline code candidate. */ export interface DirectConversionPromptInput { languageLabel: string; targetPath?: string; instruction: string; /** Earlier `@human` messages in this run. */ sessionMemory?: string; inline: boolean; insertionContext?: "statement" | "parameter-list" | "function-body" | "jsx-child" | "css-declarations" | "css-rule-list" | "html-content"; insertionOwner?: string; surroundingSource?: string; /** Complete existing target source for an explicit file-level repair. */ existingSource?: string; /** Existing host-selected construct that alone may be replaced. */ selectedSource?: string; /** Whether the local provider must submit the replacement through a tool. */ selectedEditTool?: boolean; fileMemory?: string; projectMemory?: string; /** Rendered shared-contract block agreed for this run, when planning is on. */ blueprint?: string; /** Rendered todo list for this exact target, when a todo pass ran. */ todos?: string; /** Previous complete candidate, present only on a refinement pass. */ currentDraft?: string; /** Todo items the deterministic coverage check could not find in the draft. */ unaddressedTodos?: readonly string[]; rejectedDraft?: string; validationFailure?: string; /** Enables the compact, deterministic compiler-only language rule block. */ compilerMode?: boolean; } export interface PromptMessages { system: string; user: string; } /** * Lowers common human/pseudocode notation before it reaches the model. * Keeping this deterministic makes the model translate an already-normalized * specification instead of asking it to decide how target-language syntax maps. */ export declare function lowerInstructionForTarget(languageLabel: string, instruction: string): string; /** Model-facing instructions for the direct conversion agent. */ export declare function buildDirectConversionPrompt(input: DirectConversionPromptInput): PromptMessages; //# sourceMappingURL=direct-conversion.d.ts.map