fake-node 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/_fs.d.ts ADDED
@@ -0,0 +1,254 @@
1
+ import { Buffer, type BufferEncoding } from './buffer';
2
+ export declare const constants: {
3
+ F_OK: number;
4
+ X_OK: number;
5
+ W_OK: number;
6
+ R_OK: number;
7
+ COPYFILE_EXCL: number;
8
+ COPYFILE_FICLONE: number;
9
+ COPYFILE_FICLONE_FORCE: number;
10
+ O_RDONLY: number;
11
+ O_WRONLY: number;
12
+ O_RDWR: number;
13
+ O_CREAT: number;
14
+ O_EXCL: number;
15
+ O_NOCTTY: number;
16
+ O_TRUNC: number;
17
+ O_APPEND: number;
18
+ O_DIRECTORY: number;
19
+ O_NOATIME: number;
20
+ O_NOFOLLOW: number;
21
+ O_SYNC: number;
22
+ O_DSYNC: number;
23
+ O_SYMLINK: number;
24
+ O_DIRECT: number;
25
+ O_NONBLOCK: number;
26
+ UV_FS_O_FILEMAP: number;
27
+ S_IMFT: number;
28
+ S_IFREG: number;
29
+ S_IFDIR: number;
30
+ S_IFCHR: number;
31
+ S_IFBLK: number;
32
+ S_IFIFO: number;
33
+ S_IFLNK: number;
34
+ S_IFSOCK: number;
35
+ S_IRWXU: number;
36
+ S_IRUSR: number;
37
+ S_IWUSR: number;
38
+ S_IXUSR: number;
39
+ S_IRWXG: number;
40
+ S_IRGRP: number;
41
+ S_IWGRP: number;
42
+ S_IXGRP: number;
43
+ S_IRWXO: number;
44
+ S_IROTH: number;
45
+ S_IWOTH: number;
46
+ S_IXOTH: number;
47
+ };
48
+ export declare function normalize(path: string): string;
49
+ export declare let cwdGetter: () => string;
50
+ export declare let uidGetter: () => number;
51
+ export declare let gidGetter: () => number;
52
+ export declare function setCwdGetter(newGetter: () => string): void;
53
+ export declare function setUidGetter(newGetter: () => number): void;
54
+ export declare function setGidGetter(newGetter: () => number): void;
55
+ export declare function resolve(...paths: string[]): string;
56
+ export type PathArg = string | URL | Buffer;
57
+ export declare function parsePathArg(arg: PathArg): string;
58
+ declare const flags: {
59
+ a: number;
60
+ ax: number;
61
+ 'a+': number;
62
+ 'ax+': number;
63
+ as: number;
64
+ 'as+': number;
65
+ r: number;
66
+ rs: number;
67
+ 'r+': number;
68
+ 'rs+': number;
69
+ w: number;
70
+ wx: number;
71
+ 'w+': number;
72
+ 'wx+': number;
73
+ };
74
+ export type Flag = number | keyof typeof flags;
75
+ export declare function parseFlag(flag: Flag): number;
76
+ export type TimeArg = number | string | bigint | Date;
77
+ export declare function parseTimeArg(time: TimeArg): bigint;
78
+ type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array | BigInt64Array | BigUint64Array;
79
+ export type DataArg = string | TypedArray | DataView | Iterable<any>;
80
+ export declare function parseDataArg(data: DataArg, encoding?: BufferEncoding): Uint8Array;
81
+ export type ModeArg = string | number;
82
+ export declare function parseModeArg(mode: ModeArg): number;
83
+ declare abstract class BaseStats {
84
+ abstract mode: number | bigint;
85
+ isBlockDevice(): boolean;
86
+ isCharacterDevice(): boolean;
87
+ isDirectory(): boolean;
88
+ isFIFO(): boolean;
89
+ isFile(): boolean;
90
+ isSocket(): boolean;
91
+ isSymbolicLink(): boolean;
92
+ }
93
+ export declare class Stats extends BaseStats {
94
+ dev: number;
95
+ ino: number;
96
+ mode: number;
97
+ nlink: number;
98
+ uid: number;
99
+ gid: number;
100
+ rdev: number;
101
+ size: number;
102
+ blksize: number;
103
+ blocks: number;
104
+ atimeMs: number;
105
+ mtimeMs: number;
106
+ ctimeMs: number;
107
+ birthtimeMs: number;
108
+ atime: Date;
109
+ mtime: Date;
110
+ ctime: Date;
111
+ birthtime: Date;
112
+ }
113
+ export declare class BigIntStats extends BaseStats {
114
+ dev: bigint;
115
+ ino: bigint;
116
+ mode: bigint;
117
+ nlink: bigint;
118
+ uid: bigint;
119
+ gid: bigint;
120
+ rdev: bigint;
121
+ size: bigint;
122
+ blksize: bigint;
123
+ blocks: bigint;
124
+ atimeMs: bigint;
125
+ mtimeMs: bigint;
126
+ ctimeMs: bigint;
127
+ birthtimeMs: bigint;
128
+ atimeNs: bigint;
129
+ mtimeNs: bigint;
130
+ ctimeNs: bigint;
131
+ birthtimeNs: bigint;
132
+ atime: Date;
133
+ mtime: Date;
134
+ ctime: Date;
135
+ birthtime: Date;
136
+ }
137
+ export declare class StatFs {
138
+ bavail: number;
139
+ bfree: number;
140
+ blocks: number;
141
+ bsize: number;
142
+ ffree: number;
143
+ files: number;
144
+ type: number;
145
+ }
146
+ export declare class BigIntStatFs {
147
+ bavail: bigint;
148
+ bfree: bigint;
149
+ blocks: bigint;
150
+ bsize: bigint;
151
+ ffree: bigint;
152
+ files: bigint;
153
+ type: bigint;
154
+ }
155
+ export type ExportFormatVersion = 1;
156
+ export declare const currentExportFormatVersion: ExportFormatVersion;
157
+ export interface FileParams {
158
+ mode?: number;
159
+ uid: number;
160
+ gid: number;
161
+ }
162
+ export interface FileMetadata {
163
+ mode: number;
164
+ uid: number;
165
+ gid: number;
166
+ size: number;
167
+ birthtime: bigint;
168
+ atime: bigint;
169
+ mtime: bigint;
170
+ ctime: bigint;
171
+ }
172
+ export declare class FileObject implements FileMetadata {
173
+ mode: number;
174
+ uid: number;
175
+ gid: number;
176
+ birthtime: bigint;
177
+ atime: bigint;
178
+ mtime: bigint;
179
+ ctime: bigint;
180
+ rdev: number;
181
+ constructor({ mode, uid, gid }: FileParams);
182
+ setAtime(): void;
183
+ setMtime(): void;
184
+ setCtime(): void;
185
+ access(mode?: ModeArg): void;
186
+ chmod(mode: string | number): void;
187
+ chown(uid: number, gid: number): void;
188
+ cp(): FileObject;
189
+ cpr(): FileObject;
190
+ get size(): number;
191
+ utimes(atime: TimeArg, mtime: TimeArg): void;
192
+ stat(bigint?: false): Stats;
193
+ stat(bigint: true): BigIntStats;
194
+ _export(): Uint8Array;
195
+ static _import(data: Uint8Array, version?: ExportFormatVersion): FileMetadata;
196
+ export(): Uint8Array;
197
+ }
198
+ export declare class RegularFile extends FileObject {
199
+ data: Uint8Array;
200
+ constructor(data: DataArg, { mode, encoding, ...params }: FileParams & {
201
+ encoding?: BufferEncoding;
202
+ });
203
+ cp(): RegularFile;
204
+ read(encoding?: BufferEncoding, start?: number, length?: number): string;
205
+ read(encoding: 'uint8array', start?: number, length?: number): Uint8Array;
206
+ read(encoding: 'buffer', start?: number, length?: number): Buffer;
207
+ write(data: string, position?: number, encoding?: BufferEncoding): void;
208
+ write(data: TypedArray | DataView | Iterable<any>, offset?: number, length?: number): void;
209
+ append(data: DataArg, encoding?: BufferEncoding): void;
210
+ get size(): number;
211
+ export(): Uint8Array;
212
+ static import(data: Uint8Array, version?: ExportFormatVersion): RegularFile;
213
+ }
214
+ export declare class Directory extends FileObject {
215
+ files: Map<string, FileObject>;
216
+ constructor(files: Map<string, FileObject>, { mode, ...params }: FileParams);
217
+ constructor(files: {
218
+ [key: string]: FileObject;
219
+ }, { mode, ...params }: FileParams);
220
+ constructor(files: MapIterator<[string, FileObject]>, { mode, ...params }: FileParams);
221
+ cp(): Directory;
222
+ cpr(): Directory;
223
+ get size(): number;
224
+ get recursiveSize(): number;
225
+ get(path: PathArg): FileObject;
226
+ getRegular(path: PathArg): RegularFile;
227
+ getDir(path: PathArg): Directory;
228
+ lget(path: PathArg): FileObject;
229
+ exists(path: PathArg): boolean;
230
+ link(path: PathArg, file: FileObject): void;
231
+ unlink(path: PathArg): FileObject;
232
+ symlink(target: PathArg, path: PathArg): void;
233
+ mkdir(path: PathArg, recursive?: boolean, mode?: ModeArg): Directory;
234
+ readFrom(path: PathArg, encoding?: BufferEncoding, start?: number, length?: number): string;
235
+ readFrom(path: PathArg, encoding: 'uint8array', start?: number, length?: number): Uint8Array;
236
+ readFrom(path: PathArg, encoding: 'buffer', start?: number, length?: number): Buffer;
237
+ writeTo(path: PathArg, data: string, position?: number, encoding?: BufferEncoding): void;
238
+ writeTo(path: PathArg, data: TypedArray | DataView | Iterable<any>, offset?: number, length?: number): void;
239
+ export(): Uint8Array;
240
+ static import(data: Uint8Array, version?: ExportFormatVersion): Directory;
241
+ }
242
+ export declare class FileSystem extends Directory {
243
+ fileDescriptors: (FileObject | null)[];
244
+ constructor(files?: Map<string, FileObject>);
245
+ getfd(fd: number): FileObject;
246
+ getfdRegular(fd: number): RegularFile;
247
+ open(path: PathArg, flags: Flag, mode?: ModeArg): number;
248
+ statfs(bigint?: false): StatFs;
249
+ statfs(bigint: true): BigIntStatFs;
250
+ fsExport(): Uint8Array;
251
+ static fsImport(data: Uint8Array): FileSystem;
252
+ }
253
+ export declare const DEFAULT_FILES: Map<any, any>;
254
+ export {};