@effect-vfs/core 0.5.0 → 0.6.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.
Files changed (130) hide show
  1. package/README.md +34 -31
  2. package/dist/BytePath.d.ts +114 -4
  3. package/dist/BytePath.d.ts.map +1 -1
  4. package/dist/BytePath.js +155 -0
  5. package/dist/Caller.d.ts +391 -0
  6. package/dist/Caller.d.ts.map +1 -0
  7. package/dist/Caller.js +199 -0
  8. package/dist/FileHandle.d.ts +50 -0
  9. package/dist/FileHandle.d.ts.map +1 -0
  10. package/dist/FileHandle.js +28 -0
  11. package/dist/Fixture.d.ts +155 -0
  12. package/dist/Fixture.d.ts.map +1 -0
  13. package/dist/Fixture.js +65 -0
  14. package/dist/LiveVolume.d.ts +11 -21
  15. package/dist/LiveVolume.d.ts.map +1 -1
  16. package/dist/LiveVolume.js +17 -14
  17. package/dist/Metadata.d.ts +186 -0
  18. package/dist/Metadata.d.ts.map +1 -0
  19. package/dist/Metadata.js +125 -0
  20. package/dist/Snapshot.d.ts +31 -53
  21. package/dist/Snapshot.d.ts.map +1 -1
  22. package/dist/Snapshot.js +26 -49
  23. package/dist/SnapshotDelta.d.ts +24 -39
  24. package/dist/SnapshotDelta.d.ts.map +1 -1
  25. package/dist/SnapshotDelta.js +14 -35
  26. package/dist/Target.d.ts +225 -0
  27. package/dist/Target.d.ts.map +1 -0
  28. package/dist/Target.js +92 -0
  29. package/dist/Testing.d.ts +128 -0
  30. package/dist/Testing.d.ts.map +1 -0
  31. package/dist/Testing.js +111 -0
  32. package/dist/VfsError.d.ts +199 -0
  33. package/dist/VfsError.d.ts.map +1 -0
  34. package/dist/VfsError.js +164 -0
  35. package/dist/VirtualFileSystem.d.ts +628 -347
  36. package/dist/VirtualFileSystem.d.ts.map +1 -1
  37. package/dist/VirtualFileSystem.js +448 -115
  38. package/dist/Volume.d.ts +211 -0
  39. package/dist/Volume.d.ts.map +1 -0
  40. package/dist/Volume.js +172 -0
  41. package/dist/Watch.d.ts +68 -0
  42. package/dist/Watch.d.ts.map +1 -0
  43. package/dist/Watch.js +46 -0
  44. package/dist/index.d.ts +56 -1
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +56 -1
  47. package/dist/internal/budget.d.ts +90 -0
  48. package/dist/internal/budget.d.ts.map +1 -0
  49. package/dist/internal/budget.js +70 -0
  50. package/dist/internal/bytePath.d.ts +2 -0
  51. package/dist/internal/bytePath.d.ts.map +1 -1
  52. package/dist/internal/bytePath.js +3 -2
  53. package/dist/internal/bytes.d.ts +3 -0
  54. package/dist/internal/bytes.d.ts.map +1 -1
  55. package/dist/internal/bytes.js +4 -2
  56. package/dist/internal/canonicalBase64.d.ts +1 -4
  57. package/dist/internal/canonicalBase64.d.ts.map +1 -1
  58. package/dist/internal/canonicalBase64.js +9 -13
  59. package/dist/internal/errors.d.ts +47 -5
  60. package/dist/internal/errors.d.ts.map +1 -1
  61. package/dist/internal/errors.js +80 -36
  62. package/dist/internal/fixture.d.ts +2 -2
  63. package/dist/internal/fixture.d.ts.map +1 -1
  64. package/dist/internal/fixture.js +57 -74
  65. package/dist/internal/hex128.d.ts +12 -0
  66. package/dist/internal/hex128.d.ts.map +1 -0
  67. package/dist/internal/hex128.js +7 -0
  68. package/dist/internal/hmac.d.ts +5 -0
  69. package/dist/internal/hmac.d.ts.map +1 -0
  70. package/dist/internal/hmac.js +150 -0
  71. package/dist/internal/image.d.ts +14 -117
  72. package/dist/internal/image.d.ts.map +1 -1
  73. package/dist/internal/image.js +137 -167
  74. package/dist/internal/inodeTable.d.ts +20 -0
  75. package/dist/internal/inodeTable.d.ts.map +1 -0
  76. package/dist/internal/inodeTable.js +48 -0
  77. package/dist/internal/lines.d.ts +36 -0
  78. package/dist/internal/lines.d.ts.map +1 -0
  79. package/dist/internal/lines.js +115 -0
  80. package/dist/internal/liveImage.d.ts +19 -278
  81. package/dist/internal/liveImage.d.ts.map +1 -1
  82. package/dist/internal/liveImage.js +75 -166
  83. package/dist/internal/merkle.d.ts +45 -0
  84. package/dist/internal/merkle.d.ts.map +1 -0
  85. package/dist/internal/merkle.js +179 -0
  86. package/dist/internal/metadata.d.ts +2 -13
  87. package/dist/internal/metadata.d.ts.map +1 -1
  88. package/dist/internal/metadata.js +5 -15
  89. package/dist/internal/overlayDiff.d.ts +2 -2
  90. package/dist/internal/overlayDiff.d.ts.map +1 -1
  91. package/dist/internal/overlayDiff.js +0 -3
  92. package/dist/internal/path.d.ts +17 -5
  93. package/dist/internal/path.d.ts.map +1 -1
  94. package/dist/internal/path.js +38 -24
  95. package/dist/internal/snapshotDelta.d.ts +61 -60
  96. package/dist/internal/snapshotDelta.d.ts.map +1 -1
  97. package/dist/internal/snapshotDelta.js +612 -504
  98. package/dist/internal/snapshotDeltaModel.d.ts.map +1 -1
  99. package/dist/internal/snapshotDeltaModel.js +0 -1
  100. package/dist/internal/stagedState.d.ts +11 -15
  101. package/dist/internal/stagedState.d.ts.map +1 -1
  102. package/dist/internal/stagedState.js +15 -59
  103. package/dist/internal/testSeams.d.ts +17 -0
  104. package/dist/internal/testSeams.d.ts.map +1 -0
  105. package/dist/internal/testSeams.js +20 -0
  106. package/dist/internal/tree.d.ts +225 -0
  107. package/dist/internal/tree.d.ts.map +1 -0
  108. package/dist/internal/tree.js +385 -0
  109. package/dist/internal/turnstile.d.ts +8 -0
  110. package/dist/internal/turnstile.d.ts.map +1 -0
  111. package/dist/internal/turnstile.js +43 -0
  112. package/dist/internal/virtualFileSystem.d.ts +39 -489
  113. package/dist/internal/virtualFileSystem.d.ts.map +1 -1
  114. package/dist/internal/virtualFileSystem.js +2112 -2465
  115. package/dist/internal/volumeState.d.ts +110 -0
  116. package/dist/internal/volumeState.d.ts.map +1 -0
  117. package/dist/internal/volumeState.js +204 -0
  118. package/dist/internal/watchHub.d.ts +15 -6
  119. package/dist/internal/watchHub.d.ts.map +1 -1
  120. package/dist/internal/watchHub.js +56 -42
  121. package/package.json +48 -4
  122. package/dist/VirtualFileSystemError.d.ts +0 -54
  123. package/dist/VirtualFileSystemError.d.ts.map +0 -1
  124. package/dist/VirtualFileSystemError.js +0 -49
  125. package/dist/internal/overlayContent.d.ts +0 -15
  126. package/dist/internal/overlayContent.d.ts.map +0 -1
  127. package/dist/internal/overlayContent.js +0 -29
  128. package/dist/internal/testHooks.d.ts +0 -20
  129. package/dist/internal/testHooks.d.ts.map +0 -1
  130. package/dist/internal/testHooks.js +0 -23
