import type { AuthenticatedOutcomeEnvelope, CommitIntent } from './types.js'; declare const registryBatchPlanBrand: unique symbol; export interface RegistryFilePlan { readonly eventId: string; readonly relativePath: string; readonly content: string; readonly sha256: string; } export interface RegistryBatchPlan { readonly [registryBatchPlanBrand]: true; readonly files: readonly RegistryFilePlan[]; readonly commitIntent: CommitIntent; } export interface RegistryBatchResult { readonly status: 'stored' | 'replay'; readonly stored: number; readonly replayed: number; readonly commitIntent: CommitIntent | null; } export interface RegistryValidationResult { readonly valid: boolean; readonly checked: number; readonly reasonCodes: readonly string[]; } export declare function planRegistryBatch(values: readonly AuthenticatedOutcomeEnvelope[]): RegistryBatchPlan; export declare function applyRegistryBatch(registryRoot: string, plan: RegistryBatchPlan): Promise; export declare function validateRegistryTree(registryRoot: string): Promise; export {};