[0c6b92a] | 1 | import type { Stats, Dirent } from 'fs';
|
---|
| 2 | import { Readable } from 'stream';
|
---|
| 3 | export type Path = string;
|
---|
| 4 | export interface EntryInfo {
|
---|
| 5 | path: string;
|
---|
| 6 | fullPath: string;
|
---|
| 7 | stats?: Stats;
|
---|
| 8 | dirent?: Dirent;
|
---|
| 9 | basename: string;
|
---|
| 10 | }
|
---|
| 11 | export type PathOrDirent = Dirent | Path;
|
---|
| 12 | export type Tester = (path: EntryInfo) => boolean;
|
---|
| 13 | export type Predicate = string[] | string | Tester;
|
---|
| 14 | declare function defaultOptions(): {
|
---|
| 15 | root: string;
|
---|
| 16 | fileFilter: (_path: EntryInfo) => boolean;
|
---|
| 17 | directoryFilter: (_path: EntryInfo) => boolean;
|
---|
| 18 | type: string;
|
---|
| 19 | lstat: boolean;
|
---|
| 20 | depth: number;
|
---|
| 21 | alwaysStat: boolean;
|
---|
| 22 | highWaterMark: number;
|
---|
| 23 | };
|
---|
| 24 | export type ReaddirpOptions = ReturnType<typeof defaultOptions>;
|
---|
| 25 | export interface DirEntry {
|
---|
| 26 | files: PathOrDirent[];
|
---|
| 27 | depth: number;
|
---|
| 28 | path: Path;
|
---|
| 29 | }
|
---|
| 30 | export declare class ReaddirpStream extends Readable {
|
---|
| 31 | parents: any[];
|
---|
| 32 | reading: boolean;
|
---|
| 33 | parent?: DirEntry;
|
---|
| 34 | _stat: Function;
|
---|
| 35 | _maxDepth: number;
|
---|
| 36 | _wantsDir: boolean;
|
---|
| 37 | _wantsFile: boolean;
|
---|
| 38 | _wantsEverything: boolean;
|
---|
| 39 | _root: Path;
|
---|
| 40 | _isDirent: boolean;
|
---|
| 41 | _statsProp: 'dirent' | 'stats';
|
---|
| 42 | _rdOptions: {
|
---|
| 43 | encoding: 'utf8';
|
---|
| 44 | withFileTypes: boolean;
|
---|
| 45 | };
|
---|
| 46 | _fileFilter: Tester;
|
---|
| 47 | _directoryFilter: Tester;
|
---|
| 48 | constructor(options?: Partial<ReaddirpOptions>);
|
---|
| 49 | _read(batch: number): Promise<void>;
|
---|
| 50 | _exploreDir(path: Path, depth: number): Promise<{
|
---|
| 51 | files: string[] | undefined;
|
---|
| 52 | depth: number;
|
---|
| 53 | path: string;
|
---|
| 54 | }>;
|
---|
| 55 | _formatEntry(dirent: PathOrDirent, path: Path): Promise<EntryInfo | undefined>;
|
---|
| 56 | _onError(err: Error): void;
|
---|
| 57 | _getEntryType(entry: EntryInfo): Promise<void | "" | "file" | "directory">;
|
---|
| 58 | _includeAsFile(entry: EntryInfo): boolean | undefined;
|
---|
| 59 | }
|
---|
| 60 | /**
|
---|
| 61 | * Main function which ends up calling readdirRec and reads all files and directories in given root recursively.
|
---|
| 62 | * @param root Root directory
|
---|
| 63 | * @param options Options to specify root (start directory), filters and recursion depth
|
---|
| 64 | */
|
---|
| 65 | export declare const readdirp: (root: Path, options?: Partial<ReaddirpOptions>) => ReaddirpStream;
|
---|
| 66 | export declare const readdirpPromise: (root: Path, options?: Partial<ReaddirpOptions>) => Promise<string[]>;
|
---|
| 67 | export default readdirp;
|
---|