@modelcontextprotocol/sdk 1.0.3 → 1.1.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 (40) hide show
  1. package/README.md +8 -0
  2. package/dist/client/sse.d.ts +6 -1
  3. package/dist/client/sse.d.ts.map +1 -1
  4. package/dist/client/sse.js +14 -10
  5. package/dist/client/sse.js.map +1 -1
  6. package/dist/server/sse.d.ts +1 -1
  7. package/dist/server/sse.d.ts.map +1 -1
  8. package/dist/server/sse.js +3 -3
  9. package/dist/server/sse.js.map +1 -1
  10. package/dist/shared/protocol.js +2 -2
  11. package/dist/shared/protocol.js.map +1 -1
  12. package/dist/types.d.ts +3 -3
  13. package/dist/types.d.ts.map +1 -1
  14. package/dist/types.js +3 -3
  15. package/dist/types.js.map +1 -1
  16. package/package.json +14 -5
  17. package/dist/client/index.test.d.ts +0 -2
  18. package/dist/client/index.test.d.ts.map +0 -1
  19. package/dist/client/index.test.js +0 -393
  20. package/dist/client/index.test.js.map +0 -1
  21. package/dist/client/stdio.test.d.ts +0 -2
  22. package/dist/client/stdio.test.d.ts.map +0 -1
  23. package/dist/client/stdio.test.js +0 -51
  24. package/dist/client/stdio.test.js.map +0 -1
  25. package/dist/inMemory.test.d.ts +0 -2
  26. package/dist/inMemory.test.d.ts.map +0 -1
  27. package/dist/inMemory.test.js +0 -74
  28. package/dist/inMemory.test.js.map +0 -1
  29. package/dist/server/index.test.d.ts +0 -2
  30. package/dist/server/index.test.d.ts.map +0 -1
  31. package/dist/server/index.test.js +0 -408
  32. package/dist/server/index.test.js.map +0 -1
  33. package/dist/server/stdio.test.d.ts +0 -2
  34. package/dist/server/stdio.test.d.ts.map +0 -1
  35. package/dist/server/stdio.test.js +0 -87
  36. package/dist/server/stdio.test.js.map +0 -1
  37. package/dist/shared/stdio.test.d.ts +0 -2
  38. package/dist/shared/stdio.test.d.ts.map +0 -1
  39. package/dist/shared/stdio.test.js +0 -27
  40. package/dist/shared/stdio.test.js.map +0 -1
