/// import { Job } from './node-file-trace'; export interface Stats { isFile(): boolean; isDirectory(): boolean; isBlockDevice(): boolean; isCharacterDevice(): boolean; isSymbolicLink(): boolean; isFIFO(): boolean; isSocket(): boolean; dev: number; ino: number; mode: number; nlink: number; uid: number; gid: number; rdev: number; size: number; blksize: number; blocks: number; atimeMs: number; mtimeMs: number; ctimeMs: number; birthtimeMs: number; atime: Date; mtime: Date; ctime: Date; birthtime: Date; } export interface NodeFileTraceOptions { base?: string; processCwd?: string; exports?: string[]; conditions?: string[]; exportsOnly?: boolean; ignore?: string | string[] | ((path: string) => boolean); analysis?: boolean | { emitGlobs?: boolean; computeFileReferences?: boolean; evaluatePureExpressions?: boolean; }; cache?: any; paths?: Record; ts?: boolean; log?: boolean; mixedModules?: boolean; readFile?: (path: string) => Promise; stat?: (path: string) => Promise; readlink?: (path: string) => Promise; resolve?: (id: string, parent: string, job: Job, cjsResolve: boolean) => Promise; fileIOConcurrency?: number; } export type NodeFileTraceReasonType = 'initial' | 'resolve' | 'dependency' | 'asset' | 'sharedlib'; export interface NodeFileTraceReasons extends Map; }> { } export interface NodeFileTraceResult { fileList: Set; esmFileList: Set; reasons: NodeFileTraceReasons; warnings: Set; }