import type { Employee, JinnConfig } from "../shared/types.js"; /** * The one place production code asks "who is in the org". `scanOrg` walks the * whole org tree off disk on every call; this module caches that walk and is * the only production caller of it. * * Invalidation is the chokidar org watcher (`onOrgChange` → `reloadOrg`) plus * the synchronous refresh the employee-update API does right after a write, so * a read never trails a write. */ export interface OrgRead { registry: Map; /** Why the roster is degraded. Set only when the last scan threw. */ error?: string; } /** Re-walk the org tree and cache the result. */ export declare function refreshOrg(config?: JinnConfig): OrgRead; /** The cached roster, scanning only if nothing good was cached for this config. */ export declare function readOrg(config?: JinnConfig): OrgRead; /** The roster alone, for the many callers that have no use for the failure. */ export declare function orgRegistry(config?: JinnConfig): Map; export declare function resetOrgRegistryForTests(): void; //# sourceMappingURL=org-registry.d.ts.map