import type { VideoHost } from "./core/hosts/types.js"; import { type SkillSource } from "./core/skills-loader.js"; import { type StyleSource } from "./core/styles-loader.js"; export interface StaticPromptOptions { skills?: SkillSource[]; styles?: StyleSource[]; } /** * Build ONLY the host-status block. ~150 bytes. Cheap (one * `host.capabilities()` call). Call this whenever the live host changes. */ export declare function buildEditorHostBlock(host: VideoHost): Promise; /** * Build ONLY the host-independent body. Cacheable for the session — the * inputs (cwd, skills, styles) don't change while ggeditor is running. * * Contains a single `{HOST_BLOCK}` token that the caller replaces with the * output of `buildEditorHostBlock(host)`. */ export declare function buildEditorStaticBody(cwd: string, options?: StaticPromptOptions): string; /** * Backward-compatible one-shot builder. Useful for the first render at * startup (cli.ts) or in tests where dynamic refresh isn't needed. * * The TUI should prefer the two-layer API: cache `buildEditorStaticBody` * once, call `buildEditorHostBlock` on host change, splice them together. */ export declare function buildEditorSystemPrompt(host: VideoHost, cwd: string, options?: StaticPromptOptions): Promise; /** * Replace the `{HOST_BLOCK}` sentinel in a cached static body with a fresh * host block. Throws if the sentinel is missing — that means the static * template is malformed. */ export declare function spliceHostBlock(staticBody: string, hostBlock: string): string; //# sourceMappingURL=system-prompt.d.ts.map