@@ -1,523 +1,61 @@
1
1
  import * as ByteSize from "effect/ByteSize";
2
- import * as Crypto from "effect/Crypto";
3
2
  import * as Data from "effect/Data";
4
3
  import * as Effect from "effect/Effect";
5
- import * as Order from "effect/Order";
6
- import * as Schema from "effect/Schema";
7
- import { BytePath } from "../BytePath.js";
8
- import { ImageError, type Snapshot } from "../Snapshot.js";
9
- import type { ObjectReference, OverlayVolume, RelativeOptions, Volume, VolumeLimits } from "../VirtualFileSystem.js";
10
- import { ConfigurationError, FsCode as FsCodeSchema, FsError } from "./errors.js";
11
- import * as Image from "./image.js";
4
+ import type { Snapshot } from "../Snapshot.js";
5
+ import { type FsFailure, type ImageFailure } from "../VfsError.js";
6
+ import type { OverlayVolume, Volume, VolumeLimits } from "../VirtualFileSystem.js";
12
7
  import * as LiveImage from "./liveImage.js";
13
- import * as Content from "./overlayContent.js";
8
+ import { type ObservationEntry } from "./overlayDiff.js";
14
9
  import { type CommitProvider } from "./stagedState.js";
15
- /** @internal */
16
- export declare const VolumeId: unique symbol;
17
- /** @internal */
18
- export declare const CallerId: unique symbol;
19
- /** @internal */
20
- export declare const FileHandleId: unique symbol;
21
- /** @internal */
22
- export declare const DirectoryHandleId: unique symbol;
23
- /** @internal */
24
- export declare const ObjectReferenceId: unique symbol;
25
- /** @internal */
26
- export { ConfigurationError, FsCodeSchema as FsCode, FsError };
27
- /** @internal */
28
- export declare const Identity: Schema.Struct<{
29
- readonly uid: Schema.Natural;
30
- readonly gid: Schema.Natural;
31
- readonly groups: Schema.$Array<Schema.Natural>;
32
- readonly privileged: Schema.Boolean;
33
- }>;
34
- /** @internal */
35
- export type Identity = typeof Identity.Type;
36
- /** @internal */
37
- export declare const RootCallerOptions: Schema.Struct<{
38
- readonly identity: Schema.optionalKey<Schema.Struct<{
39
- readonly uid: Schema.Natural;
40
- readonly gid: Schema.Natural;
41
- readonly groups: Schema.$Array<Schema.Natural>;
42
- readonly privileged: Schema.Boolean;
43
- }>>;
44
- readonly umask: Schema.optionalKey<Schema.Natural>;
45
- }>;
46
- /** @internal */
47
- export type RootCallerOptions = typeof RootCallerOptions.Type;
48
- /** @internal */
49
- export declare const VolumeDurability: Schema.Literals<readonly ["memory-only", "survives-process-crash", "survives-operating-system-crash", "survives-power-loss"]>;
50
- /** @internal */
51
- export type VolumeDurability = typeof VolumeDurability.Type;
52
- /** @internal */
53
- export declare const VolumeDurabilityOrder: Order.Order<VolumeDurability>;
54
- /** @internal */
55
- export declare const isVolumeDurabilityAtLeast: (actual: VolumeDurability, required: VolumeDurability) => boolean;
56
- /** @internal */
57
- export declare const VolumeIdentity: Schema.brand<Schema.String, "@effect-vfs/core/VolumeIdentity">;
58
- /** @internal */
59
- export type VolumeIdentity = typeof VolumeIdentity.Type;
60
- /** @internal */
61
- export declare const VolumeIncarnation: Schema.brand<Schema.String, "@effect-vfs/core/VolumeIncarnation">;
62
- /** @internal */
63
- export type VolumeIncarnation = typeof VolumeIncarnation.Type;
64
- /** @internal */
65
- export declare const VolumeOptions: Schema.Struct<{
66
- readonly identity: Schema.optionalKey<Schema.brand<Schema.String, "@effect-vfs/core/VolumeIdentity">>;
67
- readonly maxEntries: Schema.optionalKey<Schema.Natural>;
68
- readonly maxPendingOperations: Schema.optionalKey<Schema.Int>;
69
- readonly maxWatchEvents: Schema.optionalKey<Schema.Int>;
70
- readonly maxBytes: Schema.optionalKey<Schema.ByteSize>;
71
- readonly maxFileBytes: Schema.optionalKey<Schema.ByteSize>;
72
- readonly maxPathBytes: Schema.optionalKey<Schema.ByteSize>;
73
- }>;
74
- /** @internal */
75
- export type VolumeOptions = typeof VolumeOptions.Type;
76
- /** @internal */
77
- export declare const Metadata: Schema.Struct<{
78
- readonly kind: Schema.Literals<readonly ["directory", "file", "symlink"]>;
79
- readonly ino: Schema.BigInt;
80
- readonly nlink: Schema.Natural;
81
- readonly size: Schema.BigInt;
82
- readonly uid: Schema.Natural;
83
- readonly gid: Schema.Natural;
84
- readonly mode: Schema.Natural;
85
- readonly atimeNs: Schema.BigInt;
86
- readonly mtimeNs: Schema.BigInt;
87
- readonly ctimeNs: Schema.BigInt;
88
- readonly birthtimeNs: Schema.BigInt;
89
- }>;
90
- /** @internal */
91
- export type Metadata = typeof Metadata.Type;
92
- /** @internal */
93
- export declare const OwnerUpdate: Schema.Struct<{
94
- readonly uid: Schema.optionalKey<Schema.Natural>;
95
- readonly gid: Schema.optionalKey<Schema.Natural>;
96
- }>;
97
- /** @internal */
98
- export type OwnerUpdate = typeof OwnerUpdate.Type;
99
- /** @internal */
100
- export declare const TimeUpdate: Schema.Union<readonly [Schema.Struct<{
101
- readonly kind: Schema.Literal<"now">;
102
- }>, Schema.Struct<{
103
- readonly kind: Schema.Literal<"omit">;
104
- }>, Schema.Struct<{
105
- readonly kind: Schema.Literal<"value">;
106
- readonly nanoseconds: Schema.BigInt;
107
- }>]>;
108
- /** @internal */
109
- export declare const Times: Schema.Struct<{
110
- readonly access: Schema.Union<readonly [Schema.Struct<{
111
- readonly kind: Schema.Literal<"now">;
112
- }>, Schema.Struct<{
113
- readonly kind: Schema.Literal<"omit">;
114
- }>, Schema.Struct<{
115
- readonly kind: Schema.Literal<"value">;
116
- readonly nanoseconds: Schema.BigInt;
117
- }>]>;
118
- readonly modification: Schema.Union<readonly [Schema.Struct<{
119
- readonly kind: Schema.Literal<"now">;
120
- }>, Schema.Struct<{
121
- readonly kind: Schema.Literal<"omit">;
122
- }>, Schema.Struct<{
123
- readonly kind: Schema.Literal<"value">;
124
- readonly nanoseconds: Schema.BigInt;
125
- }>]>;
126
- }>;
127
- /** @internal */
128
- export type Times = typeof Times.Type;
129
- /** @internal */
130
- export declare const SeekMode: Schema.Literals<readonly ["start", "current", "end", "data", "hole"]>;
131
- /** @internal */
132
- export type SeekMode = typeof SeekMode.Type;
133
- /** @internal */
134
- export declare const OpenSettings: Schema.Struct<{
135
- readonly access: Schema.Literals<readonly ["read", "write", "readWrite"]>;
136
- readonly create: Schema.optionalKey<Schema.Literals<readonly ["never", "ifMissing", "exclusive"]>>;
137
- readonly mode: Schema.optionalKey<Schema.Natural>;
138
- readonly append: Schema.optionalKey<Schema.Boolean>;
139
- readonly truncate: Schema.optionalKey<Schema.Boolean>;
140
- readonly followFinalSymlink: Schema.optionalKey<Schema.Boolean>;
141
- }>;
142
- /** @internal */
143
- export type OpenOptions = typeof OpenSettings.Type & RelativeOptions;
144
- /** @internal */
145
- export declare const DirectoryChange: Schema.Struct<{
146
- readonly before: Schema.BigInt;
147
- readonly after: Schema.BigInt;
148
- }>;
149
- /** @internal */
150
- export declare const RenameReferenceResult: Schema.TaggedUnion<{
151
- readonly DifferentDirectories: Schema.TaggedStruct<"DifferentDirectories", {
152
- readonly sourceDirectory: Schema.Struct<{
153
- readonly before: Schema.BigInt;
154
- readonly after: Schema.BigInt;
155
- }>;
156
- readonly destinationDirectory: Schema.Struct<{
157
- readonly before: Schema.BigInt;
158
- readonly after: Schema.BigInt;
159
- }>;
160
- }>;
161
- readonly SameDirectory: Schema.TaggedStruct<"SameDirectory", {
162
- readonly directory: Schema.Struct<{
163
- readonly before: Schema.BigInt;
164
- readonly after: Schema.BigInt;
165
- }>;
166
- }>;
167
- }>;
168
- /** @internal */
169
- export declare const MkdirReferenceSettings: Schema.Struct<{
170
- readonly mode: Schema.optionalKey<Schema.Natural>;
171
- readonly exactMode: Schema.optionalKey<Schema.Boolean>;
172
- readonly times: Schema.optionalKey<Schema.Struct<{
173
- readonly access: Schema.Union<readonly [Schema.Struct<{
174
- readonly kind: Schema.Literal<"now">;
175
- }>, Schema.Struct<{
176
- readonly kind: Schema.Literal<"omit">;
177
- }>, Schema.Struct<{
178
- readonly kind: Schema.Literal<"value">;
179
- readonly nanoseconds: Schema.BigInt;
180
- }>]>;
181
- readonly modification: Schema.Union<readonly [Schema.Struct<{
182
- readonly kind: Schema.Literal<"now">;
183
- }>, Schema.Struct<{
184
- readonly kind: Schema.Literal<"omit">;
185
- }>, Schema.Struct<{
186
- readonly kind: Schema.Literal<"value">;
187
- readonly nanoseconds: Schema.BigInt;
188
- }>]>;
189
- }>>;
190
- }>;
191
- /** @internal */
192
- export declare const SymlinkReferenceSettings: Schema.Struct<{
193
- readonly times: Schema.optionalKey<Schema.Struct<{
194
- readonly access: Schema.Union<readonly [Schema.Struct<{
195
- readonly kind: Schema.Literal<"now">;
196
- }>, Schema.Struct<{
197
- readonly kind: Schema.Literal<"omit">;
198
- }>, Schema.Struct<{
199
- readonly kind: Schema.Literal<"value">;
200
- readonly nanoseconds: Schema.BigInt;
201
- }>]>;
202
- readonly modification: Schema.Union<readonly [Schema.Struct<{
203
- readonly kind: Schema.Literal<"now">;
204
- }>, Schema.Struct<{
205
- readonly kind: Schema.Literal<"omit">;
206
- }>, Schema.Struct<{
207
- readonly kind: Schema.Literal<"value">;
208
- readonly nanoseconds: Schema.BigInt;
209
- }>]>;
210
- }>>;
211
- }>;
212
- /** @internal */
213
- export declare const OpenReferenceSettings: Schema.Struct<{
214
- readonly access: Schema.Literals<readonly ["read", "write", "readWrite"]>;
215
- readonly append: Schema.optionalKey<Schema.Boolean>;
216
- readonly truncate: Schema.optionalKey<Schema.Boolean>;
217
- }>;
218
- /** @internal */
219
- export declare const OpenChildReferenceSettings: Schema.Struct<{
220
- readonly access: Schema.Literals<readonly ["read", "write", "readWrite"]>;
221
- readonly create: Schema.optionalKey<Schema.Literals<readonly ["never", "ifMissing", "exclusive"]>>;
222
- readonly mode: Schema.optionalKey<Schema.Natural>;
223
- readonly append: Schema.optionalKey<Schema.Boolean>;
224
- readonly truncate: Schema.optionalKey<Schema.Boolean>;
225
- readonly followFinalSymlink: Schema.optionalKey<Schema.Boolean>;
226
- readonly times: Schema.optionalKey<Schema.Struct<{
227
- readonly access: Schema.Union<readonly [Schema.Struct<{
228
- readonly kind: Schema.Literal<"now">;
229
- }>, Schema.Struct<{
230
- readonly kind: Schema.Literal<"omit">;
231
- }>, Schema.Struct<{
232
- readonly kind: Schema.Literal<"value">;
233
- readonly nanoseconds: Schema.BigInt;
234
- }>]>;
235
- readonly modification: Schema.Union<readonly [Schema.Struct<{
236
- readonly kind: Schema.Literal<"now">;
237
- }>, Schema.Struct<{
238
- readonly kind: Schema.Literal<"omit">;
239
- }>, Schema.Struct<{
240
- readonly kind: Schema.Literal<"value">;
241
- readonly nanoseconds: Schema.BigInt;
242
- }>]>;
243
- }>>;
244
- readonly initialSize: Schema.optionalKey<Schema.BigInt>;
245
- readonly exactMode: Schema.optionalKey<Schema.Boolean>;
246
- readonly owner: Schema.optionalKey<Schema.Struct<{
247
- readonly uid: Schema.optionalKey<Schema.Natural>;
248
- readonly gid: Schema.optionalKey<Schema.Natural>;
249
- }>>;
250
- readonly expectedChild: Schema.optionalKey<Schema.NullOr<Schema.Struct<{
251
- readonly reference: Schema.declare<ObjectReference, ObjectReference>;
252
- readonly revision: Schema.BigInt;
253
- readonly atimeNs: Schema.BigInt;
254
- readonly mtimeNs: Schema.BigInt;
255
- }>>>;
256
- }>;
257
- declare const WriteFileSettings: Schema.Struct<{
258
- readonly access: Schema.Literals<readonly ["read", "write", "readWrite"]>;
259
- readonly create: Schema.optionalKey<Schema.Literals<readonly ["never", "ifMissing", "exclusive"]>>;
260
- readonly mode: Schema.optionalKey<Schema.Natural>;
261
- readonly append: Schema.optionalKey<Schema.Boolean>;
262
- readonly truncate: Schema.optionalKey<Schema.Boolean>;
263
- readonly followFinalSymlink: Schema.optionalKey<Schema.Boolean>;
264
- readonly replaceFinalSymlink: Schema.optionalKey<Schema.Boolean>;
265
- readonly finalMode: Schema.optionalKey<Schema.Natural>;
266
- }>;
267
- /** @internal */
268
- export type WriteFileOptions = typeof WriteFileSettings.Type & RelativeOptions;
269
- /** @internal */
270
- export declare const OverlayNodeKind: Schema.Literals<readonly ["directory", "file", "symlink"]>;
271
- /** @internal */
272
- export type OverlayNodeKind = typeof OverlayNodeKind.Type;
273
- /** @internal */
274
- export declare const OverlayDifference: Schema.Literals<readonly ["content", "mode", "uid", "gid", "atimeNs", "mtimeNs", "ctimeNs", "birthtimeNs"]>;
275
- /** @internal */
276
- export type OverlayDifference = typeof OverlayDifference.Type;
277
- /** @internal */
278
- export declare const OverlayChange: Schema.Union<readonly [Schema.TaggedStruct<"Added", {
279
- readonly path: Schema.declare<BytePath, BytePath>;
280
- readonly kind: Schema.Literals<readonly ["directory", "file", "symlink"]>;
281
- }>, Schema.TaggedStruct<"Removed", {
282
- readonly path: Schema.declare<BytePath, BytePath>;
283
- readonly kind: Schema.Literals<readonly ["directory", "file", "symlink"]>;
284
- }>, Schema.TaggedStruct<"Replaced", {
285
- readonly path: Schema.declare<BytePath, BytePath>;
286
- readonly beforeKind: Schema.Literals<readonly ["directory", "file", "symlink"]>;
287
- readonly afterKind: Schema.Literals<readonly ["directory", "file", "symlink"]>;
288
- readonly differences: Schema.$Array<Schema.Literals<readonly ["content", "mode", "uid", "gid", "atimeNs", "mtimeNs", "ctimeNs", "birthtimeNs"]>>;
289
- }>, Schema.TaggedStruct<"Renamed", {
290
- readonly from: Schema.declare<BytePath, BytePath>;
291
- readonly to: Schema.declare<BytePath, BytePath>;
292
- readonly kind: Schema.Literals<readonly ["directory", "file", "symlink"]>;
293
- readonly differences: Schema.$Array<Schema.Literals<readonly ["content", "mode", "uid", "gid", "atimeNs", "mtimeNs", "ctimeNs", "birthtimeNs"]>>;
294
- }>, Schema.TaggedStruct<"Updated", {
295
- readonly path: Schema.declare<BytePath, BytePath>;
296
- readonly kind: Schema.Literals<readonly ["directory", "file", "symlink"]>;
297
- readonly differences: Schema.$Array<Schema.Literals<readonly ["content", "mode", "uid", "gid", "atimeNs", "mtimeNs", "ctimeNs", "birthtimeNs"]>>;
298
- }>]>;
299
- /** @internal */
300
- export type OverlayChange = typeof OverlayChange.Type;
301
- /** @internal */
302
- export declare const OverlayChangesOptions: Schema.Struct<{
303
- readonly includeTimestamps: Schema.optionalKey<Schema.Boolean>;
304
- }>;
305
- /** @internal */
306
- export type OverlayChangesOptions = typeof OverlayChangesOptions.Type;
307
- /** @internal */
308
- export declare const FixtureMetadata: Schema.Struct<{
309
- readonly uid: Schema.optionalKey<Schema.Natural>;
310
- readonly gid: Schema.optionalKey<Schema.Natural>;
311
- readonly mode: Schema.optionalKey<Schema.Natural>;
312
- readonly atimeNs: Schema.optionalKey<Schema.BigInt>;
313
- readonly mtimeNs: Schema.optionalKey<Schema.BigInt>;
314
- readonly ctimeNs: Schema.optionalKey<Schema.BigInt>;
315
- readonly birthtimeNs: Schema.optionalKey<Schema.BigInt>;
316
- }>;
317
- /** @internal */
318
- export declare const FixtureEntry: Schema.toTaggedUnion<"kind", readonly [Schema.Struct<{
319
- readonly kind: Schema.Literal<"directory">;
320
- readonly path: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
321
- readonly metadata: Schema.optionalKey<Schema.Struct<{
322
- readonly uid: Schema.optionalKey<Schema.Natural>;
323
- readonly gid: Schema.optionalKey<Schema.Natural>;
324
- readonly mode: Schema.optionalKey<Schema.Natural>;
325
- readonly atimeNs: Schema.optionalKey<Schema.BigInt>;
326
- readonly mtimeNs: Schema.optionalKey<Schema.BigInt>;
327
- readonly ctimeNs: Schema.optionalKey<Schema.BigInt>;
328
- readonly birthtimeNs: Schema.optionalKey<Schema.BigInt>;
329
- }>>;
330
- }>, Schema.Struct<{
331
- readonly kind: Schema.Literal<"file">;
332
- readonly path: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
333
- readonly bytes: Schema.Uint8Array;
334
- readonly metadata: Schema.optionalKey<Schema.Struct<{
335
- readonly uid: Schema.optionalKey<Schema.Natural>;
336
- readonly gid: Schema.optionalKey<Schema.Natural>;
337
- readonly mode: Schema.optionalKey<Schema.Natural>;
338
- readonly atimeNs: Schema.optionalKey<Schema.BigInt>;
339
- readonly mtimeNs: Schema.optionalKey<Schema.BigInt>;
340
- readonly ctimeNs: Schema.optionalKey<Schema.BigInt>;
341
- readonly birthtimeNs: Schema.optionalKey<Schema.BigInt>;
342
- }>>;
343
- }>, Schema.Struct<{
344
- readonly kind: Schema.Literal<"symlink">;
345
- readonly path: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
346
- readonly target: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
347
- readonly metadata: Schema.optionalKey<Schema.Struct<{
348
- readonly uid: Schema.optionalKey<Schema.Natural>;
349
- readonly gid: Schema.optionalKey<Schema.Natural>;
350
- readonly mode: Schema.optionalKey<Schema.Natural>;
351
- readonly atimeNs: Schema.optionalKey<Schema.BigInt>;
352
- readonly mtimeNs: Schema.optionalKey<Schema.BigInt>;
353
- readonly ctimeNs: Schema.optionalKey<Schema.BigInt>;
354
- readonly birthtimeNs: Schema.optionalKey<Schema.BigInt>;
355
- }>>;
356
- }>, Schema.Struct<{
357
- readonly kind: Schema.Literal<"hardLink">;
358
- readonly path: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
359
- readonly target: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
360
- }>]>;
361
- /** @internal */
362
- export declare const Fixture: Schema.Struct<{
363
- readonly rootMetadata: Schema.optionalKey<Schema.Struct<{
364
- readonly uid: Schema.optionalKey<Schema.Natural>;
365
- readonly gid: Schema.optionalKey<Schema.Natural>;
366
- readonly mode: Schema.optionalKey<Schema.Natural>;
367
- readonly atimeNs: Schema.optionalKey<Schema.BigInt>;
368
- readonly mtimeNs: Schema.optionalKey<Schema.BigInt>;
369
- readonly ctimeNs: Schema.optionalKey<Schema.BigInt>;
370
- readonly birthtimeNs: Schema.optionalKey<Schema.BigInt>;
371
- }>>;
372
- readonly entries: Schema.$Array<Schema.toTaggedUnion<"kind", readonly [Schema.Struct<{
373
- readonly kind: Schema.Literal<"directory">;
374
- readonly path: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
375
- readonly metadata: Schema.optionalKey<Schema.Struct<{
376
- readonly uid: Schema.optionalKey<Schema.Natural>;
377
- readonly gid: Schema.optionalKey<Schema.Natural>;
378
- readonly mode: Schema.optionalKey<Schema.Natural>;
379
- readonly atimeNs: Schema.optionalKey<Schema.BigInt>;
380
- readonly mtimeNs: Schema.optionalKey<Schema.BigInt>;
381
- readonly ctimeNs: Schema.optionalKey<Schema.BigInt>;
382
- readonly birthtimeNs: Schema.optionalKey<Schema.BigInt>;
383
- }>>;
384
- }>, Schema.Struct<{
385
- readonly kind: Schema.Literal<"file">;
386
- readonly path: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
387
- readonly bytes: Schema.Uint8Array;
388
- readonly metadata: Schema.optionalKey<Schema.Struct<{
389
- readonly uid: Schema.optionalKey<Schema.Natural>;
390
- readonly gid: Schema.optionalKey<Schema.Natural>;
391
- readonly mode: Schema.optionalKey<Schema.Natural>;
392
- readonly atimeNs: Schema.optionalKey<Schema.BigInt>;
393
- readonly mtimeNs: Schema.optionalKey<Schema.BigInt>;
394
- readonly ctimeNs: Schema.optionalKey<Schema.BigInt>;
395
- readonly birthtimeNs: Schema.optionalKey<Schema.BigInt>;
396
- }>>;
397
- }>, Schema.Struct<{
398
- readonly kind: Schema.Literal<"symlink">;
399
- readonly path: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
400
- readonly target: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
401
- readonly metadata: Schema.optionalKey<Schema.Struct<{
402
- readonly uid: Schema.optionalKey<Schema.Natural>;
403
- readonly gid: Schema.optionalKey<Schema.Natural>;
404
- readonly mode: Schema.optionalKey<Schema.Natural>;
405
- readonly atimeNs: Schema.optionalKey<Schema.BigInt>;
406
- readonly mtimeNs: Schema.optionalKey<Schema.BigInt>;
407
- readonly ctimeNs: Schema.optionalKey<Schema.BigInt>;
408
- readonly birthtimeNs: Schema.optionalKey<Schema.BigInt>;
409
- }>>;
410
- }>, Schema.Struct<{
411
- readonly kind: Schema.Literal<"hardLink">;
412
- readonly path: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
413
- readonly target: Schema.Union<readonly [Schema.String, Schema.declare<BytePath, BytePath>]>;
414
- }>]>>;
415
- }>;
416
- /** @internal */
417
- export type Fixture = typeof Fixture.Type;
418
- interface Directory {
419
- readonly kind: "directory";
420
- readonly lineage: string | undefined;
421
- parent: Directory | undefined;
422
- readonly entries: Map<string, Node>;
423
- metadata: Metadata;
424
- revision: bigint;
425
- objectReference: ObjectReference | undefined;
426
- }
427
- interface RegularFile {
428
- readonly kind: "file";
429
- readonly lineage: string | undefined;
430
- data: Content.Content;
431
- openCount: number;
432
- metadata: Metadata;
433
- revision: bigint;
434
- objectReference: ObjectReference | undefined;
435
- }
436
- interface SymbolicLink {
437
- readonly kind: "symlink";
438
- readonly lineage: string | undefined;
439
- readonly target: Uint8Array;
440
- metadata: Metadata;
441
- revision: bigint;
442
- objectReference: ObjectReference | undefined;
443
- }
444
- type Node = Directory | RegularFile | SymbolicLink;
445
- interface EngineState {
446
- root: Directory;
447
- retainedFiles: Map<bigint, RegularFile>;
448
- revisionCounter: bigint;
449
- nextInode: bigint;
450
- entries: number;
451
- usedBytes: bigint;
452
- }
453
- /** @internal */
454
- export declare const captureLiveImage: (state: EngineState, identity: string & import("effect/Brand").Brand<"@effect-vfs/core/VolumeIdentity">, limits: VolumeLimits) => Effect.Effect<Uint8Array<ArrayBuffer>, ImageError, never>;
10
+ import { type VolumeState } from "./volumeState.js";
455
11
  type VolumeSource = {
456
12
  readonly _tag: "Empty";
457
- } | {
458
- readonly _tag: "Snapshot";
459
- readonly image: Image.Document;
460
13
  } | {
461
14
  readonly _tag: "Live";
462
- readonly document: LiveImage.Document;
15
+ readonly restored: LiveImage.Restored;
463
16
  } | {
464
- readonly _tag: "Overlay";
465
- readonly base: Snapshot;
466
- readonly image: Image.Document;
17
+ readonly _tag: "Restored";
18
+ readonly value: VolumeState;
467
19
  };
