import { type PathSpec, type WalkEntry } from '@struktoai/mirage-core/types'; import type { OperatorAccessor } from './types.ts'; /** * Recursive opendal list feeding the generic listing differ. * * Reads through the operator directly (one recursive LIST), never through * mirage's caches, as the DeltaHook contract requires. Fingerprints use * mirage's default: the native ETag when the listing carries one, `mtime|size` * otherwise. * * Some opendal services answer LIST without per-entry metadata (the hf lister * does; WebDAV's PROPFIND does not), which would leave every file * unfingerprinted and reduce detection to create/delete. When a listed file * carries no metadata at all, one `stat` per affected file fills the gap, * mirroring what the hf readdir already does for sizes. A backend whose lister * is complete never pays for it. */ export declare class OpendalWalk { private readonly accessor; constructor(accessor: OperatorAccessor); walk(root: PathSpec): AsyncGenerator; } //# sourceMappingURL=watch.d.ts.map