12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- import { MMRegExp } from 'minimatch';
- import { Path } from 'path-scurry';
- import { Pattern } from './pattern.js';
- import { GlobWalkerOpts } from './walker.js';
- /**
- * A cache of which patterns have been processed for a given Path
- */
- export declare class HasWalkedCache {
- store: Map<string, Set<string>>;
- constructor(store?: Map<string, Set<string>>);
- copy(): HasWalkedCache;
- hasWalked(target: Path, pattern: Pattern): boolean | undefined;
- storeWalked(target: Path, pattern: Pattern): void;
- }
- /**
- * A record of which paths have been matched in a given walk step,
- * and whether they only are considered a match if they are a directory,
- * and whether their absolute or relative path should be returned.
- */
- export declare class MatchRecord {
- store: Map<Path, number>;
- add(target: Path, absolute: boolean, ifDir: boolean): void;
- entries(): [Path, boolean, boolean][];
- }
- /**
- * A collection of patterns that must be processed in a subsequent step
- * for a given path.
- */
- export declare class SubWalks {
- store: Map<Path, Pattern[]>;
- add(target: Path, pattern: Pattern): void;
- get(target: Path): Pattern[];
- entries(): [Path, Pattern[]][];
- keys(): Path[];
- }
- /**
- * The class that processes patterns for a given path.
- *
- * Handles child entry filtering, and determining whether a path's
- * directory contents must be read.
- */
- export declare class Processor {
- hasWalkedCache: HasWalkedCache;
- matches: MatchRecord;
- subwalks: SubWalks;
- patterns?: Pattern[];
- follow: boolean;
- dot: boolean;
- opts: GlobWalkerOpts;
- constructor(opts: GlobWalkerOpts, hasWalkedCache?: HasWalkedCache);
- processPatterns(target: Path, patterns: Pattern[]): this;
- subwalkTargets(): Path[];
- child(): Processor;
- filterEntries(parent: Path, entries: Path[]): Processor;
- testGlobstar(e: Path, pattern: Pattern, rest: Pattern | null, absolute: boolean): void;
- testRegExp(e: Path, p: MMRegExp, rest: Pattern | null, absolute: boolean): void;
- testString(e: Path, p: string, rest: Pattern | null, absolute: boolean): void;
- }
|