@bendyline/docblocks 2.6.1 → 2.7.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 (62) hide show
  1. package/THIRD_PARTY_NOTICES.txt +33 -33
  2. package/dist/capabilities-CdQAc745.d.ts +1233 -0
  3. package/dist/catalog-BQK05tne.d.ts +122 -0
  4. package/dist/chunk-245W57QP.js +31 -0
  5. package/dist/{chunk-2WDJ27EH.js → chunk-46AGYHDY.js} +8 -0
  6. package/dist/{chunk-4437YWLE.js → chunk-6UPO2GE6.js} +4 -2
  7. package/dist/{chunk-UMWCTEXW.js → chunk-7SN7YQL4.js} +211 -40
  8. package/dist/{chunk-OQCPBOQA.js → chunk-DAPFSEKY.js} +35 -0
  9. package/dist/{chunk-M62ZGJ5I.js → chunk-HABG2JM3.js} +0 -17
  10. package/dist/{chunk-YM7O3PWO.js → chunk-HKOOHM67.js} +20 -12
  11. package/dist/chunk-IDYE73TU.js +77 -0
  12. package/dist/{chunk-KLQKU74Q.js → chunk-IGB2VSRE.js} +124 -330
  13. package/dist/{chunk-BVY7GGNV.js → chunk-L6PRMR7T.js} +137 -95
  14. package/dist/chunk-LPIJ6HKL.js +19 -0
  15. package/dist/{chunk-SJBB5OD7.js → chunk-QS5WTLUZ.js} +10 -8
  16. package/dist/chunk-R2JX5N3F.js +382 -0
  17. package/dist/{chunk-ZO7G53QP.js → chunk-UDEWLHQI.js} +4 -2
  18. package/dist/chunk-UK7R3RC7.js +514 -0
  19. package/dist/chunk-XTNWCNSK.js +464 -0
  20. package/dist/chunk-YHSFRPBS.js +42 -0
  21. package/dist/chunk-YNUQG4GF.js +1173 -0
  22. package/dist/document/index.d.ts +31 -1
  23. package/dist/document/index.js +7 -6
  24. package/dist/filesystem/electron.d.ts +8 -34
  25. package/dist/filesystem/electron.js +7 -4
  26. package/dist/filesystem/host.d.ts +28 -0
  27. package/dist/filesystem/host.js +103 -0
  28. package/dist/filesystem/index.d.ts +52 -6
  29. package/dist/filesystem/index.js +36 -15
  30. package/dist/filesystem/indexeddb.d.ts +8 -1
  31. package/dist/filesystem/indexeddb.js +7 -6
  32. package/dist/filesystem/memory.d.ts +2 -1
  33. package/dist/filesystem/memory.js +3 -2
  34. package/dist/filesystem/native.d.ts +2 -1
  35. package/dist/filesystem/native.js +3 -2
  36. package/dist/filesystem-v2-C8AdSXUN.d.ts +74 -0
  37. package/dist/host/index.d.ts +127 -5
  38. package/dist/host/index.js +100 -4
  39. package/dist/host/mobile.d.ts +389 -0
  40. package/dist/host/mobile.js +315 -0
  41. package/dist/host-provider-v2-CyLTRKJF.d.ts +51 -0
  42. package/dist/index.d.ts +8 -5
  43. package/dist/index.js +153 -34
  44. package/dist/mcp/index.d.ts +2 -2
  45. package/dist/mcp/zod.d.ts +23 -1
  46. package/dist/mcp/zod.js +1 -0
  47. package/dist/settings-HrrCikVX.d.ts +170 -0
  48. package/dist/types-BvDnr3YU.d.ts +88 -0
  49. package/dist/{types-Oy9U5FST.d.ts → types-d0yvHUJz.d.ts} +6 -0
  50. package/dist/{types-Bb3yccTH.d.ts → v2-BVnZZyd4.d.ts} +1 -86
  51. package/dist/vscode/index.d.ts +43 -1
  52. package/dist/vscode/index.js +67 -1
  53. package/dist/workspace/index.d.ts +10 -6
  54. package/dist/workspace/index.js +4 -2
  55. package/dist/workspace-index/index.d.ts +240 -0
  56. package/dist/workspace-index/index.js +1287 -0
  57. package/dist/workspace-settings/index.d.ts +301 -0
  58. package/dist/workspace-settings/index.js +820 -0
  59. package/package.json +22 -2
  60. package/dist/chunk-6XHOOBYF.js +0 -36
  61. package/dist/chunk-QI6YKTQV.js +0 -110
  62. package/dist/types-DBYraXxE.d.ts +0 -557
@@ -1,4 +1,5 @@
1
- import { q as FileSystemProvider } from '../types-Bb3yccTH.js';
1
+ import { d as FileSystemProvider } from '../types-BvDnr3YU.js';
2
+ import '../v2-BVnZZyd4.js';
2
3
  import '../workspace-path-CWVrcuPL.js';
3
4
 
4
5
  /**
@@ -16,8 +17,13 @@ interface DocumentRecoveryStorage {
16
17
  getItem(key: string): string | null;
17
18
  setItem(key: string, value: string): void;
18
19
  removeItem(key: string): void;
20
+ /** Browser Storage enumeration permits discovery of separately owned journals. */
21
+ readonly length?: number;
22
+ key?(index: number): string | null;
19
23
  }
