import type { PiRuntimeStorage } from "./pi-runtime-storage.js"; export interface ExtensionResource { readonly path: string; readonly enabled: boolean; readonly metadata: { readonly scope: string; readonly origin?: string; readonly baseDir?: string; }; } export interface ExtensionSnapshot { readonly paths: readonly string[]; readonly sourcePaths: readonly string[]; readonly digest: string; readonly entries: number; readonly bytes: number; } /** Capability paths have already been canonicalized and validated by their profile. */ export declare function extensionPathsWithCapabilities(snapshot: ExtensionSnapshot, capabilityPaths: readonly string[]): readonly string[]; export declare function assertSameExtensionSnapshot(stored: string | undefined, current: string): void; export declare function mirroredExtensionStagePath(destination: string, source: string): string; export declare function snapshotExtensionResources(resources: readonly ExtensionResource[], destination: string, signal?: AbortSignal, storage?: PiRuntimeStorage, budget?: { readonly entries: number; readonly bytes: number; }, excludedPaths?: readonly string[]): Promise; //# sourceMappingURL=pi-extension-snapshot.d.ts.map