import type { Dir, Stats } from "node:fs"; import type { HarneryStorageCatalog } from "./catalog.js"; import { type HarneryStorageClass, type HarneryStorageInventoryReport } from "./contract.js"; export interface HarneryStorageInventoryOptions { now?: () => Date; allocatedBytes?: (stats: Stats) => number | undefined; fs?: Partial; } export interface HarneryStorageInventoryFs { lstat(path: string): Promise; opendir(path: string): Promise; realpath(path: string): Promise; } export interface HarneryStorageInventoryFilter { family_id?: string; storage_class?: HarneryStorageClass; } /** * Inventory registered storage with metadata-only, depth-first traversal. * The complete `.harnery` root is scanned once; outside it, only explicit * registered filesystem roots are visited. */ export declare function inventoryStorage(catalog: HarneryStorageCatalog, options?: HarneryStorageInventoryOptions): Promise; export declare function filterStorageInventory(report: HarneryStorageInventoryReport, filter: HarneryStorageInventoryFilter): HarneryStorageInventoryReport; //# sourceMappingURL=inventory.d.ts.map