import { type IdentityFilesVerdict } from './agent-identity-locator.js'; export declare const MANAGER_SHADOWED_SLUGS: readonly ["public", "public-chat", "chat", "graph", "data", "browser"]; export type ReachReason = 'ok' | 'shadowed' | 'no-default-and-unrouted' | 'files-missing'; export interface ReachVerdict { reachable: boolean; reason: ReachReason; /** Names the missing/empty identity file when reason is `files-missing`, * e.g. `SOUL.md:ENOENT`. Undefined for routing verdicts. */ detail?: string; } export type Logger = (line: string) => void; /** Pure verdict. Default-first: a slug that is the default is reachable at the * bare root regardless of shadowing. Otherwise a non-shadowed pattern-valid * slug is reachable via `/{slug}`; a shadowed slug is not; a slug that fails * the route pattern is unrouted. */ export declare function reachabilityVerdict(slug: string, defaultAgent: string | null, shadowedSlugs: readonly string[]): ReachVerdict; /** Routing verdict layered with identity-file presence. A slug that routes * (default-first, then non-shadowed pattern-valid) but whose spawn dir is * missing a required identity file is NOT reachable — `reachable=true` here * means the spawn would find SOUL/KNOWLEDGE/IDENTITY (Task 638). The file * verdict is supplied by the caller so this function stays pure and fs-free; * the audit computes it from `publicIdentityFilesPresent` against the same * `resolveAgentIdentityDir` the spawn composer uses. */ export declare function reachabilityWithFiles(slug: string, defaultAgent: string | null, shadowedSlugs: readonly string[], files: IdentityFilesVerdict): ReachVerdict; export interface ReachabilityAuditDeps { /** The account dir (manager spawnCwd / config.accountDir). */ accountDir: string; intervalMs: number; logger: Logger; } export interface ReachabilityAudit { start(): void; stop(): void; tickOnce(): { scanned: number; unreachable: number; }; } export declare function createReachabilityAudit(deps: ReachabilityAuditDeps): ReachabilityAudit; //# sourceMappingURL=public-agent-reachability.d.ts.map