20
24
  interface DocumentRecoveryRecord {
25
+ /** Storage owner of a recovered record; absent for legacy journals. */
26
+ ownerId?: string;
21
27
  /** Stable commit-target key, including the workspace/provider scope. */
22
28
  targetKey: string;
23
29
  /** DocumentSession generation that produced this snapshot. */
@@ -67,6 +73,8 @@ type DocumentRecoveryWriteResult = {
67
73
  };
68
74
  interface DocumentRecoveryJournalOptions {
69
75
  storageKey?: string;
76
+ /** Unique live-session identity. Each owner/revision has a separate storage item. */
77
+ ownerId?: string;
70
78
  /** Maximum number of document records retained. Defaults to 20. */
71
79
  maxEntries?: number;
72
80
  /** Conservative UTF-16 estimate for the whole serialized journal. */
@@ -91,6 +99,9 @@ interface DocumentRecoveryJournalOptions {
91
99
  declare class DocumentRecoveryJournal {
92
100
  private readonly storage;
93
101
  private readonly storageKey;
102
+ private readonly baseStorageKey;
103
+ private readonly options;
104
+ private loadedKeys;
94
105
  private readonly maxEntries;
95
106
  private readonly maxStorageBytes;
96
107
  private readonly maxRecordBytes;
@@ -98,15 +109,22 @@ declare class DocumentRecoveryJournal {
98
109
  private readonly maxFutureSkewMs;
99
110
  private readonly now;
100
111
  constructor(storage: DocumentRecoveryStorage | null, options?: DocumentRecoveryJournalOptions);
112
+ /** Isolate writes and acknowledgements from every other live session. */
113
+ forOwner(ownerId: string): DocumentRecoveryJournal;
114
+ /** Consume only the exact recovered snapshot, never a newer draft from its owner. */
115
+ acknowledgeRecord(record: DocumentRecoveryRecord): boolean;
101
116
  /**
102
117
  * Synchronously persist the latest dirty snapshot for a target.
103
118
  * Storage/quota failures are returned, never thrown into an editor onChange.
104
119
  */
105
120
  write(input: DocumentRecoveryWrite): DocumentRecoveryWriteResult;
121
+ private pruneOwners;
106
122
  /** Return the recoverable snapshot for one target, if present and valid. */
107
123
  lookup(targetKey: string, generation?: number): DocumentRecoveryRecord | null;
108
124
  /** List valid records, newest first. Optionally restrict to one target. */
109
125
  list(targetKey?: string): DocumentRecoveryRecord[];
126
+ private loadAll;
127
+ private storageKeys;
110
128
  /**
111
129
  * Clear a record only when the same generation has durably acknowledged at
112
130
  * least the journaled revision. A stale acknowledgement cannot erase a newer
@@ -118,6 +136,12 @@ declare class DocumentRecoveryJournal {
118
136
  private load;
119
137
  private persistBounded;
120
138
  private persistExact;
139
+ /**
140
+ * Each owner/revision is immutable and has its own key. A recovering window
141
+ * may remove that exact key without racing a live owner's newer write.
142
+ * Only explicit writes create records; cleanup never recreates a saved draft.
143
+ */
144
+ private persistOwned;
121
145
  private tryRemove;
122
146
  }
123
147
  /**
@@ -169,6 +193,10 @@ interface DocumentExternalSnapshot {
169
193
  version?: DocumentExternalVersion;
170
194
  }
171
195
  interface DocumentSessionConflict {
196
+ /** The local branch was restored from a previous session's recovery journal. */
197
+ recoveredDraft?: boolean;
198
+ /** Capture time of the recovered copy, not an acknowledgement of a file save. */
199
+ recoveredDraftCapturedAt?: number;
172
200
  targetKey: string;
173
201
  localContent: string;
174
202
  localRevision: number;
@@ -243,6 +271,7 @@ declare class DocumentSession {
243
271
  private readonly autoSaveDelayMs;
244
272
  private readonly autoSaveRetryDelaysMs;
245
273
  private readonly recoveryJournal;
274
+ private recoveredRecords;
246
275
  private readonly listeners;
247
276
  private autoSaveEnabled;
248
277
  private target;
@@ -333,6 +362,7 @@ declare class DocumentSession {
333
362
  private restoreRecoverySnapshot;
334
363
  private writeRecoverySnapshot;
335
364
  private discardRecoverySnapshot;
365
+ private acknowledgeRecoveredRecords;
336
366
  private detach;
337
367
  private assertNotPreparingClose;
338
368
  private enqueueOperation;
@@ -1,17 +1,18 @@
1
1
  import {
2
2
  DOCUMENT_RECOVERY_JOURNAL_SCHEMA_VERSION,
3
3
  DOCUMENT_RECOVERY_JOURNAL_STORAGE_KEY,
4
- DocumentCommitConflictError,
5
4
  DocumentRecoveryJournal,
5
+ getDefaultDocumentRecoveryStorage
6
+ } from "../chunk-XTNWCNSK.js";
7
+ import {
8
+ DocumentCommitConflictError,
6
9
  DocumentSession,
7
10
  DocumentSessionConflictError,
8
- createFileSystemDocumentTarget,
9
- getDefaultDocumentRecoveryStorage
10
- } from "../chunk-KLQKU74Q.js";
11
- import "../chunk-QI6YKTQV.js";
11
+ createFileSystemDocumentTarget
12
+ } from "../chunk-IGB2VSRE.js";
13
+ import "../chunk-XAMILHQP.js";
12
14
  import "../chunk-M5ZNQGR5.js";
13
15
  import "../chunk-AYWKIZLD.js";
14
- import "../chunk-XAMILHQP.js";
15
16
  export {
16
17
  DOCUMENT_RECOVERY_JOURNAL_SCHEMA_VERSION,
17
18
  DOCUMENT_RECOVERY_JOURNAL_STORAGE_KEY,
@@ -1,40 +1,14 @@
1
- import { s as FileSystemProviderV2, r as FileSystemProviderCapabilities, k as FileSystemEntrySnapshot, m as FileSystemFileRead, K as FileSystemWriteOptions, n as FileSystemFileSnapshot, g as FileSystemCreateDirectoryOptions, h as FileSystemDirectorySnapshot, u as FileSystemRemoveOptions, v as FileSystemRemoveResult, o as FileSystemMoveOptions, w as FileSystemSnapshot, C as FileSystemWatchEvent, H as FileSystemWatchOptions, I as FileSystemWatchSubscription, q as FileSystemProvider, F as FileCommitResult, j as FileSystemEntry, b as FileMeta } from '../types-Bb3yccTH.js';
2
- import { a as WorkspacePath } from '../workspace-path-CWVrcuPL.js';
1
+ import { d as FileSystemProvider, F as FileCommitResult, c as FileSystemEntry, b as FileMeta } from '../types-BvDnr3YU.js';
2
+ import { H as HostFileSystemProviderV2 } from '../host-provider-v2-CyLTRKJF.js';
3
3
  export { isElectronHost } from '../host/index.js';
4
- import '../types-DBYraXxE.js';
4
+ import '../v2-BVnZZyd4.js';
5
+ import '../workspace-path-CWVrcuPL.js';
6
+ import '../filesystem-v2-C8AdSXUN.js';
7
+ import '../capabilities-CdQAc745.js';
5
8
 
6
- /** Pure renderer-side client for the typed Electron filesystem v2 transport. */
7
- declare class ElectronFileSystemProviderV2 implements FileSystemProviderV2 {
8
- readonly id: string;
9
- readonly label: string;
10
- readonly capabilities: FileSystemProviderCapabilities;
11
- private readonly rootPath;
12
- private readonly instanceId;
13
- private readonly watchers;
14
- private readonly subscriptions;
15
- private readonly inFlight;
16
- private openPromise;
17
- private removeWatchBridge;
18
- private disposePromise;
19
- private hostOpened;
20
- private disposed;
9
+ /** Compatibility entry point retaining the Electron backend's exact guarantees. */
10
+ declare class ElectronFileSystemProviderV2 extends HostFileSystemProviderV2 {
21
11
  constructor(id: string, label: string, rootPath: string);
22
- getRootPath(): string;
23
- stat(path: WorkspacePath): Promise<FileSystemEntrySnapshot | null>;
24
- readFile(path: WorkspacePath): Promise<FileSystemFileRead | null>;
25
- readDirectory(path: WorkspacePath): Promise<readonly FileSystemEntrySnapshot[]>;
26
- writeFile(path: WorkspacePath, data: ArrayBuffer | Uint8Array, options?: FileSystemWriteOptions): Promise<FileSystemFileSnapshot>;
27
- createDirectory(path: WorkspacePath, options?: FileSystemCreateDirectoryOptions): Promise<FileSystemDirectorySnapshot>;
28
- remove(path: WorkspacePath, options?: FileSystemRemoveOptions): Promise<FileSystemRemoveResult>;
29
- move(oldPath: WorkspacePath, newPath: WorkspacePath, options?: FileSystemMoveOptions): Promise<FileSystemEntrySnapshot>;
30
- snapshot(): Promise<FileSystemSnapshot>;
31
- watch(listener: (event: FileSystemWatchEvent) => void, options?: FileSystemWatchOptions): FileSystemWatchSubscription;
32
- dispose(): Promise<void>;
33
- private request;
34
- private ensureOpen;
35
- private ensureWatchBridge;
36
- private handleWatchMessage;
37
- private assertOpen;
38
12
  }
39
13
 
40
14
  /**
@@ -1,13 +1,16 @@
1
1
  import {
2
2
  ElectronFileSystemProvider,
3
3
  ElectronFileSystemProviderV2
4
- } from "../chunk-BVY7GGNV.js";
4
+ } from "../chunk-IDYE73TU.js";
5
+ import "../chunk-L6PRMR7T.js";
5
6
  import {
6
7
  isElectronHost
7
- } from "../chunk-6XHOOBYF.js";
8
- import "../chunk-2WDJ27EH.js";
8
+ } from "../chunk-YNUQG4GF.js";
9
+ import "../chunk-245W57QP.js";
10
+ import "../chunk-46AGYHDY.js";
9
11
  import "../chunk-73OOROXH.js";
10
- import "../chunk-M62ZGJ5I.js";
12
+ import "../chunk-HABG2JM3.js";
13
+ import "../chunk-LPIJ6HKL.js";
11
14
  import "../chunk-AYWKIZLD.js";
12
15
  export {
13
16
  ElectronFileSystemProvider,
@@ -0,0 +1,28 @@
1
+ import { H as HostFileSystemProviderV2, a as HostFileSystemClientOptions } from '../host-provider-v2-CyLTRKJF.js';
2
+ import { d as FileSystemProvider, F as FileCommitResult, c as FileSystemEntry, b as FileMeta } from '../types-BvDnr3YU.js';
3
+ import '../v2-BVnZZyd4.js';
4
+ import '../workspace-path-CWVrcuPL.js';
5
+ import '../filesystem-v2-C8AdSXUN.js';
6
+
7
+ /** Temporary text facade; all storage and conditional mutation is owned by v2. */
8
+ declare class HostFileSystemProvider implements FileSystemProvider {
9
+ readonly id: string;
10
+ readonly label: string;
11
+ private readonly rootPath;
12
+ readonly v2: HostFileSystemProviderV2;
13
+ constructor(id: string, label: string, rootPath: string, options?: HostFileSystemClientOptions);
14
+ getRootPath(): string;
15
+ readFile(path: string): Promise<string | null>;
16
+ writeFile(path: string, content: string): Promise<void>;
17
+ commitFile(path: string, content: string, expectedContent: string | null): Promise<FileCommitResult>;
18
+ delete(path: string): Promise<void>;
19
+ rename(from: string, to: string): Promise<void>;
20
+ readDirectory(path: string): Promise<FileSystemEntry[]>;
21
+ exists(path: string): Promise<boolean>;
22
+ createDirectory(path: string): Promise<void>;
23
+ stat(path: string): Promise<FileMeta | null>;
24
+ readBinary(path: string): Promise<ArrayBuffer | null>;
25
+ writeBinary(path: string, data: ArrayBuffer | Uint8Array): Promise<void>;
26
+ }
27
+
28
+ export { HostFileSystemClientOptions, HostFileSystemProvider, HostFileSystemProviderV2 };
@@ -0,0 +1,103 @@
1
+ import {
2
+ HostFileSystemProviderV2
3
+ } from "../chunk-L6PRMR7T.js";
4
+ import {
5
+ ELECTRON_FILE_SYSTEM_V2_CAPABILITIES,
6
+ maybeGetDocBlocksHost
7
+ } from "../chunk-YNUQG4GF.js";
8
+ import "../chunk-245W57QP.js";
9
+ import "../chunk-46AGYHDY.js";
10
+ import "../chunk-73OOROXH.js";
11
+ import "../chunk-HABG2JM3.js";
12
+ import "../chunk-LPIJ6HKL.js";
13
+ import {
14
+ decodeUtf8Text
15
+ } from "../chunk-M5ZNQGR5.js";
16
+ import {
17
+ FsError,
18
+ parseWorkspacePath
19
+ } from "../chunk-AYWKIZLD.js";
20
+
21
+ // src/filesystem/host-provider.ts
22
+ var HostFileSystemProvider = class {
23
+ constructor(id, label, rootPath, options) {
24
+ this.id = id;
25
+ this.label = label;
26
+ this.rootPath = rootPath;
27
+ const host = maybeGetDocBlocksHost()?.fsV2;
28
+ this.v2 = new HostFileSystemProviderV2(
29
+ id,
30
+ label,
31
+ rootPath,
32
+ options ?? {
33
+ capabilities: host?.capabilitiesFor?.(id) ?? ELECTRON_FILE_SYSTEM_V2_CAPABILITIES,
34
+ limits: host?.transferLimits
35
+ }
36
+ );
37
+ }
38
+ getRootPath() {
39
+ return this.rootPath;
40
+ }
41
+ async readFile(path) {
42
+ const file = await this.v2.readFile(parseWorkspacePath(path));
43
+ return file ? decodeUtf8Text(file.data, { label: "The file", operation: "read", path }) : null;
44
+ }
45
+ async writeFile(path, content) {
46
+ await this.v2.writeFile(parseWorkspacePath(path), new TextEncoder().encode(content), {
47
+ createParents: true
48
+ });
49
+ }
50
+ async commitFile(path, content, expectedContent) {
51
+ const canonical = parseWorkspacePath(path);
52
+ const current = await this.v2.readFile(canonical);
53
+ const actual = current ? decodeUtf8Text(current.data, { label: "The file", operation: "read", path }) : null;
54
+ if (actual !== expectedContent)
55
+ return { status: "conflict", content: actual, version: current?.entry.version ?? null };
56
+ try {
57
+ const written = await this.v2.writeFile(canonical, new TextEncoder().encode(content), {
58
+ createParents: true,
59
+ expectedVersion: current?.entry.version ?? null
60
+ });
61
+ return { status: "committed", version: written.version };
62
+ } catch (error) {
63
+ if (!(error instanceof FsError && error.code === "conflict")) throw error;
64
+ const external = await this.v2.readFile(canonical);
65
+ return {
66
+ status: "conflict",
67
+ content: external ? decodeUtf8Text(external.data, { label: "The file", operation: "read", path }) : null,
68
+ version: external?.entry.version ?? null
69
+ };
70
+ }
71
+ }
72
+ async delete(path) {
73
+ await this.v2.remove(parseWorkspacePath(path), { recursive: true, missing: "ignore" });
74
+ }
75
+ async rename(from, to) {
76
+ await this.v2.move(parseWorkspacePath(from), parseWorkspacePath(to), { createParents: true });
77
+ }
78
+ async readDirectory(path) {
79
+ return (await this.v2.readDirectory(parseWorkspacePath(path))).map(
80
+ ({ kind, name, path: entryPath }) => ({ kind, name, path: entryPath })
81
+ );
82
+ }
83
+ async exists(path) {
84
+ return await this.v2.stat(parseWorkspacePath(path)) !== null;
85
+ }
86
+ async createDirectory(path) {
87
+ await this.v2.createDirectory(parseWorkspacePath(path), { createParents: true });
88
+ }
89
+ async stat(path) {
90
+ const entry = await this.v2.stat(parseWorkspacePath(path));
91
+ return entry?.kind === "file" ? { name: entry.name, path: entry.path, size: entry.size, lastModified: entry.lastModified } : null;
92
+ }
93
+ async readBinary(path) {
94
+ return (await this.v2.readFile(parseWorkspacePath(path)))?.data ?? null;
95
+ }
96
+ async writeBinary(path, data) {
97
+ await this.v2.writeFile(parseWorkspacePath(path), data, { createParents: true });
98
+ }
99
+ };
100
+ export {
101
+ HostFileSystemProvider,
102
+ HostFileSystemProviderV2
103
+ };
@@ -1,7 +1,9 @@
1
- import { P as FsOperation, s as FileSystemProviderV2, r as FileSystemProviderCapabilities, q as FileSystemProvider, c as FileSystemAtomicity, d as FileSystemCaseSensitivity, z as FileSystemSymlinkPolicy, i as FileSystemDurability, k as FileSystemEntrySnapshot, m as FileSystemFileRead, K as FileSystemWriteOptions, n as FileSystemFileSnapshot, g as FileSystemCreateDirectoryOptions, h as FileSystemDirectorySnapshot, u as FileSystemRemoveOptions, v as FileSystemRemoveResult, o as FileSystemMoveOptions, w as FileSystemSnapshot, G as FileSystemWatchListener, H as FileSystemWatchOptions, I as FileSystemWatchSubscription } from '../types-Bb3yccTH.js';
2
- export { F as FileCommitResult, a as FileEntry, b as FileMeta, e as FileSystemConditionalWriteStrength, f as FileSystemCreateDirectoryMode, j as FileSystemEntry, l as FileSystemEntryWatchEvent, p as FileSystemOverflowWatchEvent, t as FileSystemProviderWithV2, x as FileSystemSnapshotEntry, y as FileSystemSnapshotFile, A as FileSystemVersion, B as FileSystemWatchErrorListener, C as FileSystemWatchEvent, D as FileSystemWatchEventOrigin, E as FileSystemWatchEventType, J as FileSystemWriteMode, L as FolderEntry, M as FsError, N as FsErrorCode, O as FsErrorContext, S as SerializedFsError, Q as deserializeFsError, R as fsErrorFromUnknown, T as getFileSystemProviderV2, U as hasFileSystemProviderV2, V as isQuotaExceededError, W as isSerializedFsError, X as mapDomExceptionToFsErrorCode, Y as mapNodeErrorCodeToFsErrorCode, Z as parseFileSystemVersion, _ as serializeFsError, $ as tryParseFileSystemVersion } from '../types-Bb3yccTH.js';
1
+ import { d as FileSystemProvider } from '../types-BvDnr3YU.js';
2
+ export { F as FileCommitResult, a as FileEntry, b as FileMeta, c as FileSystemEntry, e as FileSystemProviderWithV2, f as FolderEntry, g as getFileSystemProviderV2, h as hasFileSystemProviderV2 } from '../types-BvDnr3YU.js';
3
3
  import { a as WorkspacePath } from '../workspace-path-CWVrcuPL.js';
4
4
  export { W as WORKSPACE_ROOT, p as parseWorkspacePath, t as tryParseWorkspacePath, w as workspacePathBasename, b as workspacePathContains, c as workspacePathDirname, d as workspacePathJoin, e as workspacePathToLegacy } from '../workspace-path-CWVrcuPL.js';
5
+ import { I as FsOperation, n as FileSystemProviderV2, m as FileSystemProviderCapabilities, F as FileSystemAtomicity, a as FileSystemCaseSensitivity, t as FileSystemSymlinkPolicy, f as FileSystemDurability, g as FileSystemEntrySnapshot, i as FileSystemFileRead, D as FileSystemWriteOptions, j as FileSystemFileSnapshot, d as FileSystemCreateDirectoryOptions, e as FileSystemDirectorySnapshot, o as FileSystemRemoveOptions, p as FileSystemRemoveResult, k as FileSystemMoveOptions, q as FileSystemSnapshot, z as FileSystemWatchListener, A as FileSystemWatchOptions, B as FileSystemWatchSubscription } from '../v2-BVnZZyd4.js';
6
+ export { b as FileSystemConditionalWriteStrength, c as FileSystemCreateDirectoryMode, h as FileSystemEntryWatchEvent, l as FileSystemOverflowWatchEvent, r as FileSystemSnapshotEntry, s as FileSystemSnapshotFile, u as FileSystemVersion, v as FileSystemWatchErrorListener, w as FileSystemWatchEvent, x as FileSystemWatchEventOrigin, y as FileSystemWatchEventType, C as FileSystemWriteMode, E as FsError, G as FsErrorCode, H as FsErrorContext, S as SerializedFsError, J as deserializeFsError, K as fsErrorFromUnknown, L as isQuotaExceededError, M as isSerializedFsError, N as mapDomExceptionToFsErrorCode, O as mapNodeErrorCodeToFsErrorCode, P as parseFileSystemVersion, Q as serializeFsError, R as tryParseFileSystemVersion } from '../v2-BVnZZyd4.js';
5
7
  import { MemoryFileSystemSnapshot, MemoryFileSystemProvider } from './memory.js';
6
8
  export { MemoryFilePayloadKind, MemoryFileSystemProviderV2, MemoryFileSystemSnapshotFile, MemoryFileSystemV2CompatibilityFile, MemoryFileSystemV2Replacement, MemoryFileSystemV2ReplacementFile, MemoryFileSystemV2State, MemoryFileSystemV2StateFile } from './memory.js';
7
9
  export { IndexedDBContentContainer, IndexedDBFileSystemProvider, IndexedDBFileSystemProviderV2, IndexedDBFileSystemProviderV2Options, IndexedDBLegacyConflictReason, IndexedDBLegacyConflictResolution, IndexedDBLegacyMigrationConflict, IndexedDBLegacyOpaqueDiscardTarget, IndexedDBLegacyOpaqueRecord, IndexedDBLegacyOpaqueRecordSummary, IndexedDBLegacyOpaqueValue, IndexedDBLegacyRecoveryCandidate, IndexedDBLegacyRecoveryKind } from './indexeddb.js';
@@ -10,7 +12,9 @@ import { MediaProvider } from '@bendyline/squisq/schemas';
10
12
  export { NativeFileSystemMovePathState, NativeFileSystemMoveRecoveryError, NativeFileSystemMoveRecoveryState, NativeFileSystemProvider, NativeFileSystemProviderV2, isNativeFileSystemSupported, loadDirectoryHandle, openNativeFolder, removeDirectoryHandle, restoreNativeFolder, storeDirectoryHandle } from './native.js';
11
13
  export { ElectronFileSystemProvider, ElectronFileSystemProviderV2 } from './electron.js';
12
14
  export { isElectronHost } from '../host/index.js';
13
- import '../types-DBYraXxE.js';
15
+ import '../host-provider-v2-CyLTRKJF.js';
16
+ import '../filesystem-v2-C8AdSXUN.js';
17
+ import '../capabilities-CdQAc745.js';
14
18
 
15
19
  interface DecodeUtf8TextOptions {
16
20
  /** User-facing description of the payload being decoded. */
@@ -132,7 +136,14 @@ declare function replaceMemoryWorkspaceFromDbk(provider: MemoryFileSystemProvide
132
136
  declare class FileSystemContentContainer implements ContentContainer {
133
137
  private readonly provider;
134
138
  private readonly prefix;
135
- constructor(provider: FileSystemProvider, prefix?: string);
139
+ private readonly documentMediaPrefix;
140
+ constructor(provider: FileSystemProvider, prefix?: string, options?: {
141
+ documentMediaPrefix?: string;
142
+ });
143
+ /** A document-scoped container also accepts the media references written
144
+ * into its Markdown, e.g. notes_files/audio/take.webm. Version paths and
145
+ * container-relative discovery still live directly under the scoped root. */
146
+ private resolve;
136
147
  readFile(path: string): Promise<ArrayBuffer | null>;
137
148
  writeFile(path: string, data: ArrayBuffer | Uint8Array, _mimeType?: string): Promise<void>;
138
149
  removeFile(path: string): Promise<void>;
@@ -161,10 +172,42 @@ declare class FileSystemContentContainer implements ContentContainer {
161
172
  * • Resolves both bare (`image.png`) and folder-qualified
162
173
  * (`notes_files/image.png`) references — so legacy markdown and
163
174
  * exports from other tools both work
175
+ * • Types resolved URLs by file extension, as the workspace containers do
164
176
  */
165
177
 
166
178
  declare function createFileMediaProvider(container: ContentContainer, markdownBasename: string): MediaProvider;
167
179
 
180
+ /**
181
+ * Which workspace entries DocBlocks browses, discovers, and watches.
182
+ *
183
+ * The explorer, link picker, catalog generator, and watcher each used to keep
184
+ * a private copy of these rules, and the copies drifted (`.md` in one place,
185
+ * `.md`/`.markdown` in another, `_files` matched case-insensitively in only
186
+ * one walker). Storage operations (read, write, move, remove, snapshot) still
187
+ * reach every entry; these rules only decide what is shown and indexed.
188
+ */
189
+ /** True for dot-entries (`.git`, `.vscode`, `.DS_Store`) and tool-managed folders (`node_modules`). */
190
+ declare function isIgnoredWorkspaceEntryName(name: string): boolean;
191
+ /** Extensions DocBlocks opens as Markdown documents, lower-case. */
192
+ declare const MARKDOWN_FILE_EXTENSIONS: readonly string[];
193
+ /** True for `notes.md`, `Notes.MARKDOWN`, or a path ending in one. */
194
+ declare function isMarkdownFileName(name: string): boolean;
195
+ /**
196
+ * The media folder paired with a document (`notes.md` → `notes_files/`).
197
+ * Case-sensitive, matching what DocBlocks writes.
198
+ */
199
+ declare function isCompanionDirectoryName(name: string): boolean;
200
+ /** Folder where outside-in exports keep the shared Squisq player runtime. */
201
+ declare const SQUISQ_RUNTIME_DIRECTORY_NAME = "_squisq";
202
+ /** Entries the file explorer shows. */
203
+ declare function isBrowsableWorkspaceEntry(name: string, kind: 'file' | 'directory'): boolean;
204
+ /** Entries that document discovery (link picker, catalog, workspace index) lists or descends into. */
205
+ declare function isDiscoverableWorkspaceEntry(name: string, kind: 'file' | 'directory'): boolean;
206
+
207
+ interface FileSystemEntryMoveOptions {
208
+ /** An active session performs its own rewrite after retargeting. */
209
+ rewriteMarkdown?: boolean;
210
+ }
168
211
  /** Return the hidden companion directory used for a document's media and versions. */
169
212
  declare function documentCompanionPath(documentPath: string): string;
170
213
  /**
@@ -172,7 +215,10 @@ declare function documentCompanionPath(documentPath: string): string;
172
215
  * outside-in rendered documents carry their hidden `<basename>_files`
173
216
  * companion directory with them.
174
217
  */
175
- declare function moveFileSystemEntry(provider: FileSystemProvider, oldPath: string, newPath: string, kind: 'file' | 'directory'): Promise<void>;
218
+ declare function moveFileSystemEntry(provider: FileSystemProvider, oldPath: string, newPath: string, kind: 'file' | 'directory', options?: FileSystemEntryMoveOptions): Promise<void>;
219
+
220
+ /** Rewrite owned media references after a Markdown companion changes name. */
221
+ declare function rewriteCompanionReferences(content: string, oldPath: string, newPath: string): Promise<string>;
176
222
 
177
223
  type FileSystemPathPresence = 'present' | 'missing' | 'unknown';
178
224
  interface FileSystemPartialMoveState {
@@ -226,4 +272,4 @@ declare function isFileSystemMoveStateError(error: unknown): error is FileSystem
226
272
  declare function describePartialMove(provider: FileSystemProvider, sourcePath: string, destinationPath: string, companionSourcePath: string, companionDestinationPath: string): Promise<FileSystemPartialMoveState>;
227
273
  declare function describeEntryMove(provider: FileSystemProvider, sourcePath: string, destinationPath: string): Promise<FileSystemEntryMoveState>;
228
274
 
229
- export { type DbkWorkspaceAssetLayout, type DbkWorkspaceSnapshot, type DbkWorkspaceSnapshotOptions, type DecodeUtf8TextOptions, FileSystemAtomicity, FileSystemCaseSensitivity, FileSystemContentContainer, FileSystemCreateDirectoryOptions, FileSystemDirectorySnapshot, FileSystemDurability, type FileSystemEntryMoveState, FileSystemEntrySnapshot, FileSystemFileRead, FileSystemFileSnapshot, type FileSystemMoveLocation, FileSystemMoveOptions, FileSystemMoveRecoveryError, FileSystemPartialMoveError, type FileSystemPartialMoveState, type FileSystemPathPresence, FileSystemProvider, FileSystemProviderCapabilities, FileSystemProviderV2, FileSystemRemoveOptions, FileSystemRemoveResult, FileSystemSnapshot, FileSystemSymlinkPolicy, FileSystemWatchListener, FileSystemWatchOptions, FileSystemWatchSubscription, FileSystemWriteOptions, FsOperation, type LegacyFilePayloadModel, LegacyFileSystemProviderV2Adapter, type LegacyFileSystemProviderV2AdapterOptions, MemoryFileSystemProvider, MemoryFileSystemSnapshot, WorkspacePath, createDbkWorkspaceSnapshot, createFileMediaProvider, decodeUtf8Text, describeEntryMove, describePartialMove, documentCompanionPath, isFileSystemMoveRecoveryError, isFileSystemMoveStateError, isFileSystemPartialMoveError, moveFileSystemEntry, replaceMemoryWorkspaceFromDbk };
275
+ export { type DbkWorkspaceAssetLayout, type DbkWorkspaceSnapshot, type DbkWorkspaceSnapshotOptions, type DecodeUtf8TextOptions, FileSystemAtomicity, FileSystemCaseSensitivity, FileSystemContentContainer, FileSystemCreateDirectoryOptions, FileSystemDirectorySnapshot, FileSystemDurability, type FileSystemEntryMoveOptions, type FileSystemEntryMoveState, FileSystemEntrySnapshot, FileSystemFileRead, FileSystemFileSnapshot, type FileSystemMoveLocation, FileSystemMoveOptions, FileSystemMoveRecoveryError, FileSystemPartialMoveError, type FileSystemPartialMoveState, type FileSystemPathPresence, FileSystemProvider, FileSystemProviderCapabilities, FileSystemProviderV2, FileSystemRemoveOptions, FileSystemRemoveResult, FileSystemSnapshot, FileSystemSymlinkPolicy, FileSystemWatchListener, FileSystemWatchOptions, FileSystemWatchSubscription, FileSystemWriteOptions, FsOperation, type LegacyFilePayloadModel, LegacyFileSystemProviderV2Adapter, type LegacyFileSystemProviderV2AdapterOptions, MARKDOWN_FILE_EXTENSIONS, MemoryFileSystemProvider, MemoryFileSystemSnapshot, SQUISQ_RUNTIME_DIRECTORY_NAME, WorkspacePath, createDbkWorkspaceSnapshot, createFileMediaProvider, decodeUtf8Text, describeEntryMove, describePartialMove, documentCompanionPath, isBrowsableWorkspaceEntry, isCompanionDirectoryName, isDiscoverableWorkspaceEntry, isFileSystemMoveRecoveryError, isFileSystemMoveStateError, isFileSystemPartialMoveError, isIgnoredWorkspaceEntryName, isMarkdownFileName, moveFileSystemEntry, replaceMemoryWorkspaceFromDbk, rewriteCompanionReferences };
@@ -5,17 +5,28 @@ import {
5
5
  createFileMediaProvider,
6
6
  documentCompanionPath,
7
7
  moveFileSystemEntry,
8
- replaceMemoryWorkspaceFromDbk
9
- } from "../chunk-UMWCTEXW.js";
8
+ replaceMemoryWorkspaceFromDbk,
9
+ rewriteCompanionReferences
10
+ } from "../chunk-7SN7YQL4.js";
11
+ import {
12
+ MARKDOWN_FILE_EXTENSIONS,
13
+ SQUISQ_RUNTIME_DIRECTORY_NAME,
14
+ isBrowsableWorkspaceEntry,
15
+ isCompanionDirectoryName,
16
+ isDiscoverableWorkspaceEntry,
17
+ isIgnoredWorkspaceEntryName,
18
+ isMarkdownFileName
19
+ } from "../chunk-YHSFRPBS.js";
10
20
  import {
11
21
  IndexedDBContentContainer,
12
22
  IndexedDBFileSystemProvider,
13
23
  IndexedDBFileSystemProviderV2
14
- } from "../chunk-YM7O3PWO.js";
24
+ } from "../chunk-HKOOHM67.js";
25
+ import "../chunk-DAPFSEKY.js";
15
26
  import {
16
27
  MemoryFileSystemProvider,
17
28
  MemoryFileSystemProviderV2
18
- } from "../chunk-ZO7G53QP.js";
29
+ } from "../chunk-UDEWLHQI.js";
19
30
  import {
20
31
  NativeFileSystemMoveRecoveryError,
21
32
  NativeFileSystemProvider,
@@ -26,22 +37,25 @@ import {
26
37
  removeDirectoryHandle,
27
38
  restoreNativeFolder,
28
39
  storeDirectoryHandle
29
- } from "../chunk-4437YWLE.js";
40
+ } from "../chunk-6UPO2GE6.js";
30
41
  import "../chunk-DZB666V7.js";
31
42
  import "../chunk-KQ6756AJ.js";
32
43
  import {
33
44
  ElectronFileSystemProvider,
34
45
  ElectronFileSystemProviderV2
35
- } from "../chunk-BVY7GGNV.js";
46
+ } from "../chunk-IDYE73TU.js";
47
+ import "../chunk-L6PRMR7T.js";
36
48
  import {
37
49
  isElectronHost
38
- } from "../chunk-6XHOOBYF.js";
39
- import "../chunk-2WDJ27EH.js";
50
+ } from "../chunk-YNUQG4GF.js";
51
+ import "../chunk-245W57QP.js";
52
+ import "../chunk-46AGYHDY.js";
40
53
  import "../chunk-73OOROXH.js";
54
+ import "../chunk-HABG2JM3.js";
41
55
  import {
42
56
  parseFileSystemVersion,
43
57
  tryParseFileSystemVersion
44
- } from "../chunk-M62ZGJ5I.js";
58
+ } from "../chunk-LPIJ6HKL.js";
45
59
  import {
46
60
  FileSystemMoveRecoveryError,
47
61
  FileSystemPartialMoveError,
@@ -50,7 +64,11 @@ import {
50
64
  isFileSystemMoveRecoveryError,
51
65
  isFileSystemMoveStateError,
52
66
  isFileSystemPartialMoveError
53
- } from "../chunk-QI6YKTQV.js";
67
+ } from "../chunk-IGB2VSRE.js";
68
+ import {
69
+ getFileSystemProviderV2,
70
+ hasFileSystemProviderV2
71
+ } from "../chunk-XAMILHQP.js";
54
72
  import {
55
73
  decodeUtf8Text
56
74
  } from "../chunk-M5ZNQGR5.js";
@@ -72,11 +90,6 @@ import {
72
90
  workspacePathJoin,
73
91
  workspacePathToLegacy
74
92
  } from "../chunk-AYWKIZLD.js";
75
- import "../chunk-OQCPBOQA.js";
76
- import {
77
- getFileSystemProviderV2,
78
- hasFileSystemProviderV2
79
- } from "../chunk-XAMILHQP.js";
80
93
  export {
81
94
  ElectronFileSystemProvider,
82
95
  ElectronFileSystemProviderV2,
@@ -88,11 +101,13 @@ export {
88
101
  IndexedDBFileSystemProvider,
89
102
  IndexedDBFileSystemProviderV2,
90
103
  LegacyFileSystemProviderV2Adapter,
104
+ MARKDOWN_FILE_EXTENSIONS,
91
105
  MemoryFileSystemProvider,
92
106
  MemoryFileSystemProviderV2,
93
107
  NativeFileSystemMoveRecoveryError,
94
108
  NativeFileSystemProvider,
95
109
  NativeFileSystemProviderV2,
110
+ SQUISQ_RUNTIME_DIRECTORY_NAME,
96
111
  WORKSPACE_ROOT,
97
112
  createDbkWorkspaceSnapshot,
98
113
  createFileMediaProvider,
@@ -104,10 +119,15 @@ export {
104
119
  fsErrorFromUnknown,
105
120
  getFileSystemProviderV2,
106
121
  hasFileSystemProviderV2,
122
+ isBrowsableWorkspaceEntry,
123
+ isCompanionDirectoryName,
124
+ isDiscoverableWorkspaceEntry,
107
125
  isElectronHost,
108
126
  isFileSystemMoveRecoveryError,
109
127
  isFileSystemMoveStateError,
110
128
  isFileSystemPartialMoveError,
129
+ isIgnoredWorkspaceEntryName,
130
+ isMarkdownFileName,
111
131
  isNativeFileSystemSupported,
112
132
  isQuotaExceededError,
113
133
  isSerializedFsError,
@@ -121,6 +141,7 @@ export {
121
141
  removeDirectoryHandle,
122
142
  replaceMemoryWorkspaceFromDbk,
123
143
  restoreNativeFolder,
144
+ rewriteCompanionReferences,
124
145
  serializeFsError,
125
146
  storeDirectoryHandle,
126
147
  tryParseFileSystemVersion,
@@ -1,4 +1,5 @@
1
- import { s as FileSystemProviderV2, r as FileSystemProviderCapabilities, k as FileSystemEntrySnapshot, m as FileSystemFileRead, K as FileSystemWriteOptions, n as FileSystemFileSnapshot, g as FileSystemCreateDirectoryOptions, h as FileSystemDirectorySnapshot, u as FileSystemRemoveOptions, v as FileSystemRemoveResult, o as FileSystemMoveOptions, w as FileSystemSnapshot, G as FileSystemWatchListener, H as FileSystemWatchOptions, I as FileSystemWatchSubscription, b as FileMeta, q as FileSystemProvider, F as FileCommitResult, j as FileSystemEntry } from '../types-Bb3yccTH.js';
1
+ import { b as FileMeta, d as FileSystemProvider, F as FileCommitResult, c as FileSystemEntry } from '../types-BvDnr3YU.js';
2
+ import { n as FileSystemProviderV2, m as FileSystemProviderCapabilities, g as FileSystemEntrySnapshot, i as FileSystemFileRead, D as FileSystemWriteOptions, j as FileSystemFileSnapshot, d as FileSystemCreateDirectoryOptions, e as FileSystemDirectorySnapshot, o as FileSystemRemoveOptions, p as FileSystemRemoveResult, k as FileSystemMoveOptions, q as FileSystemSnapshot, z as FileSystemWatchListener, A as FileSystemWatchOptions, B as FileSystemWatchSubscription } from '../v2-BVnZZyd4.js';
2
3
  import { a as WorkspacePath } from '../workspace-path-CWVrcuPL.js';
3
4
  import { ContentContainer, ContentEntry } from '@bendyline/squisq/storage';
4
5
 
@@ -29,6 +30,12 @@ interface IndexedDBFileSystemTransaction {
29
30
  keys(): Promise<string[]>;
30
31
  /** O(log n) namespace probe in the concrete IndexedDB implementation. */
31
32
  hasKeyWithPrefix(prefix: string): Promise<boolean>;
33
+ /**
34
+ * Keys directly under `prefix` (the remainder contains no `/`), in key
35
+ * order, skipping each child's subtree instead of visiting it. Optional:
36
+ * callers fall back to filtering `keys()`.
37
+ */
38
+ childKeys?(prefix: string): Promise<string[]>;
32
39
  }
33
40
  interface IndexedDBFileSystemStore {
34
41
  transaction<T>(mode: IndexedDBFileSystemTransactionMode, operation: (transaction: IndexedDBFileSystemTransaction) => Promise<T>): Promise<T>;
@@ -2,17 +2,18 @@ import {
2
2
  IndexedDBContentContainer,
3
3
  IndexedDBFileSystemProvider,
4
4
  IndexedDBFileSystemProviderV2
5
- } from "../chunk-YM7O3PWO.js";
5
+ } from "../chunk-HKOOHM67.js";
6
+ import {
7
+ deleteIndexedDBWorkspaceData,
8
+ indexedDBWorkspaceDatabaseName
9
+ } from "../chunk-DAPFSEKY.js";
6
10
  import "../chunk-DZB666V7.js";
7
11
  import "../chunk-KQ6756AJ.js";
8
12
  import "../chunk-73OOROXH.js";
9
- import "../chunk-M62ZGJ5I.js";
13
+ import "../chunk-HABG2JM3.js";
14
+ import "../chunk-LPIJ6HKL.js";
10
15
  import "../chunk-M5ZNQGR5.js";
11
16
  import "../chunk-AYWKIZLD.js";
12
- import {
13
- deleteIndexedDBWorkspaceData,
14
- indexedDBWorkspaceDatabaseName
15
- } from "../chunk-OQCPBOQA.js";
16
17
  export {
17
18
  IndexedDBContentContainer,
18
19
  IndexedDBFileSystemProvider,
@@ -1,4 +1,5 @@
1
- import { s as FileSystemProviderV2, r as FileSystemProviderCapabilities, K as FileSystemWriteOptions, n as FileSystemFileSnapshot, F as FileCommitResult, k as FileSystemEntrySnapshot, m as FileSystemFileRead, g as FileSystemCreateDirectoryOptions, h as FileSystemDirectorySnapshot, u as FileSystemRemoveOptions, v as FileSystemRemoveResult, o as FileSystemMoveOptions, w as FileSystemSnapshot, G as FileSystemWatchListener, H as FileSystemWatchOptions, I as FileSystemWatchSubscription, q as FileSystemProvider, j as FileSystemEntry, b as FileMeta } from '../types-Bb3yccTH.js';
1
+ import { F as FileCommitResult, d as FileSystemProvider, c as FileSystemEntry, b as FileMeta } from '../types-BvDnr3YU.js';
2
+ import { n as FileSystemProviderV2, m as FileSystemProviderCapabilities, D as FileSystemWriteOptions, j as FileSystemFileSnapshot, g as FileSystemEntrySnapshot, i as FileSystemFileRead, d as FileSystemCreateDirectoryOptions, e as FileSystemDirectorySnapshot, o as FileSystemRemoveOptions, p as FileSystemRemoveResult, k as FileSystemMoveOptions, q as FileSystemSnapshot, z as FileSystemWatchListener, A as FileSystemWatchOptions, B as FileSystemWatchSubscription } from '../v2-BVnZZyd4.js';
2
3
  import { a as WorkspacePath } from '../workspace-path-CWVrcuPL.js';
3
4
 
4
5
  type MemoryFilePayloadKind = 'text' | 'binary';
@@ -1,9 +1,10 @@
1
1
  import {
2
2
  MemoryFileSystemProvider,
3
3
  MemoryFileSystemProviderV2
4
- } from "../chunk-ZO7G53QP.js";
4
+ } from "../chunk-UDEWLHQI.js";
5
5
  import "../chunk-KQ6756AJ.js";
6
- import "../chunk-M62ZGJ5I.js";
6
+ import "../chunk-HABG2JM3.js";
7
+ import "../chunk-LPIJ6HKL.js";
7
8
  import "../chunk-M5ZNQGR5.js";
8
9
  import "../chunk-AYWKIZLD.js";
9
10
  export {
@@ -1,4 +1,5 @@
1
- import { M as FsError, s as FileSystemProviderV2, r as FileSystemProviderCapabilities, k as FileSystemEntrySnapshot, m as FileSystemFileRead, K as FileSystemWriteOptions, n as FileSystemFileSnapshot, g as FileSystemCreateDirectoryOptions, h as FileSystemDirectorySnapshot, u as FileSystemRemoveOptions, v as FileSystemRemoveResult, o as FileSystemMoveOptions, w as FileSystemSnapshot, G as FileSystemWatchListener, H as FileSystemWatchOptions, I as FileSystemWatchSubscription, q as FileSystemProvider, F as FileCommitResult, j as FileSystemEntry, b as FileMeta } from '../types-Bb3yccTH.js';
1
+ import { d as FileSystemProvider, F as FileCommitResult, c as FileSystemEntry, b as FileMeta } from '../types-BvDnr3YU.js';
2
+ import { E as FsError, n as FileSystemProviderV2, m as FileSystemProviderCapabilities, g as FileSystemEntrySnapshot, i as FileSystemFileRead, D as FileSystemWriteOptions, j as FileSystemFileSnapshot, d as FileSystemCreateDirectoryOptions, e as FileSystemDirectorySnapshot, o as FileSystemRemoveOptions, p as FileSystemRemoveResult, k as FileSystemMoveOptions, q as FileSystemSnapshot, z as FileSystemWatchListener, A as FileSystemWatchOptions, B as FileSystemWatchSubscription } from '../v2-BVnZZyd4.js';
2
3
  import { a as WorkspacePath } from '../workspace-path-CWVrcuPL.js';
3
4
 
4
5
  type NativeFileSystemMovePathState = 'present' | 'missing' | 'unknown';