import type { SkillParentIndex } from "./catalog.js"; import type { CatalogEntry, Dependency } from "./model.js"; import type { ParsedDocument } from "./types/metadata.js"; export type StaticSkillPackageContentKind = "canonical-support" | "explicit-noncanonical"; export interface StaticSupportReference { sourcePath: string; targetPath: string; relativePath: string; line: number; raw: string; } export interface PlainTextSupportSecurityReachability { owningSkillPath: string; depth: number; } export interface StaticSupportReachabilityEvidence { targetPath: string; packageContentKind: StaticSkillPackageContentKind; owningSkillPath: string; sourcePath: string; sourceLine: number; sourceRaw: string; depth: number; } export interface StaticSupportBoundaryReachabilityEvidence { boundaryPath: string; owningSkillPath: string; sourcePath: string; sourceLine: number; sourceRaw: string; depth: number; } export interface StaticSupportInspectionExpectations { paths: StaticSupportReachabilityEvidence[]; incompleteBoundaries: StaticSupportBoundaryReachabilityEvidence[]; } /** Parse exact, repository-local support references once for rules and graphs. */ export declare function staticSupportReferences(document: ParsedDocument, skillDirectory: string, localCandidatePaths: readonly string[], incompleteCandidateDirectories?: readonly string[]): StaticSupportReference[]; /** * Resolve minimum static-reference depth from one owning SKILL.md. * Rules and inventory projections share this graph without reinterpreting text. */ export declare function localSupportReachabilityDepth(skill: ParsedDocument, skillDirectory: string, localSupportDocs: ParsedDocument[], candidatePaths: string[], incompleteCandidateDirectories?: readonly string[]): Map; /** * Prove expected Skill-local targets from parsed reference sources, including * targets that discovery could not turn into ParsedDocument evidence. */ export declare function staticallyExpectedSupportInspection(documents: ParsedDocument[], candidatePaths: readonly string[], skillParents: SkillParentIndex, incompleteCandidateDirectories?: readonly string[]): StaticSupportInspectionExpectations; /** * Select only statically reachable UTF-8 plain-text support owned by one Skill. * Security orchestration consumes this repository-owned evidence without * reparsing references or independently reconstructing reachability. */ export declare function plainTextSupportSecurityReachability(documents: ParsedDocument[], repositoryPaths: ReadonlySet, incompleteCandidateDirectories?: ReadonlySet): ReadonlyMap; /** * Derive only repository-proven Skill ownership and static-reference edges. * Ambiguous Skill parents and unresolved or external paths never produce edges. */ export declare function buildStaticSupportDependencies(documents: ParsedDocument[], entries: CatalogEntry[], repositoryPaths: ReadonlySet, incompleteCandidateDirectories?: ReadonlySet): Dependency[];