import { type WorkspaceShardReport } from './workspace-shards.js'; export declare const ARTIFACT_WORKSPACE_SHARDS = "workspace-shards.json"; export declare const MAX_SHARD_RECEIPT_BYTES: number; export interface ShardScopedAnalysisReceipt { version: 1; mode: 'full' | 'scoped'; source: WorkspaceShardReport['source']; computedAt: string; recomputed: string[]; retained: string[]; frontierFiles: string[]; staleFiles: string[]; artifacts: { recomputed: string[]; retained: string[]; }; shards: Array<{ name: string; root: string; manifest: string | null; fileCount: number; lastRecomputedAt: string | null; freshness: 'current' | 'stale' | 'unknown'; fingerprint: string | null; }>; ignoredMembers: WorkspaceShardReport['ignoredMembers']; } export declare function serializeShardReceipt(receipt: ShardScopedAnalysisReceipt): string; export declare function readPriorShardReceipt(outputPath: string): Promise; export declare function writeFullShardReceipt(outputPath: string, report: WorkspaceShardReport, rootPath: string): Promise; /** * Replace selected shard rows while retaining the rest of the production graph. * Repo-wide JSON artifacts are intentionally untouched; the receipt names that this * was a scoped graph update, and a later full analyze re-aggregates those artifacts. */ export declare function runShardScopedAnalysis(args: { rootPath: string; outputPath: string; report: WorkspaceShardReport; selectedNames: readonly string[]; closureBudget?: number; }): Promise; //# sourceMappingURL=workspace-shard-analysis.d.ts.map