import type { BoundRuntimePromotionDatastoreSet } from './runtime-promotion-preflight-datastore-authority.js'; import type { RuntimePromotionDatastoreCheckpointInput } from './runtime-promotion-preflight-datastore-types.js'; interface RuntimePromotionDatabaseAuthority { readonly dev: bigint; readonly ino: bigint; readonly uid: bigint; readonly mode: bigint; readonly nlink: bigint; readonly size: bigint; readonly mtimeNs: bigint; readonly ctimeNs: bigint; } export type RuntimePromotionFileSnapshot = { readonly status: 'absent'; } | { readonly status: 'file'; readonly identity: RuntimePromotionDatabaseAuthority; } | { readonly status: 'unsafe'; }; export declare function runtimePromotionFileSnapshot(path: string): RuntimePromotionFileSnapshot; export interface RuntimePromotionDatabaseSetSnapshot { readonly main: RuntimePromotionFileSnapshot; readonly wal: RuntimePromotionFileSnapshot; readonly shm: RuntimePromotionFileSnapshot; } export declare function databaseSetSnapshot(path: string): RuntimePromotionDatabaseSetSnapshot; /** @throws {RuntimePromotionDatastoreError} When a file's exact snapshot changes. */ export declare function assertExactFileSnapshot(path: string, expected: RuntimePromotionFileSnapshot): void; export declare function assertExactDatabaseSet(path: string, expected: RuntimePromotionDatabaseSetSnapshot): void; /** @throws {RuntimePromotionDatastoreError} When current database authority cannot be captured. */ export declare function captureCurrentDatabaseAuthority(input: RuntimePromotionDatastoreCheckpointInput, bound: BoundRuntimePromotionDatastoreSet, path: string, expectedMain: RuntimePromotionFileSnapshot): RuntimePromotionDatabaseSetSnapshot; /** @throws {RuntimePromotionDatastoreError} When SQLite sidecar object identity changes. */ export declare function assertSameSidecarObjects(expected: RuntimePromotionDatabaseSetSnapshot, observed: RuntimePromotionDatabaseSetSnapshot): void; export declare function assertPostCloseSnapshot(path: string, snapshot: RuntimePromotionDatabaseSetSnapshot | undefined): void; export {}; //# sourceMappingURL=runtime-promotion-preflight-datastore-snapshot.d.ts.map