import type { ReachabilityOptions } from './perform-reachability-analysis.mts'; type ApplyFullExcludePathsOptions = { cwd: string; reachabilityOptions: ReachabilityOptions; target: string; }; type ApplyFullExcludePathsResult = { additionalScaIgnores: string[]; mergedReachabilityOptions: ReachabilityOptions; }; /** * Derives the two scan-time forms of --exclude-paths: anchored minimatch * patterns for SCA manifest discovery, and target-relative paths for Coana's * reachability analysis. */ export declare function applyFullExcludePaths({ cwd, reachabilityOptions, target }: ApplyFullExcludePathsOptions): ApplyFullExcludePathsResult; /** * Validates --exclude-paths entries before they reach either exclusion sink. * Rejects gitignore-style negations (coana's --exclude-dirs has no negation * form), absolute paths (the flag is scan-root relative), patterns escaping * the scan root via `..`, and degenerate match-everything sentinels like `.`, * `**`, `/`. */ export declare function assertValidExcludePaths(paths: readonly string[]): void; /** * Expands an anchored-micromatch --exclude-paths entry into the minimatch * patterns fast-glob needs to skip both the matched entry itself (file-shaped * matches like `packages/stray.json` against `packages/*`) and any subtree * underneath it (`packages/a/foo.json`). Returned patterns are ready for * fast-glob's `ignore` list — no gitignore translation involved. */ export declare function excludePathToScanIgnores(input: string): string[]; /** * Re-anchors --exclude-paths patterns onto the reachability analysis target. * Coana matches --exclude-dirs relative to whichever directory it was invoked * on, so when the analysis target is a nested subdirectory, scan-root * patterns need their target prefix stripped. Patterns that fall outside the * target are dropped — coana cannot exclude what it isn't analyzing. Bails * out entirely when any input contains a negation, since coana's --exclude-dirs * has no negation form. */ export declare function projectIgnorePathsToReachExcludePaths(paths: readonly string[] | undefined, options: { cwd: string; target: string; }): string[]; export {}; //# sourceMappingURL=exclude-paths.d.mts.map