468
20
  /** @internal */
469
21
  export declare const VolumeSource: {
470
- readonly $is: <Tag extends "Empty" | "Live" | "Overlay" | "Snapshot">(tag: Tag) => (u: unknown) => u is Extract<{
22
+ readonly $is: <Tag extends "Empty" | "Live" | "Restored">(tag: Tag) => (u: unknown) => u is Extract<{
471
23
  readonly _tag: "Empty";
472
24
  }, {
473
25
  readonly _tag: Tag;
474
- }> | Extract<{
475
- readonly _tag: "Snapshot";
476
- readonly image: Image.Document;
477
- }, {
478
- readonly _tag: Tag;
479
26
  }> | Extract<{
480
27
  readonly _tag: "Live";
481
- readonly document: LiveImage.Document;
28
+ readonly restored: LiveImage.Restored;
482
29
  }, {
483
30
  readonly _tag: Tag;
484
31
  }> | Extract<{
485
- readonly _tag: "Overlay";
486
- readonly base: Snapshot;
487
- readonly image: Image.Document;
32
+ readonly _tag: "Restored";
33
+ readonly value: VolumeState;
488
34
  }, {
489
35
  readonly _tag: Tag;
490
36
  }>;
491
37
  readonly $match: {
492
- <Cases extends { readonly [Tag in "Empty" | "Live" | "Overlay" | "Snapshot"]: (args: Extract<VolumeSource, {
38
+ <Cases extends { readonly [Tag in "Empty" | "Live" | "Restored"]: (args: Extract<VolumeSource, {
493
39
  readonly _tag: Tag;
494
- }>) => any; }>(cases: Cases): (value: VolumeSource) => import("effect/Unify").Unify<ReturnType<Cases["Empty" | "Live" | "Overlay" | "Snapshot"]>>;
495
- <Cases extends { readonly [Tag in "Empty" | "Live" | "Overlay" | "Snapshot"]: (args: Extract<VolumeSource, {
40
+ }>) => any; }>(cases: Cases): (value: VolumeSource) => import("effect/Unify").Unify<ReturnType<Cases["Empty" | "Live" | "Restored"]>>;
41
+ <Cases extends { readonly [Tag in "Empty" | "Live" | "Restored"]: (args: Extract<VolumeSource, {
496
42
  readonly _tag: Tag;
497
- }>) => any; }>(value: VolumeSource, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Empty" | "Live" | "Overlay" | "Snapshot"]>>;
43
+ }>) => any; }>(value: VolumeSource, cases: Cases): import("effect/Unify").Unify<ReturnType<Cases["Empty" | "Live" | "Restored"]>>;
498
44
  };
499
45
  readonly Empty: Data.TaggedEnum.ConstructorFrom<{
500
46
  readonly _tag: "Empty";
501
47
  }, "_tag">;
502
48
  readonly Live: Data.TaggedEnum.ConstructorFrom<{
503
49
  readonly _tag: "Live";
504
- readonly document: LiveImage.Document;
50
+ readonly restored: LiveImage.Restored;
505
51
  }, "_tag">;
506
- readonly Overlay: Data.TaggedEnum.ConstructorFrom<{
507
- readonly _tag: "Overlay";
508
- readonly base: Snapshot;
509
- readonly image: Image.Document;
510
- }, "_tag">;
511
- readonly Snapshot: Data.TaggedEnum.ConstructorFrom<{
512
- readonly _tag: "Snapshot";
513
- readonly image: Image.Document;
52
+ readonly Restored: Data.TaggedEnum.ConstructorFrom<{
53
+ readonly _tag: "Restored";
54
+ readonly value: VolumeState;
514
55
  }, "_tag">;
515
56
  };
516
- type VolumeFor<S extends VolumeSource> = S extends {
517
- readonly _tag: "Overlay";
518
- } ? OverlayVolume : Volume;
519
57
  /** @internal */
520
- export declare const makeVolume: <S extends VolumeSource>(source: S, options?: {
58
+ export declare const makeVolume: (source: VolumeSource, options?: {
521
59
  readonly identity?: string & import("effect/Brand").Brand<"@effect-vfs/core/VolumeIdentity">;
522
60
  readonly maxEntries?: number;
523
61
  readonly maxPendingOperations?: number;
@@ -525,7 +63,18 @@ export declare const makeVolume: <S extends VolumeSource>(source: S, options?: {
525
63
  readonly maxBytes?: ByteSize.ByteSize;
526
64
  readonly maxFileBytes?: ByteSize.ByteSize;
527
65
  readonly maxPathBytes?: ByteSize.ByteSize;
528
- } | undefined, commitProvider?: CommitProvider<EngineState> | undefined, captureInitial?: ((state: EngineState, identity: VolumeIdentity, limits: VolumeLimits) => Effect.Effect<void, ImageError>) | undefined, durability?: "memory-only" | "survives-operating-system-crash" | "survives-power-loss" | "survives-process-crash" | undefined) => Effect.Effect<VolumeFor<S>, ConfigurationError | ImageError | import("effect/PlatformError").PlatformError, Crypto.Crypto>;
66
+ } | undefined, commitProvider?: CommitProvider<VolumeState> | undefined, captureInitial?: ((state: VolumeState, naming: LiveImage.Naming, limits: VolumeLimits) => Effect.Effect<Uint8Array, ImageFailure>) | undefined, durability?: "memory-only" | "survives-operating-system-crash" | "survives-power-loss" | "survives-process-crash" | undefined) => Effect.Effect<Readonly<{
67
+ volume: Volume;
68
+ shutdown: Effect.Effect<void, never, never> | undefined;
69
+ initialImage: Uint8Array<ArrayBufferLike> | undefined;
70
+ observe: Readonly<{
71
+ changes: Effect.Effect<ObservationEntry[], FsFailure, never>;
72
+ capture: Effect.Effect<{
73
+ snapshot: Snapshot;
74
+ observation: ObservationEntry[];
75
+ }, FsFailure, never>;
76
+ }>;
77
+ }>, import("../VfsError.js").ArgumentFailure | ImageFailure, never>;
529
78
  /** @internal */
530
79
  export declare const make: (options?: {
531
80
  readonly identity?: string & import("effect/Brand").Brand<"@effect-vfs/core/VolumeIdentity">;
@@ -535,7 +84,7 @@ export declare const make: (options?: {
535
84
  readonly maxBytes?: ByteSize.ByteSize;
536
85
  readonly maxFileBytes?: ByteSize.ByteSize;
537
86
  readonly maxPathBytes?: ByteSize.ByteSize;
538
- } | undefined) => Effect.Effect<Volume, ConfigurationError | import("effect/PlatformError").PlatformError, Crypto.Crypto>;
87
+ } | undefined) => Effect.Effect<Volume, import("../VfsError.js").ArgumentFailure, never>;
539
88
  /** @internal */
540
89
  export declare const prepareEmptyLiveImage: (options?: {
541
90
  readonly identity?: string & import("effect/Brand").Brand<"@effect-vfs/core/VolumeIdentity">;
@@ -545,12 +94,12 @@ export declare const prepareEmptyLiveImage: (options?: {
545
94
  readonly maxBytes?: ByteSize.ByteSize;
546
95
  readonly maxFileBytes?: ByteSize.ByteSize;
547
96
  readonly maxPathBytes?: ByteSize.ByteSize;
548
- } | undefined) => Effect.Effect<Uint8Array<ArrayBufferLike>, ConfigurationError | ImageError | import("effect/PlatformError").PlatformError, Crypto.Crypto>;
97
+ } | undefined) => Effect.Effect<Uint8Array<ArrayBufferLike>, import("../VfsError.js").ArgumentFailure | ImageFailure, never>;
549
98
  /** @internal */
550
99
  export declare const openImageVolume: (image: Uint8Array<ArrayBufferLike>, maxImageBytes: ByteSize.ByteSize, commit: (image: Uint8Array) => Effect.Effect<"committed" | "rejected" | "unknown">, durability?: "memory-only" | "survives-operating-system-crash" | "survives-power-loss" | "survives-process-crash" | undefined) => Effect.Effect<Readonly<{
551
100
  volume: Volume;
552
101
  shutdown: Effect.Effect<void, never, never>;
553
- }>, ConfigurationError | ImageError | import("effect/PlatformError").PlatformError, Crypto.Crypto>;
102
+ }>, import("../VfsError.js").ArgumentFailure | ImageFailure, never>;
554
103
  /** @internal */
555
104
  export declare const fromSnapshot: (snapshot: Snapshot, options?: {
556
105
  readonly identity?: string & import("effect/Brand").Brand<"@effect-vfs/core/VolumeIdentity">;
@@ -560,7 +109,7 @@ export declare const fromSnapshot: (snapshot: Snapshot, options?: {
560
109
  readonly maxBytes?: ByteSize.ByteSize;
561
110
  readonly maxFileBytes?: ByteSize.ByteSize;
562
111
  readonly maxPathBytes?: ByteSize.ByteSize;
563
- } | undefined) => Effect.Effect<Volume, ConfigurationError | ImageError | import("effect/PlatformError").PlatformError, Crypto.Crypto>;
112
+ } | undefined) => Effect.Effect<Volume, import("../VfsError.js").ArgumentFailure | ImageFailure, never>;
564
113
  /** @internal */
565
114
  export declare const makeOverlay: (base: Snapshot, options?: {
566
115
  readonly identity?: string & import("effect/Brand").Brand<"@effect-vfs/core/VolumeIdentity">;
@@ -570,5 +119,6 @@ export declare const makeOverlay: (base: Snapshot, options?: {
570
119
  readonly maxBytes?: ByteSize.ByteSize;
571
120
  readonly maxFileBytes?: ByteSize.ByteSize;
572
121
  readonly maxPathBytes?: ByteSize.ByteSize;
573
- } | undefined) => Effect.Effect<OverlayVolume, ConfigurationError | ImageError | import("effect/PlatformError").PlatformError, Crypto.Crypto>;
122
+ } | undefined) => Effect.Effect<OverlayVolume, import("../VfsError.js").ArgumentFailure | ImageFailure, never>;
123
+ export {};
574
124
  //# sourceMappingURL=virtualFileSystem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"virtualFileSystem.d.ts","sourceRoot":"","sources":["../../src/internal/virtualFileSystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"virtualFileSystem.d.ts","sourceRoot":"","sources":["../../src/internal/virtualFileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAG3C,OAAO,KAAK,IAAI,MAAM,aAAa,CAAA;AACnC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AA4BvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAE9C,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,YAAY,EAAqB,MAAM,gBAAgB,CAAA;AACrF,OAAO,KAAK,EAMV,aAAa,EAEb,MAAM,EACN,YAAY,EAIb,MAAM,yBAAyB,CAAA;AA2BhC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C,OAAO,EAAkB,KAAK,gBAAgB,EAAyB,MAAM,kBAAkB,CAAA;AAmB/F,OAAO,EAAE,KAAK,cAAc,EAAe,MAAM,kBAAkB,CAAA;AAGnE,OAAO,EAeL,KAAK,WAAW,EAEjB,MAAM,kBAAkB,CAAA;AA+RzB,KAAK,YAAY,GACb;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAA;CAAE,GAChE;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;CAAE,CAAA;AAE9D,gBAAgB;AAChB,eAAO,MAAM,YAAY;;uBALJ,OAAO;;;;uBACP,MAAM;2BAAqB,SAAS,CAAC,QAAQ;;;;uBAC7C,UAAU;wBAAkB,WAAW;;;;;;;;;;;;;uBAFvC,OAAO;;;uBACP,MAAM;2BAAqB,SAAS,CAAC,QAAQ;;;uBAC7C,UAAU;wBAAkB,WAAW;;CAGD,CAAA;AA4E3D,gBAAgB;AAChB,eAAO,MAAM,UAAU;;;;;;;;mGAMV,WAAW,UACV,SAAS,CAAC,MAAM,UAChB,YAAY,KACjB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC;;;;;;;;;;;mEAkmG/C,CAAA;AAED,gBAAgB;AAChB,eAAO,MAAM,IAAI;;;;;;;;wFAIf,CAAA;AAEF,gBAAgB;AAChB,eAAO,MAAM,qBAAqB;;;;;;;;4HAShC,CAAA;AAEF,gBAAgB;AAChB,eAAO,MAAM,eAAe,yFAGV,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;;;mEA+ClF,CAAA;AAeF,gBAAgB;AAChB,eAAO,MAAM,YAAY;;;;;;;;uGAKxB,CAAA;AAED,gBAAgB;AAChB,eAAO,MAAM,WAAW;;;;;;;;8GAkCvB,CAAA"}