import type { Catalog } from "./model.js"; import type { Artifact } from "./types/artifact.js"; import type { ParsedDocument } from "./types/metadata.js"; import type { ScanConfig } from "./types/configuration.js"; import type { ExecutableDependencyCandidate } from "./executable-dependency-analyzer.js"; export type RepositoryPathState = "parsed" | "excluded" | "oversize" | "deep" | "unsupported" | "symlink" | "unreadable" | "absent"; /** Collect immutable repository-relative path existence evidence for rules. */ export declare function collectRepositoryPaths(root: string, artifacts: Artifact[], documents: ParsedDocument[], catalog: Catalog, discoveredPaths?: ReadonlySet, executableDependencyCandidates?: readonly ExecutableDependencyCandidate[], incompleteSupportDirectories?: readonly string[]): Promise>; export declare function repositoryPathCandidates(documents: ParsedDocument[], catalog: Catalog, executableDependencyCandidates?: readonly ExecutableDependencyCandidate[], incompleteSupportDirectories?: readonly string[]): string[]; /** Capture exact lstat-based states once without following symbolic links. */ export declare function collectRepositoryPathStates(root: string, candidates: Iterable, artifacts: Artifact[], config: ScanConfig, skippedPathStates?: ReadonlyMap): Promise>;