import { type RecipeArtifactManifestEntry, type RecipeResolutionDocument } from '@farmslot/protocol'; import type { ArtifactWriter, RecipeRunnerProvenance, RecipeRunStatus, SummaryDocument, SummaryWriter, TraceEntry, TraceWriter } from '../core/types.js'; export declare class JsonArtifactWriter implements ArtifactWriter { #private; constructor(artifactsDir: string); copyRecipe(recipe: unknown): Promise; copyResolvedRecipe(digest: string, recipe: unknown): Promise; writeRecipeResolution(resolution: RecipeResolutionDocument): Promise; register(entry: RecipeArtifactManifestEntry): void; list(): RecipeArtifactManifestEntry[]; write(status: RecipeRunStatus, runner?: RecipeRunnerProvenance): Promise; } export declare class JsonTraceWriter implements TraceWriter { #private; constructor(artifactsDir: string, runner?: RecipeRunnerProvenance); record(entry: TraceEntry): void; list(): TraceEntry[]; write(): Promise; } export declare class JsonSummaryWriter implements SummaryWriter { #private; constructor(artifactsDir: string); write(summary: SummaryDocument): Promise; } //# sourceMappingURL=writers.d.ts.map