44 lines
		
	
	
		
			1018 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			44 lines
		
	
	
		
			1018 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|  | // TypeScript Version: 3.2
 | ||
|  | 
 | ||
|  | /// <reference types="node" lib="esnext" />
 | ||
|  | 
 | ||
|  | import * as fs from 'fs'; | ||
|  | import { Readable } from 'stream'; | ||
|  | 
 | ||
|  | declare namespace readdir { | ||
|  |   interface EntryInfo { | ||
|  |     path: string; | ||
|  |     fullPath: string; | ||
|  |     basename: string; | ||
|  |     stats?: fs.Stats; | ||
|  |     dirent?: fs.Dirent; | ||
|  |   } | ||
|  | 
 | ||
|  |   interface ReaddirpOptions { | ||
|  |     root?: string; | ||
|  |     fileFilter?: string | string[] | ((entry: EntryInfo) => boolean); | ||
|  |     directoryFilter?: string | string[] | ((entry: EntryInfo) => boolean); | ||
|  |     type?: 'files' | 'directories' | 'files_directories' | 'all'; | ||
|  |     lstat?: boolean; | ||
|  |     depth?: number; | ||
|  |     alwaysStat?: boolean; | ||
|  |   } | ||
|  | 
 | ||
|  |   interface ReaddirpStream extends Readable, AsyncIterable<EntryInfo> { | ||
|  |     read(): EntryInfo; | ||
|  |     [Symbol.asyncIterator](): AsyncIterableIterator<EntryInfo>; | ||
|  |   } | ||
|  | 
 | ||
|  |   function promise( | ||
|  |     root: string, | ||
|  |     options?: ReaddirpOptions | ||
|  |   ): Promise<EntryInfo[]>; | ||
|  | } | ||
|  | 
 | ||
|  | declare function readdir( | ||
|  |   root: string, | ||
|  |   options?: readdir.ReaddirpOptions | ||
|  | ): readdir.ReaddirpStream; | ||
|  | 
 | ||
|  | export = readdir; |