@alfe.ai/mcp-bundler 0.4.0 → 0.4.2
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/README.md +26 -0
- package/dist/index.cjs +590 -144
- package/dist/index.d.cts +37 -18
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +37 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +591 -146
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -69,6 +69,8 @@ interface Logger {
|
|
|
69
69
|
interface McpToolCallResult {
|
|
70
70
|
content: Record<string, unknown>[];
|
|
71
71
|
isError?: boolean;
|
|
72
|
+
structuredContent?: Record<string, unknown>;
|
|
73
|
+
[key: string]: unknown;
|
|
72
74
|
}
|
|
73
75
|
/** A failed MCP tool call, surfaced to the host via `BundlerOptions.onToolError`. */
|
|
74
76
|
interface McpToolErrorInfo {
|
|
@@ -397,6 +399,12 @@ declare class McpBundler {
|
|
|
397
399
|
* tool name. Returns undefined if the tool is not currently advertised.
|
|
398
400
|
*/
|
|
399
401
|
private routeToolName;
|
|
402
|
+
/**
|
|
403
|
+
* Build one collision-resolved catalog used by BOTH registration and
|
|
404
|
+
* routing. Keeping these views together prevents an advertised `-2` name
|
|
405
|
+
* from becoming uncallable when two child names sanitize to the same key.
|
|
406
|
+
*/
|
|
407
|
+
private resolvedCatalog;
|
|
400
408
|
/**
|
|
401
409
|
* Tear down all connections and stop background tasks. Idempotent.
|
|
402
410
|
* Call from `registerRuntimeLifecycle({ cleanup })` in the host plugin.
|
|
@@ -496,8 +504,8 @@ declare class Store {
|
|
|
496
504
|
* The lock guards the read-then-rename window so two processes
|
|
497
505
|
* (e.g. two `alfe mcp add` shells, or the CLI racing the daemon)
|
|
498
506
|
* can't drop each other's writes. The lock file is at
|
|
499
|
-
* `<storePath>.lock`;
|
|
500
|
-
*
|
|
507
|
+
* `<storePath>.lock`; locks whose recorded writer process is no longer
|
|
508
|
+
* alive are reclaimed so a crashed writer doesn't wedge the store.
|
|
501
509
|
*
|
|
502
510
|
* Pure-function shape (instead of a `read()` then `write(next)`
|
|
503
511
|
* pair) intentionally — it keeps the read-modify-write contract
|
|
@@ -507,18 +515,19 @@ declare class Store {
|
|
|
507
515
|
update(fn: (cur: StoreSchema) => StoreSchema): StoreSchema;
|
|
508
516
|
/**
|
|
509
517
|
* Acquire an inter-process file lock by atomically creating a
|
|
510
|
-
* sentinel via `openSync(lockPath, 'wx')`.
|
|
511
|
-
* backoff up to `LOCK_WAIT_MS`.
|
|
512
|
-
*
|
|
513
|
-
*
|
|
514
|
-
*
|
|
518
|
+
* sentinel via `openSync(lockPath, 'wx')`. Waits with bounded
|
|
519
|
+
* backoff up to `LOCK_WAIT_MS`. A structured lock is reclaimed only when
|
|
520
|
+
* its writer process is no longer alive; age alone cannot steal a lock
|
|
521
|
+
* from a slow but valid writer. Old malformed/legacy locks retain a
|
|
522
|
+
* conservative age fallback.
|
|
515
523
|
*
|
|
516
524
|
* Returns the release function. Single-process callers are
|
|
517
525
|
* unaffected — re-entering the same process spins briefly while
|
|
518
526
|
* the prior call's `finally` runs.
|
|
519
527
|
*/
|
|
520
528
|
private acquireLock;
|
|
521
|
-
private
|
|
529
|
+
private inspectStaleLock;
|
|
530
|
+
private fsyncParentDirectory;
|
|
522
531
|
/**
|
|
523
532
|
* Watch the store file for external changes (e.g. another `alfe mcp add`
|
|
524
533
|
* shelling out from a separate process). Returns an unsubscribe fn.
|
|
@@ -532,6 +541,12 @@ declare class Store {
|
|
|
532
541
|
private disposeWatcher;
|
|
533
542
|
}
|
|
534
543
|
declare function defaultStorePath(): string;
|
|
544
|
+
/**
|
|
545
|
+
* One-way launch-identity fingerprint for cache invalidation across IPC.
|
|
546
|
+
* Store entries contain credentials in env/headers, so consumers that only
|
|
547
|
+
* need equality receive this digest rather than the executable configuration.
|
|
548
|
+
*/
|
|
549
|
+
declare function serverLaunchFingerprint(entry: StoredServerEntry): string;
|
|
535
550
|
/** Pull the runtime config (transport + transport-specific fields) out of a stored entry. */
|
|
536
551
|
declare function toServerConfig(entry: StoredServerEntry): McpServerConfig;
|
|
537
552
|
/** Build a stored entry from a runtime config + ownership metadata. */
|
|
@@ -557,6 +572,8 @@ interface AddServerOptions {
|
|
|
557
572
|
version?: string;
|
|
558
573
|
/** Explicit transport hint for remote configs. Defaults to inferring from `config`. */
|
|
559
574
|
transport?: McpTransportKind;
|
|
575
|
+
/** Propagate live replacement errors when the caller owns a retryable authority checkpoint. */
|
|
576
|
+
strictReconcile?: boolean;
|
|
560
577
|
}
|
|
561
578
|
/**
|
|
562
579
|
* Bundler manager — owns the `~/.alfe/mcp/servers.json` store and surfaces a
|
|
@@ -575,6 +592,7 @@ interface AddServerOptions {
|
|
|
575
592
|
*/
|
|
576
593
|
declare class Manager {
|
|
577
594
|
private readonly store;
|
|
595
|
+
private readonly ownsStore;
|
|
578
596
|
private readonly logger?;
|
|
579
597
|
private bundler?;
|
|
580
598
|
private changeListeners;
|
|
@@ -585,9 +603,9 @@ declare class Manager {
|
|
|
585
603
|
/**
|
|
586
604
|
* Register or overwrite a server entry. Mutation lands in the store
|
|
587
605
|
* synchronously; if a bundler has been attached via `loadIntoBundler`,
|
|
588
|
-
* it is re-reconciled BEFORE `onChange` listeners fire
|
|
589
|
-
*
|
|
590
|
-
*
|
|
606
|
+
* it is re-reconciled BEFORE `onChange` listeners fire. A reconcile error is
|
|
607
|
+
* logged and does not roll back the durable store mutation, but listeners do
|
|
608
|
+
* not fire against stale live state. The ordering is load-bearing: the daemon's `onChange`
|
|
591
609
|
* handler warms the bundler's current connections, so the just-added
|
|
592
610
|
* server must already have its Connection object or it is never warmed.
|
|
593
611
|
*/
|
|
@@ -600,6 +618,7 @@ declare class Manager {
|
|
|
600
618
|
*/
|
|
601
619
|
removeServer(id: string, opts?: {
|
|
602
620
|
expectedOwner?: ServerOwner;
|
|
621
|
+
strictReconcile?: boolean;
|
|
603
622
|
}): Promise<boolean>;
|
|
604
623
|
/** Drop every entry whose owner matches — used by integration uninstall. */
|
|
605
624
|
removeServersByOwner(owner: ServerOwner): Promise<string[]>;
|
|
@@ -636,15 +655,15 @@ declare class Manager {
|
|
|
636
655
|
onChange(cb: () => void): () => void;
|
|
637
656
|
/**
|
|
638
657
|
* Detach from the bundler and stop watching the store. Safe to call
|
|
639
|
-
* multiple times.
|
|
640
|
-
*
|
|
658
|
+
* multiple times. An injected Store remains owned by its caller; a Store
|
|
659
|
+
* constructed by this manager is disposed here.
|
|
641
660
|
*/
|
|
642
661
|
dispose(): Promise<void>;
|
|
643
662
|
/**
|
|
644
663
|
* Awaited by every mutator so `onChange` listeners observe a bundler
|
|
645
|
-
* that already contains the mutation. Reconcile failures are logged
|
|
646
|
-
*
|
|
647
|
-
*
|
|
664
|
+
* that already contains the mutation. Reconcile failures are logged and
|
|
665
|
+
* return false so callers preserve the durable mutation without notifying
|
|
666
|
+
* listeners against stale derived state.
|
|
648
667
|
*/
|
|
649
668
|
private reconcileBundlerLogged;
|
|
650
669
|
private reconcileBundler;
|
|
@@ -682,7 +701,7 @@ interface PatternAOptions {
|
|
|
682
701
|
}
|
|
683
702
|
interface PatternAViolation {
|
|
684
703
|
tool: string;
|
|
685
|
-
reason:
|
|
704
|
+
reason: 'missing-selector-property' | 'selector-not-required' | 'selector-property-not-string';
|
|
686
705
|
detail: string;
|
|
687
706
|
}
|
|
688
707
|
/**
|
|
@@ -711,5 +730,5 @@ declare function fromMcpDescriptor(descriptor: McpToolDescriptor): ValidatableTo
|
|
|
711
730
|
//# sourceMappingURL=pattern-a-validator.d.ts.map
|
|
712
731
|
|
|
713
732
|
//#endregion
|
|
714
|
-
export { type AddServerOptions, type BundlerOptions, type ConnectContext, Connection, type ConnectionDeps, type Logger, Manager, type ManagerOptions, McpBundler, type McpClientHandle, type McpServerConfig, type McpServerStatus, type McpToolCallResult, type McpToolDescriptor, type McpToolErrorInfo, type McpTransportKind, type PatternAOptions, type PatternAViolation, type ReconcileDiff, type RemoteServerConfig, STDIO_ENV_DENYLIST, type ServerOwner, type StdioServerConfig, Store, type StoreOptions, type StoreSchema, type StoredServerEntry, type ValidatableTool, assertPatternA, buildNamespacedToolName, checkPatternA, defaultConnect, defaultStorePath, disambiguateAgainst, fromMcpDescriptor, sanitizeNameSegment, sanitizeStdioEnv, toServerConfig, toStoredEntry };
|
|
733
|
+
export { type AddServerOptions, type BundlerOptions, type ConnectContext, Connection, type ConnectionDeps, type Logger, Manager, type ManagerOptions, McpBundler, type McpClientHandle, type McpServerConfig, type McpServerStatus, type McpToolCallResult, type McpToolDescriptor, type McpToolErrorInfo, type McpTransportKind, type PatternAOptions, type PatternAViolation, type ReconcileDiff, type RemoteServerConfig, STDIO_ENV_DENYLIST, type ServerOwner, type StdioServerConfig, Store, type StoreOptions, type StoreSchema, type StoredServerEntry, type ValidatableTool, assertPatternA, buildNamespacedToolName, checkPatternA, defaultConnect, defaultStorePath, disambiguateAgainst, fromMcpDescriptor, sanitizeNameSegment, sanitizeStdioEnv, serverLaunchFingerprint, toServerConfig, toStoredEntry };
|
|
715
734
|
//# sourceMappingURL=index.d.cts.map
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/types.ts","../src/connection.ts","../src/bundler.ts","../src/tool-naming.ts","../src/store.ts","../src/manager.ts","../src/pattern-a-validator.ts"],"mappings":";;AAIA;;;AAAkD,KAAtC,eAAA,GAAkB,iBAAoB,GAAA,kBAAA;AAAkB,UAEnD,iBAAA,CAFmD;EAEnD,OAAA,EAAA,MAAA;EASA,IAAA,CAAA,EAAA,MAAA,EAAA;EAOL,GAAA,CAAA,EAbJ,MAaI,CAAA,MAAgB,EAAA,MAAA,CAAA;EAKX,GAAA,CAAA,EAAA,MAAA;EAeA;EAaA,mBAAe,CAAA,EAAA,MAAA;AAahC;AAAuB,UArDN,kBAAA,CAqDM;KACO,EAAA,MAAA;WACD,CAAA,EAAA,KAAA,GAAA,iBAAA;SACA,CAAA,EArDjB,MAqDiB,CAAA,MAAA,EAAA,MAAA,CAAA;qBACC,CAAA,EAAA,MAAA;;AAGb,KArDL,gBAAA,GAqDsB,
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/types.ts","../src/connection.ts","../src/bundler.ts","../src/tool-naming.ts","../src/store.ts","../src/manager.ts","../src/pattern-a-validator.ts"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -69,6 +69,8 @@ interface Logger {
|
|
|
69
69
|
interface McpToolCallResult {
|
|
70
70
|
content: Record<string, unknown>[];
|
|
71
71
|
isError?: boolean;
|
|
72
|
+
structuredContent?: Record<string, unknown>;
|
|
73
|
+
[key: string]: unknown;
|
|
72
74
|
}
|
|
73
75
|
/** A failed MCP tool call, surfaced to the host via `BundlerOptions.onToolError`. */
|
|
74
76
|
interface McpToolErrorInfo {
|
|
@@ -397,6 +399,12 @@ declare class McpBundler {
|
|
|
397
399
|
* tool name. Returns undefined if the tool is not currently advertised.
|
|
398
400
|
*/
|
|
399
401
|
private routeToolName;
|
|
402
|
+
/**
|
|
403
|
+
* Build one collision-resolved catalog used by BOTH registration and
|
|
404
|
+
* routing. Keeping these views together prevents an advertised `-2` name
|
|
405
|
+
* from becoming uncallable when two child names sanitize to the same key.
|
|
406
|
+
*/
|
|
407
|
+
private resolvedCatalog;
|
|
400
408
|
/**
|
|
401
409
|
* Tear down all connections and stop background tasks. Idempotent.
|
|
402
410
|
* Call from `registerRuntimeLifecycle({ cleanup })` in the host plugin.
|
|
@@ -496,8 +504,8 @@ declare class Store {
|
|
|
496
504
|
* The lock guards the read-then-rename window so two processes
|
|
497
505
|
* (e.g. two `alfe mcp add` shells, or the CLI racing the daemon)
|
|
498
506
|
* can't drop each other's writes. The lock file is at
|
|
499
|
-
* `<storePath>.lock`;
|
|
500
|
-
*
|
|
507
|
+
* `<storePath>.lock`; locks whose recorded writer process is no longer
|
|
508
|
+
* alive are reclaimed so a crashed writer doesn't wedge the store.
|
|
501
509
|
*
|
|
502
510
|
* Pure-function shape (instead of a `read()` then `write(next)`
|
|
503
511
|
* pair) intentionally — it keeps the read-modify-write contract
|
|
@@ -507,18 +515,19 @@ declare class Store {
|
|
|
507
515
|
update(fn: (cur: StoreSchema) => StoreSchema): StoreSchema;
|
|
508
516
|
/**
|
|
509
517
|
* Acquire an inter-process file lock by atomically creating a
|
|
510
|
-
* sentinel via `openSync(lockPath, 'wx')`.
|
|
511
|
-
* backoff up to `LOCK_WAIT_MS`.
|
|
512
|
-
*
|
|
513
|
-
*
|
|
514
|
-
*
|
|
518
|
+
* sentinel via `openSync(lockPath, 'wx')`. Waits with bounded
|
|
519
|
+
* backoff up to `LOCK_WAIT_MS`. A structured lock is reclaimed only when
|
|
520
|
+
* its writer process is no longer alive; age alone cannot steal a lock
|
|
521
|
+
* from a slow but valid writer. Old malformed/legacy locks retain a
|
|
522
|
+
* conservative age fallback.
|
|
515
523
|
*
|
|
516
524
|
* Returns the release function. Single-process callers are
|
|
517
525
|
* unaffected — re-entering the same process spins briefly while
|
|
518
526
|
* the prior call's `finally` runs.
|
|
519
527
|
*/
|
|
520
528
|
private acquireLock;
|
|
521
|
-
private
|
|
529
|
+
private inspectStaleLock;
|
|
530
|
+
private fsyncParentDirectory;
|
|
522
531
|
/**
|
|
523
532
|
* Watch the store file for external changes (e.g. another `alfe mcp add`
|
|
524
533
|
* shelling out from a separate process). Returns an unsubscribe fn.
|
|
@@ -532,6 +541,12 @@ declare class Store {
|
|
|
532
541
|
private disposeWatcher;
|
|
533
542
|
}
|
|
534
543
|
declare function defaultStorePath(): string;
|
|
544
|
+
/**
|
|
545
|
+
* One-way launch-identity fingerprint for cache invalidation across IPC.
|
|
546
|
+
* Store entries contain credentials in env/headers, so consumers that only
|
|
547
|
+
* need equality receive this digest rather than the executable configuration.
|
|
548
|
+
*/
|
|
549
|
+
declare function serverLaunchFingerprint(entry: StoredServerEntry): string;
|
|
535
550
|
/** Pull the runtime config (transport + transport-specific fields) out of a stored entry. */
|
|
536
551
|
declare function toServerConfig(entry: StoredServerEntry): McpServerConfig;
|
|
537
552
|
/** Build a stored entry from a runtime config + ownership metadata. */
|
|
@@ -557,6 +572,8 @@ interface AddServerOptions {
|
|
|
557
572
|
version?: string;
|
|
558
573
|
/** Explicit transport hint for remote configs. Defaults to inferring from `config`. */
|
|
559
574
|
transport?: McpTransportKind;
|
|
575
|
+
/** Propagate live replacement errors when the caller owns a retryable authority checkpoint. */
|
|
576
|
+
strictReconcile?: boolean;
|
|
560
577
|
}
|
|
561
578
|
/**
|
|
562
579
|
* Bundler manager — owns the `~/.alfe/mcp/servers.json` store and surfaces a
|
|
@@ -575,6 +592,7 @@ interface AddServerOptions {
|
|
|
575
592
|
*/
|
|
576
593
|
declare class Manager {
|
|
577
594
|
private readonly store;
|
|
595
|
+
private readonly ownsStore;
|
|
578
596
|
private readonly logger?;
|
|
579
597
|
private bundler?;
|
|
580
598
|
private changeListeners;
|
|
@@ -585,9 +603,9 @@ declare class Manager {
|
|
|
585
603
|
/**
|
|
586
604
|
* Register or overwrite a server entry. Mutation lands in the store
|
|
587
605
|
* synchronously; if a bundler has been attached via `loadIntoBundler`,
|
|
588
|
-
* it is re-reconciled BEFORE `onChange` listeners fire
|
|
589
|
-
*
|
|
590
|
-
*
|
|
606
|
+
* it is re-reconciled BEFORE `onChange` listeners fire. A reconcile error is
|
|
607
|
+
* logged and does not roll back the durable store mutation, but listeners do
|
|
608
|
+
* not fire against stale live state. The ordering is load-bearing: the daemon's `onChange`
|
|
591
609
|
* handler warms the bundler's current connections, so the just-added
|
|
592
610
|
* server must already have its Connection object or it is never warmed.
|
|
593
611
|
*/
|
|
@@ -600,6 +618,7 @@ declare class Manager {
|
|
|
600
618
|
*/
|
|
601
619
|
removeServer(id: string, opts?: {
|
|
602
620
|
expectedOwner?: ServerOwner;
|
|
621
|
+
strictReconcile?: boolean;
|
|
603
622
|
}): Promise<boolean>;
|
|
604
623
|
/** Drop every entry whose owner matches — used by integration uninstall. */
|
|
605
624
|
removeServersByOwner(owner: ServerOwner): Promise<string[]>;
|
|
@@ -636,15 +655,15 @@ declare class Manager {
|
|
|
636
655
|
onChange(cb: () => void): () => void;
|
|
637
656
|
/**
|
|
638
657
|
* Detach from the bundler and stop watching the store. Safe to call
|
|
639
|
-
* multiple times.
|
|
640
|
-
*
|
|
658
|
+
* multiple times. An injected Store remains owned by its caller; a Store
|
|
659
|
+
* constructed by this manager is disposed here.
|
|
641
660
|
*/
|
|
642
661
|
dispose(): Promise<void>;
|
|
643
662
|
/**
|
|
644
663
|
* Awaited by every mutator so `onChange` listeners observe a bundler
|
|
645
|
-
* that already contains the mutation. Reconcile failures are logged
|
|
646
|
-
*
|
|
647
|
-
*
|
|
664
|
+
* that already contains the mutation. Reconcile failures are logged and
|
|
665
|
+
* return false so callers preserve the durable mutation without notifying
|
|
666
|
+
* listeners against stale derived state.
|
|
648
667
|
*/
|
|
649
668
|
private reconcileBundlerLogged;
|
|
650
669
|
private reconcileBundler;
|
|
@@ -682,7 +701,7 @@ interface PatternAOptions {
|
|
|
682
701
|
}
|
|
683
702
|
interface PatternAViolation {
|
|
684
703
|
tool: string;
|
|
685
|
-
reason:
|
|
704
|
+
reason: 'missing-selector-property' | 'selector-not-required' | 'selector-property-not-string';
|
|
686
705
|
detail: string;
|
|
687
706
|
}
|
|
688
707
|
/**
|
|
@@ -711,5 +730,5 @@ declare function fromMcpDescriptor(descriptor: McpToolDescriptor): ValidatableTo
|
|
|
711
730
|
//# sourceMappingURL=pattern-a-validator.d.ts.map
|
|
712
731
|
|
|
713
732
|
//#endregion
|
|
714
|
-
export { type AddServerOptions, type BundlerOptions, type ConnectContext, Connection, type ConnectionDeps, type Logger, Manager, type ManagerOptions, McpBundler, type McpClientHandle, type McpServerConfig, type McpServerStatus, type McpToolCallResult, type McpToolDescriptor, type McpToolErrorInfo, type McpTransportKind, type PatternAOptions, type PatternAViolation, type ReconcileDiff, type RemoteServerConfig, STDIO_ENV_DENYLIST, type ServerOwner, type StdioServerConfig, Store, type StoreOptions, type StoreSchema, type StoredServerEntry, type ValidatableTool, assertPatternA, buildNamespacedToolName, checkPatternA, defaultConnect, defaultStorePath, disambiguateAgainst, fromMcpDescriptor, sanitizeNameSegment, sanitizeStdioEnv, toServerConfig, toStoredEntry };
|
|
733
|
+
export { type AddServerOptions, type BundlerOptions, type ConnectContext, Connection, type ConnectionDeps, type Logger, Manager, type ManagerOptions, McpBundler, type McpClientHandle, type McpServerConfig, type McpServerStatus, type McpToolCallResult, type McpToolDescriptor, type McpToolErrorInfo, type McpTransportKind, type PatternAOptions, type PatternAViolation, type ReconcileDiff, type RemoteServerConfig, STDIO_ENV_DENYLIST, type ServerOwner, type StdioServerConfig, Store, type StoreOptions, type StoreSchema, type StoredServerEntry, type ValidatableTool, assertPatternA, buildNamespacedToolName, checkPatternA, defaultConnect, defaultStorePath, disambiguateAgainst, fromMcpDescriptor, sanitizeNameSegment, sanitizeStdioEnv, serverLaunchFingerprint, toServerConfig, toStoredEntry };
|
|
715
734
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/connection.ts","../src/bundler.ts","../src/tool-naming.ts","../src/store.ts","../src/manager.ts","../src/pattern-a-validator.ts"],"mappings":";;AAIA;;;AAAkD,KAAtC,eAAA,GAAkB,iBAAoB,GAAA,kBAAA;AAAkB,UAEnD,iBAAA,CAFmD;EAEnD,OAAA,EAAA,MAAA;EASA,IAAA,CAAA,EAAA,MAAA,EAAA;EAOL,GAAA,CAAA,EAbJ,MAaI,CAAA,MAAgB,EAAA,MAAA,CAAA;EAKX,GAAA,CAAA,EAAA,MAAA;EAeA;EAaA,mBAAe,CAAA,EAAA,MAAA;AAahC;AAAuB,UArDN,kBAAA,CAqDM;KACO,EAAA,MAAA;WACD,CAAA,EAAA,KAAA,GAAA,iBAAA;SACA,CAAA,EArDjB,MAqDiB,CAAA,MAAA,EAAA,MAAA,CAAA;qBACC,CAAA,EAAA,MAAA;;AAGb,KArDL,gBAAA,GAqDsB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/connection.ts","../src/bundler.ts","../src/tool-naming.ts","../src/store.ts","../src/manager.ts","../src/pattern-a-validator.ts"],"mappings":"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"}
|