@@ -1,393 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-unused-vars */
2
- /* eslint-disable no-constant-binary-expression */
3
- /* eslint-disable @typescript-eslint/no-unused-expressions */
4
- import { Client } from "./index.js";
5
- import { z } from "zod";
6
- import { RequestSchema, NotificationSchema, ResultSchema, LATEST_PROTOCOL_VERSION, SUPPORTED_PROTOCOL_VERSIONS, InitializeRequestSchema, ListResourcesRequestSchema, ListToolsRequestSchema, CreateMessageRequestSchema, ListRootsRequestSchema, ErrorCode, } from "../types.js";
7
- import { Server } from "../server/index.js";
8
- import { InMemoryTransport } from "../inMemory.js";
9
- test("should initialize with matching protocol version", async () => {
10
- const clientTransport = {
11
- start: jest.fn().mockResolvedValue(undefined),
12
- close: jest.fn().mockResolvedValue(undefined),
13
- send: jest.fn().mockImplementation((message) => {
14
- var _a;
15
- if (message.method === "initialize") {
16
- (_a = clientTransport.onmessage) === null || _a === void 0 ? void 0 : _a.call(clientTransport, {
17
- jsonrpc: "2.0",
18
- id: message.id,
19
- result: {
20
- protocolVersion: LATEST_PROTOCOL_VERSION,
21
- capabilities: {},
22
- serverInfo: {
23
- name: "test",
24
- version: "1.0",
25
- },
26
- },
27
- });
28
- }
29
- return Promise.resolve();
30
- }),
31
- };
32
- const client = new Client({
33
- name: "test client",
34
- version: "1.0",
35
- }, {
36
- capabilities: {
37
- sampling: {},
38
- },
39
- });
40
- await client.connect(clientTransport);
41
- // Should have sent initialize with latest version
42
- expect(clientTransport.send).toHaveBeenCalledWith(expect.objectContaining({
43
- method: "initialize",
44
- params: expect.objectContaining({
45
- protocolVersion: LATEST_PROTOCOL_VERSION,
46
- }),
47
- }));
48
- });
49
- test("should initialize with supported older protocol version", async () => {
50
- const OLD_VERSION = SUPPORTED_PROTOCOL_VERSIONS[1];
51
- const clientTransport = {
52
- start: jest.fn().mockResolvedValue(undefined),
53
- close: jest.fn().mockResolvedValue(undefined),
54
- send: jest.fn().mockImplementation((message) => {
55
- var _a;
56
- if (message.method === "initialize") {
57
- (_a = clientTransport.onmessage) === null || _a === void 0 ? void 0 : _a.call(clientTransport, {
58
- jsonrpc: "2.0",
59
- id: message.id,
60
- result: {
61
- protocolVersion: OLD_VERSION,
62
- capabilities: {},
63
- serverInfo: {
64
- name: "test",
65
- version: "1.0",
66
- },
67
- },
68
- });
69
- }
70
- return Promise.resolve();
71
- }),
72
- };
73
- const client = new Client({
74
- name: "test client",
75
- version: "1.0",
76
- }, {
77
- capabilities: {
78
- sampling: {},
79
- },
80
- });
81
- await client.connect(clientTransport);
82
- // Connection should succeed with the older version
83
- expect(client.getServerVersion()).toEqual({
84
- name: "test",
85
- version: "1.0",
86
- });
87
- });
88
- test("should reject unsupported protocol version", async () => {
89
- const clientTransport = {
90
- start: jest.fn().mockResolvedValue(undefined),
91
- close: jest.fn().mockResolvedValue(undefined),
92
- send: jest.fn().mockImplementation((message) => {
93
- var _a;
94
- if (message.method === "initialize") {
95
- (_a = clientTransport.onmessage) === null || _a === void 0 ? void 0 : _a.call(clientTransport, {
96
- jsonrpc: "2.0",
97
- id: message.id,
98
- result: {
99
- protocolVersion: "invalid-version",
100
- capabilities: {},
101
- serverInfo: {
102
- name: "test",
103
- version: "1.0",
104
- },
105
- },
106
- });
107
- }
108
- return Promise.resolve();
109
- }),
110
- };
111
- const client = new Client({
112
- name: "test client",
113
- version: "1.0",
114
- }, {
115
- capabilities: {
116
- sampling: {},
117
- },
118
- });
119
- await expect(client.connect(clientTransport)).rejects.toThrow("Server's protocol version is not supported: invalid-version");
120
- expect(clientTransport.close).toHaveBeenCalled();
121
- });
122
- test("should respect server capabilities", async () => {
123
- const server = new Server({
124
- name: "test server",
125
- version: "1.0",
126
- }, {
127
- capabilities: {
128
- resources: {},
129
- tools: {},
130
- },
131
- });
132
- server.setRequestHandler(InitializeRequestSchema, (_request) => ({
133
- protocolVersion: LATEST_PROTOCOL_VERSION,
134
- capabilities: {
135
- resources: {},
136
- tools: {},
137
- },
138
- serverInfo: {
139
- name: "test",
140
- version: "1.0",
141
- },
142
- }));
143
- server.setRequestHandler(ListResourcesRequestSchema, () => ({
144
- resources: [],
145
- }));
146
- server.setRequestHandler(ListToolsRequestSchema, () => ({
147
- tools: [],
148
- }));
149
- const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
150
- const client = new Client({
151
- name: "test client",
152
- version: "1.0",
153
- }, {
154
- capabilities: {
155
- sampling: {},
156
- },
157
- enforceStrictCapabilities: true,
158
- });
159
- await Promise.all([
160
- client.connect(clientTransport),
161
- server.connect(serverTransport),
162
- ]);
163
- // Server supports resources and tools, but not prompts
164
- expect(client.getServerCapabilities()).toEqual({
165
- resources: {},
166
- tools: {},
167
- });
168
- // These should work
169
- await expect(client.listResources()).resolves.not.toThrow();
170
- await expect(client.listTools()).resolves.not.toThrow();
171
- // This should throw because prompts are not supported
172
- await expect(client.listPrompts()).rejects.toThrow("Server does not support prompts");
173
- });
174
- test("should respect client notification capabilities", async () => {
175
- const server = new Server({
176
- name: "test server",
177
- version: "1.0",
178
- }, {
179
- capabilities: {},
180
- });
181
- const client = new Client({
182
- name: "test client",
183
- version: "1.0",
184
- }, {
185
- capabilities: {
186
- roots: {
187
- listChanged: true,
188
- },
189
- },
190
- });
191
- const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
192
- await Promise.all([
193
- client.connect(clientTransport),
194
- server.connect(serverTransport),
195
- ]);
196
- // This should work because the client has the roots.listChanged capability
197
- await expect(client.sendRootsListChanged()).resolves.not.toThrow();
198
- // Create a new client without the roots.listChanged capability
199
- const clientWithoutCapability = new Client({
200
- name: "test client without capability",
201
- version: "1.0",
202
- }, {
203
- capabilities: {},
204
- enforceStrictCapabilities: true,
205
- });
206
- await clientWithoutCapability.connect(clientTransport);
207
- // This should throw because the client doesn't have the roots.listChanged capability
208
- await expect(clientWithoutCapability.sendRootsListChanged()).rejects.toThrow(/^Client does not support/);
209
- });
210
- test("should respect server notification capabilities", async () => {
211
- const server = new Server({
212
- name: "test server",
213
- version: "1.0",
214
- }, {
215
- capabilities: {
216
- logging: {},
217
- resources: {
218
- listChanged: true,
219
- },
220
- },
221
- });
222
- const client = new Client({
223
- name: "test client",
224
- version: "1.0",
225
- }, {
226
- capabilities: {},
227
- });
228
- const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
229
- await Promise.all([
230
- client.connect(clientTransport),
231
- server.connect(serverTransport),
232
- ]);
233
- // These should work because the server has the corresponding capabilities
234
- await expect(server.sendLoggingMessage({ level: "info", data: "Test" })).resolves.not.toThrow();
235
- await expect(server.sendResourceListChanged()).resolves.not.toThrow();
236
- // This should throw because the server doesn't have the tools capability
237
- await expect(server.sendToolListChanged()).rejects.toThrow("Server does not support notifying of tool list changes");
238
- });
239
- test("should only allow setRequestHandler for declared capabilities", () => {
240
- const client = new Client({
241
- name: "test client",
242
- version: "1.0",
243
- }, {
244
- capabilities: {
245
- sampling: {},
246
- },
247
- });
248
- // This should work because sampling is a declared capability
249
- expect(() => {
250
- client.setRequestHandler(CreateMessageRequestSchema, () => ({
251
- model: "test-model",
252
- role: "assistant",
253
- content: {
254
- type: "text",
255
- text: "Test response",
256
- },
257
- }));
258
- }).not.toThrow();
259
- // This should throw because roots listing is not a declared capability
260
- expect(() => {
261
- client.setRequestHandler(ListRootsRequestSchema, () => ({}));
262
- }).toThrow("Client does not support roots capability");
263
- });
264
- /*
265
- Test that custom request/notification/result schemas can be used with the Client class.
266
- */
267
- test("should typecheck", () => {
268
- const GetWeatherRequestSchema = RequestSchema.extend({
269
- method: z.literal("weather/get"),
270
- params: z.object({
271
- city: z.string(),
272
- }),
273
- });
274
- const GetForecastRequestSchema = RequestSchema.extend({
275
- method: z.literal("weather/forecast"),
276
- params: z.object({
277
- city: z.string(),
278
- days: z.number(),
279
- }),
280
- });
281
- const WeatherForecastNotificationSchema = NotificationSchema.extend({
282
- method: z.literal("weather/alert"),
283
- params: z.object({
284
- severity: z.enum(["warning", "watch"]),
285
- message: z.string(),
286
- }),
287
- });
288
- const WeatherRequestSchema = GetWeatherRequestSchema.or(GetForecastRequestSchema);
289
- const WeatherNotificationSchema = WeatherForecastNotificationSchema;
290
- const WeatherResultSchema = ResultSchema.extend({
291
- temperature: z.number(),
292
- conditions: z.string(),
293
- });
294
- // Create a typed Client for weather data
295
- const weatherClient = new Client({
296
- name: "WeatherClient",
297
- version: "1.0.0",
298
- }, {
299
- capabilities: {
300
- sampling: {},
301
- },
302
- });
303
- // Typecheck that only valid weather requests/notifications/results are allowed
304
- false &&
305
- weatherClient.request({
306
- method: "weather/get",
307
- params: {
308
- city: "Seattle",
309
- },
310
- }, WeatherResultSchema);
311
- false &&
312
- weatherClient.notification({
313
- method: "weather/alert",
314
- params: {
315
- severity: "warning",
316
- message: "Storm approaching",
317
- },
318
- });
319
- });
320
- test("should handle client cancelling a request", async () => {
321
- const server = new Server({
322
- name: "test server",
323
- version: "1.0",
324
- }, {
325
- capabilities: {
326
- resources: {},
327
- },
328
- });
329
- // Set up server to delay responding to listResources
330
- server.setRequestHandler(ListResourcesRequestSchema, async (request, extra) => {
331
- await new Promise((resolve) => setTimeout(resolve, 1000));
332
- return {
333
- resources: [],
334
- };
335
- });
336
- const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
337
- const client = new Client({
338
- name: "test client",
339
- version: "1.0",
340
- }, {
341
- capabilities: {},
342
- });
343
- await Promise.all([
344
- client.connect(clientTransport),
345
- server.connect(serverTransport),
346
- ]);
347
- // Set up abort controller
348
- const controller = new AbortController();
349
- // Issue request but cancel it immediately
350
- const listResourcesPromise = client.listResources(undefined, {
351
- signal: controller.signal,
352
- });
353
- controller.abort("Cancelled by test");
354
- // Request should be rejected
355
- await expect(listResourcesPromise).rejects.toBe("Cancelled by test");
356
- });
357
- test("should handle request timeout", async () => {
358
- const server = new Server({
359
- name: "test server",
360
- version: "1.0",
361
- }, {
362
- capabilities: {
363
- resources: {},
364
- },
365
- });
366
- // Set up server with a delayed response
367
- server.setRequestHandler(ListResourcesRequestSchema, async (_request, extra) => {
368
- const timer = new Promise((resolve) => {
369
- const timeout = setTimeout(resolve, 100);
370
- extra.signal.addEventListener("abort", () => clearTimeout(timeout));
371
- });
372
- await timer;
373
- return {
374
- resources: [],
375
- };
376
- });
377
- const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
378
- const client = new Client({
379
- name: "test client",
380
- version: "1.0",
381
- }, {
382
- capabilities: {},
383
- });
384
- await Promise.all([
385
- client.connect(clientTransport),
386
- server.connect(serverTransport),
387
- ]);
388
- // Request with 0 msec timeout should fail immediately
389
- await expect(client.listResources(undefined, { timeout: 0 })).rejects.toMatchObject({
390
- code: ErrorCode.RequestTimeout,
391
- });
392
- });
393
- //# sourceMappingURL=index.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/client/index.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=stdio.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stdio.test.d.ts","sourceRoot":"","sources":["../../src/client/stdio.test.ts"],"names":[],"mappings":""}
@@ -1,51 +0,0 @@
1
- import { StdioClientTransport } from "./stdio.js";
2
- const serverParameters = {
3
- command: "/usr/bin/tee",
4
- };
5
- test("should start then close cleanly", async () => {
6
- const client = new StdioClientTransport(serverParameters);
7
- client.onerror = (error) => {
8
- throw error;
9
- };
10
- let didClose = false;
11
- client.onclose = () => {
12
- didClose = true;
13
- };
14
- await client.start();
15
- expect(didClose).toBeFalsy();
16
- await client.close();
17
- expect(didClose).toBeTruthy();
18
- });
19
- test("should read messages", async () => {
20
- const client = new StdioClientTransport(serverParameters);
21
- client.onerror = (error) => {
22
- throw error;
23
- };
24
- const messages = [
25
- {
26
- jsonrpc: "2.0",
27
- id: 1,
28
- method: "ping",
29
- },
30
- {
31
- jsonrpc: "2.0",
32
- method: "notifications/initialized",
33
- },
34
- ];
35
- const readMessages = [];
36
- const finished = new Promise((resolve) => {
37
- client.onmessage = (message) => {
38
- readMessages.push(message);
39
- if (JSON.stringify(message) === JSON.stringify(messages[1])) {
40
- resolve();
41
- }
42
- };
43
- });
44
- await client.start();
45
- await client.send(messages[0]);
46
- await client.send(messages[1]);
47
- await finished;
48
- expect(readMessages).toEqual(messages);
49
- await client.close();
50
- });
51
- //# sourceMappingURL=stdio.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stdio.test.js","sourceRoot":"","sources":["../../src/client/stdio.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAyB,MAAM,YAAY,CAAC;AAEzE,MAAM,gBAAgB,GAA0B;IAC9C,OAAO,EAAE,cAAc;CACxB,CAAC;AAEF,IAAI,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;IACjD,MAAM,MAAM,GAAG,IAAI,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAC1D,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;QACzB,MAAM,KAAK,CAAC;IACd,CAAC,CAAC;IAEF,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,CAAC,OAAO,GAAG,GAAG,EAAE;QACpB,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC,CAAC;IAEF,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;IAC7B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,MAAM,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;IACtC,MAAM,MAAM,GAAG,IAAI,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;IAC1D,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;QACzB,MAAM,KAAK,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAqB;QACjC;YACE,OAAO,EAAE,KAAK;YACd,EAAE,EAAE,CAAC;YACL,MAAM,EAAE,MAAM;SACf;QACD;YACE,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,2BAA2B;SACpC;KACF,CAAC;IAEF,MAAM,YAAY,GAAqB,EAAE,CAAC;IAC1C,MAAM,QAAQ,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAC7C,MAAM,CAAC,SAAS,GAAG,CAAC,OAAO,EAAE,EAAE;YAC7B,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE3B,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACrB,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,QAAQ,CAAC;IACf,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEvC,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;AACvB,CAAC,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=inMemory.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"inMemory.test.d.ts","sourceRoot":"","sources":["../src/inMemory.test.ts"],"names":[],"mappings":""}
@@ -1,74 +0,0 @@
1
- import { InMemoryTransport } from "./inMemory.js";
2
- describe("InMemoryTransport", () => {
3
- let clientTransport;
4
- let serverTransport;
5
- beforeEach(() => {
6
- [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
7
- });
8
- test("should create linked pair", () => {
9
- expect(clientTransport).toBeDefined();
10
- expect(serverTransport).toBeDefined();
11
- });
12
- test("should start without error", async () => {
13
- await expect(clientTransport.start()).resolves.not.toThrow();
14
- await expect(serverTransport.start()).resolves.not.toThrow();
15
- });
16
- test("should send message from client to server", async () => {
17
- const message = {
18
- jsonrpc: "2.0",
19
- method: "test",
20
- id: 1,
21
- };
22
- let receivedMessage;
23
- serverTransport.onmessage = (msg) => {
24
- receivedMessage = msg;
25
- };
26
- await clientTransport.send(message);
27
- expect(receivedMessage).toEqual(message);
28
- });
29
- test("should send message from server to client", async () => {
30
- const message = {
31
- jsonrpc: "2.0",
32
- method: "test",
33
- id: 1,
34
- };
35
- let receivedMessage;
36
- clientTransport.onmessage = (msg) => {
37
- receivedMessage = msg;
38
- };
39
- await serverTransport.send(message);
40
- expect(receivedMessage).toEqual(message);
41
- });
42
- test("should handle close", async () => {
43
- let clientClosed = false;
44
- let serverClosed = false;
45
- clientTransport.onclose = () => {
46
- clientClosed = true;
47
- };
48
- serverTransport.onclose = () => {
49
- serverClosed = true;
50
- };
51
- await clientTransport.close();
52
- expect(clientClosed).toBe(true);
53
- expect(serverClosed).toBe(true);
54
- });
55
- test("should throw error when sending after close", async () => {
56
- await clientTransport.close();
57
- await expect(clientTransport.send({ jsonrpc: "2.0", method: "test", id: 1 })).rejects.toThrow("Not connected");
58
- });
59
- test("should queue messages sent before start", async () => {
60
- const message = {
61
- jsonrpc: "2.0",
62
- method: "test",
63
- id: 1,
64
- };
65
- let receivedMessage;
66
- serverTransport.onmessage = (msg) => {
67
- receivedMessage = msg;
68
- };
69
- await clientTransport.send(message);
70
- await serverTransport.start();
71
- expect(receivedMessage).toEqual(message);
72
- });
73
- });
74
- //# sourceMappingURL=inMemory.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"inMemory.test.js","sourceRoot":"","sources":["../src/inMemory.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../src/server/index.test.ts"],"names":[],"mappings":""}