import { type NativeDeltaOperationResult } from './native-delta-spec.js'; import type { NativePortableSpecChange, NativePortableState } from './native-portable-types.js'; import type { NativeProjectPaths } from './native-types.js'; export interface NativePortableArchiveHooks { afterSpecApplied?: (index: number) => void | Promise; afterFinalState?: () => void | Promise; afterReportAligned?: () => void | Promise; afterMove?: () => void | Promise; afterRuntimeCleanup?: () => void | Promise; } export interface NativePortableArchiveResult { change: string; archiveDir: string; transactionId: string; state: NativePortableState; } export interface NativePortableArchiveSpecPreview { readonly capability: string; readonly operation: NativePortableSpecChange['operation']; readonly source: string | null; readonly current_hash: string | null; readonly target_hash: string | null; readonly delta_source?: string; readonly delta_operations?: readonly NativeDeltaOperationResult[]; } export declare class NativePortableArchiveOrderRequiredError extends Error { readonly peers: string[]; constructor(peers: readonly string[]); } export declare class NativePortableArchiveRequiresReverificationError extends Error { readonly state: NativePortableState; constructor(state: NativePortableState); } export declare function nativePortableArchiveDirectory(paths: NativeProjectPaths, state: NativePortableState): string; export declare function hasNativePortableArchiveRecovery(paths: NativeProjectPaths, name: string): Promise; export declare function inspectNativePortableArchive(options: { paths: NativeProjectPaths; name: string; }): Promise<{ ready: boolean; blockers: string[]; capabilityPeers: string[]; archiveDir: string; stateVersion: number; requiresReverification: boolean; specPreview: NativePortableArchiveSpecPreview[]; }>; export declare function archiveNativePortableChange(options: { paths: NativeProjectPaths; name: string; serialFirstChange?: string; hooks?: NativePortableArchiveHooks; }): Promise; //# sourceMappingURL=native-portable-archive.d.ts.map