@ddse/acm-mcp 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 DDSE Foundation
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,143 @@
1
+ # @ddse/acm-mcp
2
+
3
+ MCP (Model Context Protocol) tool integration for ACM.
4
+
5
+ ## Overview
6
+
7
+ This package provides integration with MCP servers, allowing ACM agents to use tools exposed via the Model Context Protocol. MCP is a standardized protocol for connecting AI applications with data sources and tools.
8
+
9
+ ## Features
10
+
11
+ - Connect to MCP servers via stdio transport
12
+ - Automatic tool discovery
13
+ - Seamless integration with ACM tool registry
14
+ - Support for combining local and MCP tools
15
+
16
+ ## Installation
17
+
18
+ ```bash
19
+ pnpm add @ddse/acm-mcp
20
+ ```
21
+
22
+ ## Usage
23
+
24
+ ### Connecting to an MCP Server
25
+
26
+ ```typescript
27
+ import { McpClientManager, McpToolRegistry } from '@ddse/acm-mcp';
28
+
29
+ // Create and connect to an MCP server
30
+ const manager = new McpClientManager();
31
+ await manager.connect({
32
+ command: 'npx',
33
+ args: ['-y', '@modelcontextprotocol/server-filesystem', '/tmp'],
34
+ });
35
+
36
+ // Create a tool registry from MCP tools
37
+ const mcpRegistry = new McpToolRegistry(manager);
38
+
39
+ // List available tools
40
+ console.log(mcpRegistry.list());
41
+ ```
42
+
43
+ ### Using MCP Tools with ACM
44
+
45
+ ```typescript
46
+ import { CombinedToolRegistry } from '@ddse/acm-mcp';
47
+ import { SimpleToolRegistry } from '@ddse/acm-examples/registries';
48
+
49
+ // Combine local tools with MCP tools
50
+ const localTools = new SimpleToolRegistry();
51
+ // ... register local tools
52
+
53
+ const combinedRegistry = new CombinedToolRegistry(localTools, mcpRegistry);
54
+
55
+ // Use in ACM execution
56
+ const result = await executePlan({
57
+ goal,
58
+ context,
59
+ plan,
60
+ capabilityRegistry,
61
+ toolRegistry: combinedRegistry, // Use combined registry
62
+ // ...
63
+ });
64
+ ```
65
+
66
+ ### Example: Using Filesystem MCP Server
67
+
68
+ ```typescript
69
+ import { McpClientManager, CombinedToolRegistry } from '@ddse/acm-mcp';
70
+
71
+ // Connect to filesystem MCP server
72
+ const manager = new McpClientManager();
73
+ await manager.connect({
74
+ command: 'npx',
75
+ args: ['-y', '@modelcontextprotocol/server-filesystem', '/tmp'],
76
+ });
77
+
78
+ // Now you have access to file operations:
79
+ // - read_file
80
+ // - write_file
81
+ // - list_directory
82
+ // - etc.
83
+
84
+ const mcpRegistry = new McpToolRegistry(manager);
85
+ const tool = mcpRegistry.get('read_file');
86
+ if (tool) {
87
+ const content = await tool.call({ path: '/tmp/example.txt' });
88
+ console.log(content);
89
+ }
90
+
91
+ // Don't forget to disconnect when done
92
+ await manager.disconnect();
93
+ ```
94
+
95
+ ## Available MCP Servers
96
+
97
+ The MCP ecosystem includes several free servers you can use:
98
+
99
+ - **@modelcontextprotocol/server-filesystem**: File system operations
100
+ - **@modelcontextprotocol/server-github**: GitHub API integration
101
+ - **@modelcontextprotocol/server-postgres**: PostgreSQL database access
102
+ - **@modelcontextprotocol/server-brave-search**: Web search via Brave
103
+ - **@modelcontextprotocol/server-memory**: Simple key-value storage
104
+
105
+ ## API Reference
106
+
107
+ ### `McpClientManager`
108
+
109
+ Manages connection to an MCP server.
110
+
111
+ **Methods:**
112
+ - `connect(config: McpServerConfig)`: Connect to an MCP server
113
+ - `getTool(name: string)`: Get a specific tool
114
+ - `getAllTools()`: Get all available tools
115
+ - `listToolNames()`: List all tool names
116
+ - `disconnect()`: Close connection
117
+ - `isConnected()`: Check connection status
118
+
119
+ ### `McpToolRegistry`
120
+
121
+ Tool registry backed by MCP tools.
122
+
123
+ **Methods:**
124
+ - `get(name: string)`: Get a tool by name
125
+ - `list()`: List all tool names
126
+ - `refresh()`: Refresh tools from server
127
+
128
+ ### `CombinedToolRegistry`
129
+
130
+ Combines local and MCP tool registries.
131
+
132
+ **Constructor:**
133
+ ```typescript
134
+ new CombinedToolRegistry(localRegistry, mcpRegistry?)
135
+ ```
136
+
137
+ **Methods:**
138
+ - `get(name: string)`: Get a tool (checks local first, then MCP)
139
+ - `list()`: List all tool names from both registries
140
+
141
+ ## License
142
+
143
+ Apache-2.0
@@ -0,0 +1,60 @@
1
+ import { Tool } from '@ddse/acm-sdk';
2
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
3
+ /**
4
+ * Tool that wraps an MCP server tool
5
+ */
6
+ export declare class McpTool extends Tool<any, any> {
7
+ private client;
8
+ private toolName;
9
+ private toolSchema?;
10
+ constructor(client: Client, toolName: string, toolSchema?: any | undefined);
11
+ name(): string;
12
+ call(input: any, idemKey?: string): Promise<any>;
13
+ schema(): any;
14
+ }
15
+ /**
16
+ * Configuration for connecting to an MCP server
17
+ */
18
+ export interface McpServerConfig {
19
+ command: string;
20
+ args?: string[];
21
+ env?: Record<string, string>;
22
+ }
23
+ /**
24
+ * MCP Client Manager for ACM
25
+ * Handles connection to MCP servers and tool discovery
26
+ */
27
+ export declare class McpClientManager {
28
+ private client;
29
+ private tools;
30
+ private connected;
31
+ /**
32
+ * Connect to an MCP server
33
+ */
34
+ connect(config: McpServerConfig): Promise<void>;
35
+ /**
36
+ * Discover tools available on the connected MCP server
37
+ */
38
+ private discoverTools;
39
+ /**
40
+ * Get a specific tool by name
41
+ */
42
+ getTool(name: string): McpTool | undefined;
43
+ /**
44
+ * Get all available tools
45
+ */
46
+ getAllTools(): McpTool[];
47
+ /**
48
+ * List all tool names
49
+ */
50
+ listToolNames(): string[];
51
+ /**
52
+ * Close connection to MCP server
53
+ */
54
+ disconnect(): Promise<void>;
55
+ /**
56
+ * Check if connected
57
+ */
58
+ isConnected(): boolean;
59
+ }
60
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAGnE;;GAEG;AACH,qBAAa,OAAQ,SAAQ,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC;IAEvC,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,UAAU,CAAC;gBAFX,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,GAAG,YAAA;IAK1B,IAAI,IAAI,MAAM;IAIR,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IA4BtD,MAAM,IAAI,GAAG;CAGd;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,KAAK,CAAmC;IAChD,OAAO,CAAC,SAAS,CAAkB;IAEnC;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BrD;;OAEG;YACW,aAAa;IAa3B;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAI1C;;OAEG;IACH,WAAW,IAAI,OAAO,EAAE;IAIxB;;OAEG;IACH,aAAa,IAAI,MAAM,EAAE;IAIzB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IASjC;;OAEG;IACH,WAAW,IAAI,OAAO;CAGvB"}
package/dist/client.js ADDED
@@ -0,0 +1,133 @@
1
+ // MCP Tool Bridge for ACM
2
+ import { Tool } from '@ddse/acm-sdk';
3
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
4
+ import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
5
+ /**
6
+ * Tool that wraps an MCP server tool
7
+ */
8
+ export class McpTool extends Tool {
9
+ client;
10
+ toolName;
11
+ toolSchema;
12
+ constructor(client, toolName, toolSchema) {
13
+ super();
14
+ this.client = client;
15
+ this.toolName = toolName;
16
+ this.toolSchema = toolSchema;
17
+ }
18
+ name() {
19
+ return `mcp:${this.toolName}`;
20
+ }
21
+ async call(input, idemKey) {
22
+ try {
23
+ const result = await this.client.callTool({
24
+ name: this.toolName,
25
+ arguments: input,
26
+ });
27
+ if (result.isError) {
28
+ throw new Error(`MCP tool error: ${JSON.stringify(result.content)}`);
29
+ }
30
+ // Extract text content from MCP response
31
+ const content = result.content;
32
+ const textContent = content.find((c) => c.type === 'text');
33
+ if (textContent) {
34
+ try {
35
+ return JSON.parse(textContent.text);
36
+ }
37
+ catch {
38
+ return { result: textContent.text };
39
+ }
40
+ }
41
+ return result.content;
42
+ }
43
+ catch (error) {
44
+ throw new Error(`Failed to call MCP tool ${this.toolName}: ${error}`);
45
+ }
46
+ }
47
+ schema() {
48
+ return this.toolSchema;
49
+ }
50
+ }
51
+ /**
52
+ * MCP Client Manager for ACM
53
+ * Handles connection to MCP servers and tool discovery
54
+ */
55
+ export class McpClientManager {
56
+ client = null;
57
+ tools = new Map();
58
+ connected = false;
59
+ /**
60
+ * Connect to an MCP server
61
+ */
62
+ async connect(config) {
63
+ if (this.connected) {
64
+ throw new Error('Already connected to an MCP server');
65
+ }
66
+ const transport = new StdioClientTransport({
67
+ command: config.command,
68
+ args: config.args || [],
69
+ env: config.env,
70
+ });
71
+ this.client = new Client({
72
+ name: 'acm-mcp-client',
73
+ version: '0.1.0',
74
+ }, {
75
+ capabilities: {
76
+ tools: {},
77
+ },
78
+ });
79
+ await this.client.connect(transport);
80
+ this.connected = true;
81
+ // Discover available tools
82
+ await this.discoverTools();
83
+ }
84
+ /**
85
+ * Discover tools available on the connected MCP server
86
+ */
87
+ async discoverTools() {
88
+ if (!this.client) {
89
+ throw new Error('Not connected to an MCP server');
90
+ }
91
+ const { tools } = await this.client.listTools();
92
+ for (const tool of tools) {
93
+ const mcpTool = new McpTool(this.client, tool.name, tool.inputSchema);
94
+ this.tools.set(tool.name, mcpTool);
95
+ }
96
+ }
97
+ /**
98
+ * Get a specific tool by name
99
+ */
100
+ getTool(name) {
101
+ return this.tools.get(name);
102
+ }
103
+ /**
104
+ * Get all available tools
105
+ */
106
+ getAllTools() {
107
+ return Array.from(this.tools.values());
108
+ }
109
+ /**
110
+ * List all tool names
111
+ */
112
+ listToolNames() {
113
+ return Array.from(this.tools.keys());
114
+ }
115
+ /**
116
+ * Close connection to MCP server
117
+ */
118
+ async disconnect() {
119
+ if (this.client) {
120
+ await this.client.close();
121
+ this.client = null;
122
+ this.connected = false;
123
+ this.tools.clear();
124
+ }
125
+ }
126
+ /**
127
+ * Check if connected
128
+ */
129
+ isConnected() {
130
+ return this.connected;
131
+ }
132
+ }
133
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { McpTool, McpClientManager, type McpServerConfig } from './client.js';
2
+ export { McpToolRegistry, CombinedToolRegistry } from './registry.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,4 @@
1
+ // MCP integration for ACM
2
+ export { McpTool, McpClientManager } from './client.js';
3
+ export { McpToolRegistry, CombinedToolRegistry } from './registry.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAwB,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,37 @@
1
+ import { ToolRegistry } from '@ddse/acm-sdk';
2
+ import { McpTool, McpClientManager } from './client.js';
3
+ /**
4
+ * Tool registry that wraps MCP tools
5
+ */
6
+ export declare class McpToolRegistry extends ToolRegistry {
7
+ private manager;
8
+ private tools;
9
+ constructor(manager: McpClientManager);
10
+ /**
11
+ * Sync tools from the MCP client manager
12
+ */
13
+ private syncTools;
14
+ /**
15
+ * Get a tool by name
16
+ */
17
+ get(name: string): McpTool | undefined;
18
+ /**
19
+ * List all available tool names
20
+ */
21
+ list(): string[];
22
+ /**
23
+ * Refresh tools from MCP server
24
+ */
25
+ refresh(): Promise<void>;
26
+ }
27
+ /**
28
+ * Combined tool registry that merges local tools with MCP tools
29
+ */
30
+ export declare class CombinedToolRegistry extends ToolRegistry {
31
+ private localRegistry;
32
+ private mcpRegistry?;
33
+ constructor(localRegistry: ToolRegistry, mcpRegistry?: McpToolRegistry | undefined);
34
+ get(name: string): any;
35
+ list(): string[];
36
+ }
37
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAExD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,YAAY;IAGnC,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,KAAK,CAAmC;gBAE5B,OAAO,EAAE,gBAAgB;IAK7C;;OAEG;IACH,OAAO,CAAC,SAAS;IAOjB;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAItC;;OAEG;IACH,IAAI,IAAI,MAAM,EAAE;IAIhB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,YAAY;IAElD,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,WAAW,CAAC;gBADZ,aAAa,EAAE,YAAY,EAC3B,WAAW,CAAC,EAAE,eAAe,YAAA;IAKvC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG;IAetB,IAAI,IAAI,MAAM,EAAE;CAKjB"}
@@ -0,0 +1,71 @@
1
+ // MCP Tool Registry for ACM
2
+ import { ToolRegistry } from '@ddse/acm-sdk';
3
+ /**
4
+ * Tool registry that wraps MCP tools
5
+ */
6
+ export class McpToolRegistry extends ToolRegistry {
7
+ manager;
8
+ tools = new Map();
9
+ constructor(manager) {
10
+ super();
11
+ this.manager = manager;
12
+ this.syncTools();
13
+ }
14
+ /**
15
+ * Sync tools from the MCP client manager
16
+ */
17
+ syncTools() {
18
+ this.tools.clear();
19
+ for (const tool of this.manager.getAllTools()) {
20
+ this.tools.set(tool.name().replace('mcp:', ''), tool);
21
+ }
22
+ }
23
+ /**
24
+ * Get a tool by name
25
+ */
26
+ get(name) {
27
+ return this.tools.get(name);
28
+ }
29
+ /**
30
+ * List all available tool names
31
+ */
32
+ list() {
33
+ return Array.from(this.tools.keys());
34
+ }
35
+ /**
36
+ * Refresh tools from MCP server
37
+ */
38
+ async refresh() {
39
+ this.syncTools();
40
+ }
41
+ }
42
+ /**
43
+ * Combined tool registry that merges local tools with MCP tools
44
+ */
45
+ export class CombinedToolRegistry extends ToolRegistry {
46
+ localRegistry;
47
+ mcpRegistry;
48
+ constructor(localRegistry, mcpRegistry) {
49
+ super();
50
+ this.localRegistry = localRegistry;
51
+ this.mcpRegistry = mcpRegistry;
52
+ }
53
+ get(name) {
54
+ // Try local registry first
55
+ const localTool = this.localRegistry.get(name);
56
+ if (localTool) {
57
+ return localTool;
58
+ }
59
+ // Try MCP registry
60
+ if (this.mcpRegistry) {
61
+ return this.mcpRegistry.get(name);
62
+ }
63
+ return undefined;
64
+ }
65
+ list() {
66
+ const localTools = this.localRegistry.list();
67
+ const mcpTools = this.mcpRegistry ? this.mcpRegistry.list() : [];
68
+ return [...new Set([...localTools, ...mcpTools])];
69
+ }
70
+ }
71
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAG7C;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,YAAY;IAG3B;IAFZ,KAAK,GAAyB,IAAI,GAAG,EAAE,CAAC;IAEhD,YAAoB,OAAyB;QAC3C,KAAK,EAAE,CAAC;QADU,YAAO,GAAP,OAAO,CAAkB;QAE3C,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,SAAS;QACf,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAI;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,YAAY;IAE1C;IACA;IAFV,YACU,aAA2B,EAC3B,WAA6B;QAErC,KAAK,EAAE,CAAC;QAHA,kBAAa,GAAb,aAAa,CAAc;QAC3B,gBAAW,GAAX,WAAW,CAAkB;IAGvC,CAAC;IAED,GAAG,CAAC,IAAY;QACd,2BAA2B;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,mBAAmB;QACnB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI;QACF,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;CACF"}
package/package.json ADDED
@@ -0,0 +1,34 @@
1
+ {
2
+ "name": "@ddse/acm-mcp",
3
+ "version": "0.5.0",
4
+ "description": "MCP (Model Context Protocol) tool integration for ACM",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.js",
11
+ "types": "./dist/index.d.ts"
12
+ }
13
+ },
14
+ "dependencies": {
15
+ "@modelcontextprotocol/sdk": "^1.0.4",
16
+ "@ddse/acm-sdk": "0.5.0"
17
+ },
18
+ "devDependencies": {
19
+ "@types/node": "^20.0.0",
20
+ "typescript": "^5.3.0"
21
+ },
22
+ "keywords": [
23
+ "acm",
24
+ "mcp",
25
+ "model-context-protocol",
26
+ "tools"
27
+ ],
28
+ "license": "MIT",
29
+ "scripts": {
30
+ "build": "tsc",
31
+ "clean": "rm -rf dist",
32
+ "dev": "tsc --watch"
33
+ }
34
+ }
package/src/client.ts ADDED
@@ -0,0 +1,161 @@
1
+ // MCP Tool Bridge for ACM
2
+ import { Tool } from '@ddse/acm-sdk';
3
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
4
+ import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
5
+
6
+ /**
7
+ * Tool that wraps an MCP server tool
8
+ */
9
+ export class McpTool extends Tool<any, any> {
10
+ constructor(
11
+ private client: Client,
12
+ private toolName: string,
13
+ private toolSchema?: any
14
+ ) {
15
+ super();
16
+ }
17
+
18
+ name(): string {
19
+ return `mcp:${this.toolName}`;
20
+ }
21
+
22
+ async call(input: any, idemKey?: string): Promise<any> {
23
+ try {
24
+ const result = await this.client.callTool({
25
+ name: this.toolName,
26
+ arguments: input,
27
+ });
28
+
29
+ if (result.isError) {
30
+ throw new Error(`MCP tool error: ${JSON.stringify(result.content)}`);
31
+ }
32
+
33
+ // Extract text content from MCP response
34
+ const content = result.content as any[];
35
+ const textContent = content.find((c: any) => c.type === 'text');
36
+ if (textContent) {
37
+ try {
38
+ return JSON.parse(textContent.text);
39
+ } catch {
40
+ return { result: textContent.text };
41
+ }
42
+ }
43
+
44
+ return result.content;
45
+ } catch (error) {
46
+ throw new Error(`Failed to call MCP tool ${this.toolName}: ${error}`);
47
+ }
48
+ }
49
+
50
+ schema(): any {
51
+ return this.toolSchema;
52
+ }
53
+ }
54
+
55
+ /**
56
+ * Configuration for connecting to an MCP server
57
+ */
58
+ export interface McpServerConfig {
59
+ command: string;
60
+ args?: string[];
61
+ env?: Record<string, string>;
62
+ }
63
+
64
+ /**
65
+ * MCP Client Manager for ACM
66
+ * Handles connection to MCP servers and tool discovery
67
+ */
68
+ export class McpClientManager {
69
+ private client: Client | null = null;
70
+ private tools: Map<string, McpTool> = new Map();
71
+ private connected: boolean = false;
72
+
73
+ /**
74
+ * Connect to an MCP server
75
+ */
76
+ async connect(config: McpServerConfig): Promise<void> {
77
+ if (this.connected) {
78
+ throw new Error('Already connected to an MCP server');
79
+ }
80
+
81
+ const transport = new StdioClientTransport({
82
+ command: config.command,
83
+ args: config.args || [],
84
+ env: config.env,
85
+ });
86
+
87
+ this.client = new Client(
88
+ {
89
+ name: 'acm-mcp-client',
90
+ version: '0.1.0',
91
+ },
92
+ {
93
+ capabilities: {
94
+ tools: {},
95
+ },
96
+ }
97
+ );
98
+
99
+ await this.client.connect(transport);
100
+ this.connected = true;
101
+
102
+ // Discover available tools
103
+ await this.discoverTools();
104
+ }
105
+
106
+ /**
107
+ * Discover tools available on the connected MCP server
108
+ */
109
+ private async discoverTools(): Promise<void> {
110
+ if (!this.client) {
111
+ throw new Error('Not connected to an MCP server');
112
+ }
113
+
114
+ const { tools } = await this.client.listTools();
115
+
116
+ for (const tool of tools) {
117
+ const mcpTool = new McpTool(this.client, tool.name, tool.inputSchema);
118
+ this.tools.set(tool.name, mcpTool);
119
+ }
120
+ }
121
+
122
+ /**
123
+ * Get a specific tool by name
124
+ */
125
+ getTool(name: string): McpTool | undefined {
126
+ return this.tools.get(name);
127
+ }
128
+
129
+ /**
130
+ * Get all available tools
131
+ */
132
+ getAllTools(): McpTool[] {
133
+ return Array.from(this.tools.values());
134
+ }
135
+
136
+ /**
137
+ * List all tool names
138
+ */
139
+ listToolNames(): string[] {
140
+ return Array.from(this.tools.keys());
141
+ }
142
+
143
+ /**
144
+ * Close connection to MCP server
145
+ */
146
+ async disconnect(): Promise<void> {
147
+ if (this.client) {
148
+ await this.client.close();
149
+ this.client = null;
150
+ this.connected = false;
151
+ this.tools.clear();
152
+ }
153
+ }
154
+
155
+ /**
156
+ * Check if connected
157
+ */
158
+ isConnected(): boolean {
159
+ return this.connected;
160
+ }
161
+ }
package/src/index.ts ADDED
@@ -0,0 +1,3 @@
1
+ // MCP integration for ACM
2
+ export { McpTool, McpClientManager, type McpServerConfig } from './client.js';
3
+ export { McpToolRegistry, CombinedToolRegistry } from './registry.js';
@@ -0,0 +1,79 @@
1
+ // MCP Tool Registry for ACM
2
+ import { ToolRegistry } from '@ddse/acm-sdk';
3
+ import { McpTool, McpClientManager } from './client.js';
4
+
5
+ /**
6
+ * Tool registry that wraps MCP tools
7
+ */
8
+ export class McpToolRegistry extends ToolRegistry {
9
+ private tools: Map<string, McpTool> = new Map();
10
+
11
+ constructor(private manager: McpClientManager) {
12
+ super();
13
+ this.syncTools();
14
+ }
15
+
16
+ /**
17
+ * Sync tools from the MCP client manager
18
+ */
19
+ private syncTools(): void {
20
+ this.tools.clear();
21
+ for (const tool of this.manager.getAllTools()) {
22
+ this.tools.set(tool.name().replace('mcp:', ''), tool);
23
+ }
24
+ }
25
+
26
+ /**
27
+ * Get a tool by name
28
+ */
29
+ get(name: string): McpTool | undefined {
30
+ return this.tools.get(name);
31
+ }
32
+
33
+ /**
34
+ * List all available tool names
35
+ */
36
+ list(): string[] {
37
+ return Array.from(this.tools.keys());
38
+ }
39
+
40
+ /**
41
+ * Refresh tools from MCP server
42
+ */
43
+ async refresh(): Promise<void> {
44
+ this.syncTools();
45
+ }
46
+ }
47
+
48
+ /**
49
+ * Combined tool registry that merges local tools with MCP tools
50
+ */
51
+ export class CombinedToolRegistry extends ToolRegistry {
52
+ constructor(
53
+ private localRegistry: ToolRegistry,
54
+ private mcpRegistry?: McpToolRegistry
55
+ ) {
56
+ super();
57
+ }
58
+
59
+ get(name: string): any {
60
+ // Try local registry first
61
+ const localTool = this.localRegistry.get(name);
62
+ if (localTool) {
63
+ return localTool;
64
+ }
65
+
66
+ // Try MCP registry
67
+ if (this.mcpRegistry) {
68
+ return this.mcpRegistry.get(name);
69
+ }
70
+
71
+ return undefined;
72
+ }
73
+
74
+ list(): string[] {
75
+ const localTools = this.localRegistry.list();
76
+ const mcpTools = this.mcpRegistry ? this.mcpRegistry.list() : [];
77
+ return [...new Set([...localTools, ...mcpTools])];
78
+ }
79
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,11 @@
1
+ {
2
+ "extends": "../../tsconfig.json",
3
+ "compilerOptions": {
4
+ "outDir": "./dist",
5
+ "rootDir": "./src"
6
+ },
7
+ "include": ["src/**/*"],
8
+ "references": [
9
+ { "path": "../acm-sdk" }
10
+ ]
11
+ }
@@ -0,0 +1 @@
1
+ {"fileNames":["../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.date.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.array.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.error.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.object.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.string.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.d.ts","../../node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../acm-sdk/dist/src/nucleus.d.ts","../acm-sdk/dist/src/types.d.ts","../acm-sdk/dist/src/tool.d.ts","../acm-sdk/dist/src/task.d.ts","../acm-sdk/dist/src/capability.d.ts","../acm-sdk/dist/src/registry.d.ts","../acm-sdk/dist/src/policy.d.ts","../acm-sdk/dist/src/stream.d.ts","../acm-sdk/dist/src/context.d.ts","../acm-sdk/dist/src/context-provider.d.ts","../acm-sdk/dist/src/utils.d.ts","../acm-sdk/dist/src/index.d.ts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/typeAliases.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/index.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/enumUtil.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/partialUtil.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/standard-schema.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/external.d.cts","../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/index.d.cts","../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.19.1/node_modules/@modelcontextprotocol/sdk/dist/esm/server/auth/types.d.ts","../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.19.1/node_modules/@modelcontextprotocol/sdk/dist/esm/types.d.ts","../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.19.1/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/transport.d.ts","../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.19.1/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.d.ts","../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.19.1/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.d.ts","../../node_modules/.pnpm/@modelcontextprotocol+sdk@1.19.1/node_modules/@modelcontextprotocol/sdk/dist/esm/client/stdio.d.ts","./src/client.ts","./src/registry.ts","./src/index.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/compatibility/disposable.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/compatibility/indexable.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/compatibility/iterators.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/compatibility/index.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/globals.typedarray.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/buffer.buffer.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/globals.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/web-globals/abortcontroller.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/web-globals/domexception.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/web-globals/events.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/header.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/readable.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/file.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/fetch.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/formdata.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/connector.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/client.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/errors.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/dispatcher.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-dispatcher.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/global-origin.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool-stats.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/pool.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/handlers.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/balanced-pool.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/agent.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-interceptor.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-agent.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-client.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-pool.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/mock-errors.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/proxy-agent.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/env-http-proxy-agent.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-handler.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/retry-agent.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/api.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/interceptors.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/util.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cookies.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/patch.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/websocket.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/eventsource.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/filereader.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/diagnostics-channel.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/content-type.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/cache.d.ts","../../node_modules/.pnpm/undici-types@6.21.0/node_modules/undici-types/index.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/web-globals/fetch.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/assert.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/assert/strict.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/async_hooks.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/buffer.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/child_process.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/cluster.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/console.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/constants.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/crypto.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/dgram.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/dns.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/dns/promises.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/domain.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/events.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/fs.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/fs/promises.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/http.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/http2.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/https.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/inspector.generated.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/module.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/net.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/os.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/path.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/perf_hooks.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/process.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/punycode.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/querystring.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/readline.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/readline/promises.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/repl.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/sea.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/stream.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/stream/promises.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/stream/consumers.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/stream/web.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/string_decoder.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/test.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/timers.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/timers/promises.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/tls.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/trace_events.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/tty.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/url.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/util.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/v8.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/vm.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/wasi.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/worker_threads.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/zlib.d.ts","../../node_modules/.pnpm/@types+node@20.19.19/node_modules/@types/node/index.d.ts"],"fileIdsList":[[83,85,86,87,98,144],[85,86,98,144,145,174],[98,144],[83,84,85,86,98,144],[85,98,144],[83,84,98,144],[98,141,144],[98,143,144],[144],[98,144,149,177],[98,144,145,150,155,163,174,185],[98,144,145,146,155,163],[93,94,95,98,144],[98,144,147,186],[98,144,148,149,156,164],[98,144,149,174,182],[98,144,150,152,155,163],[98,143,144,151],[98,144,152,153],[98,144,154,155],[98,143,144,155],[98,144,155,156,157,174,185],[98,144,155,156,157,170,174,177],[98,144,152,155,158,163,174,185],[98,144,155,156,158,159,163,174,182,185],[98,144,158,160,174,182,185],[96,97,98,99,100,101,102,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191],[98,144,155,161],[98,144,162,185,190],[98,144,152,155,163,174],[98,144,164],[98,144,165],[98,143,144,166],[98,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191],[98,144,168],[98,144,169],[98,144,155,170,171],[98,144,170,172,186,188],[98,144,155,174,175,177],[98,144,176,177],[98,144,174,175],[98,144,177],[98,144,178],[98,141,144,174,179],[98,144,155,180,181],[98,144,180,181],[98,144,149,163,174,182],[98,144,183],[98,144,163,184],[98,144,158,169,185],[98,144,149,186],[98,144,174,187],[98,144,162,188],[98,144,189],[98,139,144],[98,139,144,155,157,166,174,177,185,188,190],[98,144,174,191],[98,111,115,144,185],[98,111,144,174,185],[98,106,144],[98,108,111,144,182,185],[98,144,163,182],[98,144,192],[98,106,144,192],[98,108,111,144,163,185],[98,103,104,107,110,144,155,174,185],[98,111,118,144],[98,103,109,144],[98,111,132,133,144],[98,107,111,144,177,185,192],[98,132,144,192],[98,105,106,144,192],[98,111,144],[98,105,106,107,108,109,110,111,112,113,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,133,134,135,136,137,138,144],[98,111,126,144],[98,111,118,119,144],[98,109,111,119,120,144],[98,110,144],[98,103,106,111,144],[98,111,115,119,120,144],[98,115,144],[98,109,111,114,144,185],[98,103,108,111,118,144],[98,144,174],[98,106,111,132,144,190,192],[82,98,144],[70,71,72,98,144],[73,74,98,144],[70,71,73,75,76,81,98,144],[71,73,98,144],[81,98,144],[73,98,144],[70,71,73,76,77,78,79,80,98,144],[69,88,89,98,144],[90,91,98,144],[69,90,98,144],[59,61,98,144],[58,59,60,98,144],[59,98,144],[58,59,60,61,62,63,64,65,66,67,68,98,144],[60,98,144],[58,59,98,144],[58,98,144],[59,62,98,144]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},"5ad07c262dfb2f14353e2f3ffc096600cad7c02a36f8bfb1011f0a034377feb0","777102e8edbfc06dd3f1b71ec30ee7d694ebb29f20f8e413383a41fe6804e1b2","d11a4c7da78f3ca2be8e9dcdbe007e5abd0dbd2ab82ae686c76772346bf8c620","75e2ff50a8320c8f80aef345259ee659ccc9d40504f848e9b24b1e304fc55352","1a88dfa5ab3bdecb302f94b4abdf1510c68699cf3437347a3462116cf37d8fb4","5d5df716a2e624c74357b49383a950b8ff0567890c28e62d3787011dd26eaf4d","4e863ccf9bf55d8b9120ce28e4faee052e191fa9fa2c9637d427682a9a72059c","45b1108af4c5adaa8e1cf58e6fcaa73fde57c72254c7ae5603673c04b364c522","e99d408704752e8bab84079cec1c33682b98715949145f0a95d2c98997d565ac","17d36096aa97a3177dbced126f752049a19e11778345a280227eb64c33972518","ca8bd23c8b8a2e6fc15fb248bfbc2db70faac477c5780265cc2ce96445f8fc8d","fbf4f020dab462fed68d3623ea47d3c9376b462d5d199ba4992351c6830e4f8c",{"version":"d3cfde44f8089768ebb08098c96d01ca260b88bccf238d55eee93f1c620ff5a5","impliedFormat":1},{"version":"293eadad9dead44c6fd1db6de552663c33f215c55a1bfa2802a1bceed88ff0ec","impliedFormat":1},{"version":"833e92c058d033cde3f29a6c7603f517001d1ddd8020bc94d2067a3bc69b2a8e","impliedFormat":1},{"version":"08b2fae7b0f553ad9f79faec864b179fc58bc172e295a70943e8585dd85f600c","impliedFormat":1},{"version":"f12edf1672a94c578eca32216839604f1e1c16b40a1896198deabf99c882b340","impliedFormat":1},{"version":"e3498cf5e428e6c6b9e97bd88736f26d6cf147dedbfa5a8ad3ed8e05e059af8a","impliedFormat":1},{"version":"dba3f34531fd9b1b6e072928b6f885aa4d28dd6789cbd0e93563d43f4b62da53","impliedFormat":1},{"version":"f672c876c1a04a223cf2023b3d91e8a52bb1544c576b81bf64a8fec82be9969c","impliedFormat":1},{"version":"e4b03ddcf8563b1c0aee782a185286ed85a255ce8a30df8453aade2188bbc904","impliedFormat":1},{"version":"2329d90062487e1eaca87b5e06abcbbeeecf80a82f65f949fd332cfcf824b87b","impliedFormat":1},{"version":"25b3f581e12ede11e5739f57a86e8668fbc0124f6649506def306cad2c59d262","impliedFormat":1},{"version":"4fdb529707247a1a917a4626bfb6a293d52cd8ee57ccf03830ec91d39d606d6d","impliedFormat":1},{"version":"a9ebb67d6bbead6044b43714b50dcb77b8f7541ffe803046fdec1714c1eba206","impliedFormat":1},{"version":"5780b706cece027f0d4444fbb4e1af62dc51e19da7c3d3719f67b22b033859b9","impliedFormat":1},{"version":"f17ed72d1b1882ab6dc66d45e699f757d15bba0807af2fc9c3ec98fe367611c1","impliedFormat":99},{"version":"3f4248944c380b995618847b254e64c4fad48e31650c692bb01424df48618a86","impliedFormat":99},{"version":"6ca0b2845c6e95e75e42fe99026c7545c8b4cfd9bc1750bb5421b0699ef89c35","impliedFormat":99},{"version":"b03cab886d1ea68398cec813d86857b97f7100fcc17ad8eabdb033dd6251953f","impliedFormat":99},{"version":"9dcb107d4bd0227f0b407099ed8da673e06e034f540cb70f3c7bbb82c27e19a5","impliedFormat":99},{"version":"432962228177533520f449860528ca73ef19add3459f07d07cbaa1aa4c848d49","impliedFormat":99},{"version":"4933a408d0f579b39a57f6f1610ec0d155dea4735cbb7c25ae43c5711dd845ab","signature":"ce945e23e14ecce9f6c6db6b2b3398f091a964b8afba35e5cd430512850b84ec"},{"version":"8677c5f757b3fff902af9080101a11c1fbeecff88958c0144654d1c4db77cfa2","signature":"9514badf634aa499396919eb8c194c7f49484cef8631d7433be39502ec1f1686"},{"version":"ba25bc0e9edcda2099a3b5aef8b9435e9b3a46fa705bacdf8d1b74e5453be9ea","signature":"4bd1bc035bf975fab7733fba38ae0bb43c443cc74febf22a8c7cfa8d659f1b3b"},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"49a5a44f2e68241a1d2bd9ec894535797998841c09729e506a7cbfcaa40f2180","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e2e0a2dfc6bfabffacba3cc3395aa8197f30893942a2625bd9923ea34a27a3c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1db0b7dca579049ca4193d034d835f6bfe73096c73663e5ef9a0b5779939f3d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"9798340ffb0d067d69b1ae5b32faa17ab31b82466a3fc00d8f2f2df0c8554aaa","affectsGlobalScope":true,"impliedFormat":1},{"version":"f26b11d8d8e4b8028f1c7d618b22274c892e4b0ef5b3678a8ccbad85419aef43","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"763fe0f42b3d79b440a9b6e51e9ba3f3f91352469c1e4b3b67bfa4ff6352f3f4","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"7f182617db458e98fc18dfb272d40aa2fff3a353c44a89b2c0ccb3937709bfb5","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"e61be3f894b41b7baa1fbd6a66893f2579bfad01d208b4ff61daef21493ef0a8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"615ba88d0128ed16bf83ef8ccbb6aff05c3ee2db1cc0f89ab50a4939bfc1943f","impliedFormat":1},{"version":"a4d551dbf8746780194d550c88f26cf937caf8d56f102969a110cfaed4b06656","impliedFormat":1},{"version":"8bd86b8e8f6a6aa6c49b71e14c4ffe1211a0e97c80f08d2c8cc98838006e4b88","impliedFormat":1},{"version":"317e63deeb21ac07f3992f5b50cdca8338f10acd4fbb7257ebf56735bf52ab00","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"2cbe0621042e2a68c7cbce5dfed3906a1862a16a7d496010636cdbdb91341c0f","affectsGlobalScope":true,"impliedFormat":1},{"version":"e2677634fe27e87348825bb041651e22d50a613e2fdf6a4a3ade971d71bac37e","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"8c0bcd6c6b67b4b503c11e91a1fb91522ed585900eab2ab1f61bba7d7caa9d6f","impliedFormat":1},{"version":"567b7f607f400873151d7bc63a049514b53c3c00f5f56e9e95695d93b66a138e","affectsGlobalScope":true,"impliedFormat":1},{"version":"823f9c08700a30e2920a063891df4e357c64333fdba6889522acc5b7ae13fc08","impliedFormat":1},{"version":"84c1930e33d1bb12ad01bcbe11d656f9646bd21b2fb2afd96e8e10615a021aef","impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"5524481e56c48ff486f42926778c0a3cce1cc85dc46683b92b1271865bcf015a","impliedFormat":1},{"version":"4b87f767c7bc841511113c876a6b8bf1fd0cb0b718c888ad84478b372ec486b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d04e3640dd9eb67f7f1e5bd3d0bf96c784666f7aefc8ac1537af6f2d38d4c29","impliedFormat":1},{"version":"9d19808c8c291a9010a6c788e8532a2da70f811adb431c97520803e0ec649991","impliedFormat":1},{"version":"2bf469abae4cc9c0f340d4e05d9d26e37f936f9c8ca8f007a6534f109dcc77e4","impliedFormat":1},{"version":"4aacb0dd020eeaef65426153686cc639a78ec2885dc72ad220be1d25f1a439df","impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","impliedFormat":1},{"version":"1d140fe7e071ea06038b6c5e01fea83f72d9d6d68e0d606a3d824323f5133388","affectsGlobalScope":true,"impliedFormat":1},{"version":"4c21aaa8257d7950a5b75a251d9075b6a371208fc948c9c8402f6690ef3b5b55","impliedFormat":1},{"version":"685657a3ec619ef12aa7f754eee3b28598d3bf9749da89839a72a343fffef5ff","impliedFormat":1},{"version":"0c52340a45f6a46b67d766210f921aed61a5f1defe9e708fa5d3389bdf743d98","impliedFormat":1},{"version":"de735eca2c51dd8b860254e9fdb6d9ec19fe402dfe597c23090841ce3937cfc5","impliedFormat":1},{"version":"fed70ffbe859d54d8c7e1ef8cc2bc38af99b00a273ebb69ac293d2cb656210bd","impliedFormat":1},{"version":"5650cf3dace09e7c25d384e3e6b818b938f68f4e8de96f52d9c5a1b3db068e86","impliedFormat":1},{"version":"1354ca5c38bd3fd3836a68e0f7c9f91f172582ba30ab15bb8c075891b91502b7","affectsGlobalScope":true,"impliedFormat":1},{"version":"5155da3047ef977944d791a2188ff6e6c225f6975cc1910ab7bb6838ab84cede","impliedFormat":1},{"version":"93f437e1398a4f06a984f441f7fa7a9f0535c04399619b5c22e0b87bdee182cb","impliedFormat":1},{"version":"afbe24ab0d74694372baa632ecb28bb375be53f3be53f9b07ecd7fc994907de5","impliedFormat":1},{"version":"e16d218a30f6a6810b57f7e968124eaa08c7bb366133ea34bbf01e7cd6b8c0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb8692dea24c27821f77e397272d9ed2eda0b95e4a75beb0fdda31081d15a8ae","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","impliedFormat":1},{"version":"b4f70ec656a11d570e1a9edce07d118cd58d9760239e2ece99306ee9dfe61d02","impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"5b6844ad931dcc1d3aca53268f4bd671428421464b1286746027aede398094f2","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"125d792ec6c0c0f657d758055c494301cc5fdb327d9d9d5960b3f129aff76093","impliedFormat":1},{"version":"0225ecb9ed86bdb7a2c7fd01f1556906902929377b44483dc4b83e03b3ef227d","affectsGlobalScope":true,"impliedFormat":1},{"version":"1851a3b4db78664f83901bb9cac9e45e03a37bb5933cc5bf37e10bb7e91ab4eb","impliedFormat":1},{"version":"5eab9b3dc9b34f185417342436ec3f106898da5f4801992d8ff38ab3aff346b5","impliedFormat":1},{"version":"12ed4559eba17cd977aa0db658d25c4047067444b51acfdcbf38470630642b23","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3ffabc95802521e1e4bcba4c88d8615176dc6e09111d920c7a213bdda6e1d65","impliedFormat":1},{"version":"e31e51c55800014d926e3f74208af49cb7352803619855c89296074d1ecbb524","impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","impliedFormat":1},{"version":"dfb96ba5177b68003deec9e773c47257da5c4c8a74053d8956389d832df72002","affectsGlobalScope":true,"impliedFormat":1},{"version":"92d3070580cf72b4bb80959b7f16ede9a3f39e6f4ef2ac87cfa4561844fdc69f","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3dffd70e6375b872f0b4e152de4ae682d762c61a24881ecc5eb9f04c5caf76f","impliedFormat":1},{"version":"613deebaec53731ff6b74fe1a89f094b708033db6396b601df3e6d5ab0ec0a47","impliedFormat":1},{"version":"d91a7d8b5655c42986f1bdfe2105c4408f472831c8f20cf11a8c3345b6b56c8c","impliedFormat":1},{"version":"ed59add13139f84da271cafd32e2171876b0a0af2f798d0c663e8eeb867732cf","affectsGlobalScope":true,"impliedFormat":1},{"version":"e8a979b8af001c9fc2e774e7809d233c8ca955a28756f52ee5dee88ccb0611d2","impliedFormat":1},{"version":"b1810689b76fd473bd12cc9ee219f8e62f54a7d08019a235d07424afbf074d25","impliedFormat":1}],"root":[[90,92]],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":7,"outDir":"./dist","rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9},"referencedMap":[[88,1],[89,2],[84,3],[87,4],[86,5],[85,6],[141,7],[142,7],[143,8],[98,9],[144,10],[145,11],[146,12],[93,3],[96,13],[94,3],[95,3],[147,14],[148,15],[149,16],[150,17],[151,18],[152,19],[153,19],[154,20],[155,21],[156,22],[157,23],[99,3],[97,3],[158,24],[159,25],[160,26],[192,27],[161,28],[162,29],[163,30],[164,31],[165,32],[166,33],[167,34],[168,35],[169,36],[170,37],[171,37],[172,38],[173,3],[174,39],[176,40],[175,41],[177,42],[178,43],[179,44],[180,45],[181,46],[182,47],[183,48],[184,49],[185,50],[186,51],[187,52],[188,53],[189,54],[100,3],[101,3],[102,3],[140,55],[190,56],[191,57],[56,3],[57,3],[11,3],[10,3],[2,3],[12,3],[13,3],[14,3],[15,3],[16,3],[17,3],[18,3],[19,3],[3,3],[20,3],[21,3],[4,3],[22,3],[26,3],[23,3],[24,3],[25,3],[27,3],[28,3],[29,3],[5,3],[30,3],[31,3],[32,3],[33,3],[6,3],[37,3],[34,3],[35,3],[36,3],[38,3],[7,3],[39,3],[44,3],[45,3],[40,3],[41,3],[42,3],[43,3],[8,3],[49,3],[46,3],[47,3],[48,3],[50,3],[9,3],[51,3],[52,3],[53,3],[55,3],[54,3],[1,3],[118,58],[128,59],[117,58],[138,60],[109,61],[108,62],[137,63],[131,64],[136,65],[111,66],[125,67],[110,68],[134,69],[106,70],[105,63],[135,71],[107,72],[112,73],[113,3],[116,73],[103,3],[139,74],[129,75],[120,76],[121,77],[123,78],[119,79],[122,80],[132,63],[114,81],[115,82],[124,83],[104,84],[127,75],[126,73],[130,3],[133,85],[83,86],[73,87],[75,88],[82,89],[77,3],[78,3],[76,90],[79,91],[70,3],[71,3],[72,86],[74,92],[80,3],[81,93],[90,94],[92,95],[91,96],[62,97],[67,98],[66,99],[69,100],[58,99],[64,99],[63,101],[65,99],[61,102],[60,3],[59,103],[68,104]],"latestChangedDtsFile":"./dist/index.d.ts","version":"5.9.3"}