import type { CommandResult, SaveHook } from "../command-invocation.js"; import { type ProviderRouting } from "./artifacts.js"; import type { OutputMode } from "./output.js"; /** * Structural deps for {@link createSaveArtifactHook}: only `save` * (the {request, capture} input main wires) and `env` (the artifacts * root) are read. Declared locally so this module has no import edge * into src/index.ts (the dispatch layer) — command modules import * this one directly. */ /** Mirrors index.ts's SaveRequest (exported there); structural here to keep this module import-edge-clean. */ interface SaveRequestShape { exportPath?: string; format: "json" | "markdown"; force: boolean; } interface SaveCapableDeps { readonly save?: { readonly request: SaveRequestShape; readonly capture: { savedRequestId?: string; servedProvider?: import("../providers/types.js").ProviderId; servedFrom?: "live" | "cache"; }; }; readonly env: NodeJS.ProcessEnv; } export declare function artifactHeaderComment(requestId: string): string; export declare function renderMarkdownArtifactBody(result: CommandResult, redactedData: unknown, resolvedSecrets: string[], now: () => number): string; export declare function exportTargetExists(filePath: string): Promise; export declare function createSaveArtifactHook(deps: SaveCapableDeps, meta: { readonly command: string; readonly args: Readonly>; readonly provider: ProviderRouting; readonly outputMode: OutputMode; }): SaveHook | undefined; export {}; //# sourceMappingURL=save-artifacts.d.ts.map