import { type Runner } from "../internals/proc.js"; import type { Platform } from "../platform/base.js"; import type { BaselineCatalog } from "./catalog.js"; import { generateAuthorizedEccInstallPreview } from "./ecc-preview-boundary.js"; import { type BaselineEvidenceLock } from "./schema.js"; import { type ShardSelector } from "./shard.js"; import { vetBaselineCatalog } from "./vet.js"; export interface GenerateBaselineOptions { eccRoot: string; superpowersRoot: string; } export interface GenerateBaselineDependencies { run?: Runner; platform?: Platform; env?: NodeJS.ProcessEnv; progress?: (message: string) => void; vetCatalog?: typeof vetBaselineCatalog; checkoutHead?: (root: string, catalog: BaselineCatalog) => string; generatePreview?: (input: Parameters[0]) => unknown; preflight?: (runtime: { run: Runner; platform: Platform; env: NodeJS.ProcessEnv; }) => Promise; /** Prior lock enabling incremental reuse (Decision 1); omit for a full vet. */ reuseFrom?: BaselineEvidenceLock; /** Disable reuse outright — the release/periodic ground-truth escape hatch and * the migration tool (Decision 5). */ full?: boolean; } export declare function generateBaselineArtifacts(opts: GenerateBaselineOptions, deps?: GenerateBaselineDependencies): Promise<{ lock: string; preview: string; }>; /** * Vet one shard of each catalog from scratch and return its receipt bundle. * * Deliberately does NOT produce the install preview or a complete lock: a shard * holds partial evidence and must never look like a publishable artifact. Reuse * is disabled outright, because the whole point of a shard is to produce fresh * receipts for the assembly run to verify. */ export declare function generateShardReceipts(opts: GenerateBaselineOptions & { shard: ShardSelector; }, deps?: Omit): Promise;