import type { QdrantAccessor } from '../../accessor/qdrant.ts'; import type { QdrantConfigResolved } from '../../resource/qdrant/config.ts'; import { Scope, type DetectFn, type ScopeMatch } from '../hierarchy/scope.ts'; /** * The mount's scope table, shaped by its config. * * The tree is a function of the mount config, not of the backend: a pinned * `collection` removes the leading collection segment, every `groupBy` column * adds one directory level, and `textField` / `blobField` each add a leaf * suffix beside the `.json` row. Group slots are named positionally (`g0`, * `g1`, ...) so a column named `table` cannot collide with the collection * slot; `filtersOf` maps them back to column names. Every partial depth * shares the one `group` kind, and its lister derives the depth from the * slots, so the lister table stays static while the scope table varies per * mount. */ export declare function scopesFor(config: QdrantConfigResolved): Scope[]; export declare const detectFor: (accessor: QdrantAccessor) => DetectFn; /** The collection a match addresses: pinned, or the path's first slot. */ export declare function tableOf(config: QdrantConfigResolved, match: ScopeMatch): string; /** The match's group filters, keyed back to column names. */ export declare function filtersOf(config: QdrantConfigResolved, match: ScopeMatch): Record; //# sourceMappingURL=scope.d.ts.map