Changeset 79a0317 for imaps-frontend/node_modules/readdirp/index.d.ts
- Timestamp:
- 01/21/25 03:08:24 (3 days ago)
- Branches:
- main
- Parents:
- 0c6b92a
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
imaps-frontend/node_modules/readdirp/index.d.ts
r0c6b92a r79a0317 1 import type { Stats, Dirent } from 'fs'; 2 import { Readable } from 'stream'; 1 /** 2 * Recursive version of readdir. Exposes a streaming API and promise API. 3 * Streaming API allows to use a small amount of RAM. 4 * 5 * @module 6 * @example 7 ```js 8 import readdirp from 'readdirp'; 9 for await (const entry of readdirp('.')) { 10 const {path} = entry; 11 console.log(`${JSON.stringify({path})}`); 12 } 13 ``` 14 */ 15 /*! readdirp - MIT License (c) 2012-2019 Thorsten Lorenz, Paul Miller (https://paulmillr.com) */ 16 import type { Stats, Dirent } from 'node:fs'; 17 import { Readable } from 'node:stream'; 18 /** Path in file system. */ 3 19 export type Path = string; 20 /** Emitted entry. Contains relative & absolute path, basename, and either stats or dirent. */ 4 21 export interface EntryInfo { 5 22 path: string; … … 9 26 basename: string; 10 27 } 28 /** Path or dir entries (files) */ 11 29 export type PathOrDirent = Dirent | Path; 12 export type Tester = (path: EntryInfo) => boolean; 30 /** Filterer for files */ 31 export type Tester = (entryInfo: EntryInfo) => boolean; 13 32 export type Predicate = string[] | string | Tester; 14 declare function defaultOptions(): { 33 export declare const EntryTypes: { 34 readonly FILE_TYPE: "files"; 35 readonly DIR_TYPE: "directories"; 36 readonly FILE_DIR_TYPE: "files_directories"; 37 readonly EVERYTHING_TYPE: "all"; 38 }; 39 export type EntryType = (typeof EntryTypes)[keyof typeof EntryTypes]; 40 /** 41 * Options for readdirp. 42 * * type: files, directories, or both 43 * * lstat: whether to use symlink-friendly stat 44 * * depth: max depth 45 * * alwaysStat: whether to use stat (more resources) or dirent 46 * * highWaterMark: streaming param, specifies max amount of resources per entry 47 */ 48 export type ReaddirpOptions = { 15 49 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;50 fileFilter?: Predicate; 51 directoryFilter?: Predicate; 52 type?: EntryType; 53 lstat?: boolean; 54 depth?: number; 55 alwaysStat?: boolean; 56 highWaterMark?: number; 23 57 }; 24 export type ReaddirpOptions = ReturnType<typeof defaultOptions>; 58 /** Directory entry. Contains path, depth count, and files. */ 25 59 export interface DirEntry { 26 60 files: PathOrDirent[]; … … 28 62 path: Path; 29 63 } 64 /** Readable readdir stream, emitting new files as they're being listed. */ 30 65 export declare class ReaddirpStream extends Readable { 31 66 parents: any[]; … … 55 90 _formatEntry(dirent: PathOrDirent, path: Path): Promise<EntryInfo | undefined>; 56 91 _onError(err: Error): void; 57 _getEntryType(entry: EntryInfo): Promise<void | "" | "file" | "directory">;92 _getEntryType(entry: EntryInfo): Promise<void | '' | 'file' | 'directory'>; 58 93 _includeAsFile(entry: EntryInfo): boolean | undefined; 59 94 } 60 95 /** 61 * Main function which ends up calling readdirRec and reads all files and directories in given root recursively. 96 * Streaming version: Reads all files and directories in given root recursively. 97 * Consumes ~constant small amount of RAM. 62 98 * @param root Root directory 63 99 * @param options Options to specify root (start directory), filters and recursion depth 64 100 */ 65 export declare const readdirp: (root: Path, options?: Partial<ReaddirpOptions>) => ReaddirpStream; 66 export declare const readdirpPromise: (root: Path, options?: Partial<ReaddirpOptions>) => Promise<string[]>; 101 export declare function readdirp(root: Path, options?: Partial<ReaddirpOptions>): ReaddirpStream; 102 /** 103 * Promise version: Reads all files and directories in given root recursively. 104 * Compared to streaming version, will consume a lot of RAM e.g. when 1 million files are listed. 105 * @returns array of paths and their entry infos 106 */ 107 export declare function readdirpPromise(root: Path, options?: Partial<ReaddirpOptions>): Promise<EntryInfo[]>; 67 108 export default readdirp;
Note:
See TracChangeset
for help on using the changeset viewer.