@frontmcp/sdk 0.3.0 → 0.4.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 (169) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +192 -164
  3. package/package.json +7 -4
  4. package/src/__test-utils__/fixtures/hook.fixtures.d.ts +46 -0
  5. package/src/__test-utils__/fixtures/hook.fixtures.js +114 -0
  6. package/src/__test-utils__/fixtures/hook.fixtures.js.map +1 -0
  7. package/src/__test-utils__/fixtures/index.d.ts +7 -0
  8. package/src/__test-utils__/fixtures/index.js +11 -0
  9. package/src/__test-utils__/fixtures/index.js.map +1 -0
  10. package/src/__test-utils__/fixtures/plugin.fixtures.d.ts +46 -0
  11. package/src/__test-utils__/fixtures/plugin.fixtures.js +127 -0
  12. package/src/__test-utils__/fixtures/plugin.fixtures.js.map +1 -0
  13. package/src/__test-utils__/fixtures/provider.fixtures.d.ts +69 -0
  14. package/src/__test-utils__/fixtures/provider.fixtures.js +131 -0
  15. package/src/__test-utils__/fixtures/provider.fixtures.js.map +1 -0
  16. package/src/__test-utils__/fixtures/scope.fixtures.d.ts +14 -0
  17. package/src/__test-utils__/fixtures/scope.fixtures.js +59 -0
  18. package/src/__test-utils__/fixtures/scope.fixtures.js.map +1 -0
  19. package/src/__test-utils__/fixtures/tool.fixtures.d.ts +36 -0
  20. package/src/__test-utils__/fixtures/tool.fixtures.js +91 -0
  21. package/src/__test-utils__/fixtures/tool.fixtures.js.map +1 -0
  22. package/src/__test-utils__/helpers/assertion.helpers.d.ts +45 -0
  23. package/src/__test-utils__/helpers/assertion.helpers.js +153 -0
  24. package/src/__test-utils__/helpers/assertion.helpers.js.map +1 -0
  25. package/src/__test-utils__/helpers/async.helpers.d.ts +48 -0
  26. package/src/__test-utils__/helpers/async.helpers.js +112 -0
  27. package/src/__test-utils__/helpers/async.helpers.js.map +1 -0
  28. package/src/__test-utils__/helpers/index.d.ts +6 -0
  29. package/src/__test-utils__/helpers/index.js +10 -0
  30. package/src/__test-utils__/helpers/index.js.map +1 -0
  31. package/src/__test-utils__/helpers/setup.helpers.d.ts +54 -0
  32. package/src/__test-utils__/helpers/setup.helpers.js +106 -0
  33. package/src/__test-utils__/helpers/setup.helpers.js.map +1 -0
  34. package/src/__test-utils__/index.d.ts +9 -0
  35. package/src/__test-utils__/index.js +14 -0
  36. package/src/__test-utils__/index.js.map +1 -0
  37. package/src/__test-utils__/mocks/flow-instance.mock.d.ts +50 -0
  38. package/src/__test-utils__/mocks/flow-instance.mock.js +72 -0
  39. package/src/__test-utils__/mocks/flow-instance.mock.js.map +1 -0
  40. package/src/__test-utils__/mocks/hook-registry.mock.d.ts +25 -0
  41. package/src/__test-utils__/mocks/hook-registry.mock.js +65 -0
  42. package/src/__test-utils__/mocks/hook-registry.mock.js.map +1 -0
  43. package/src/__test-utils__/mocks/index.d.ts +8 -0
  44. package/src/__test-utils__/mocks/index.js +12 -0
  45. package/src/__test-utils__/mocks/index.js.map +1 -0
  46. package/src/__test-utils__/mocks/plugin-registry.mock.d.ts +43 -0
  47. package/src/__test-utils__/mocks/plugin-registry.mock.js +70 -0
  48. package/src/__test-utils__/mocks/plugin-registry.mock.js.map +1 -0
  49. package/src/__test-utils__/mocks/provider-registry.mock.d.ts +39 -0
  50. package/src/__test-utils__/mocks/provider-registry.mock.js +72 -0
  51. package/src/__test-utils__/mocks/provider-registry.mock.js.map +1 -0
  52. package/src/__test-utils__/mocks/tool-registry.mock.d.ts +43 -0
  53. package/src/__test-utils__/mocks/tool-registry.mock.js +79 -0
  54. package/src/__test-utils__/mocks/tool-registry.mock.js.map +1 -0
  55. package/src/app/app.utils.js.map +1 -1
  56. package/src/app/instances/app.local.instance.js +8 -11
  57. package/src/app/instances/app.local.instance.js.map +1 -1
  58. package/src/auth/auth.registry.d.ts +2 -2
  59. package/src/auth/auth.registry.js +3 -3
  60. package/src/auth/auth.registry.js.map +1 -1
  61. package/src/auth/flows/oauth.authorize.flow.d.ts +8 -8
  62. package/src/auth/flows/oauth.register.flow.d.ts +4 -4
  63. package/src/auth/flows/oauth.token.flow.d.ts +4 -4
  64. package/src/auth/flows/well-known.jwks.flow.d.ts +12 -12
  65. package/src/auth/flows/well-known.oauth-authorization-server.flow.d.ts +8 -8
  66. package/src/auth/flows/well-known.prm.flow.d.ts +4 -4
  67. package/src/auth/instances/instance.local-primary-auth.d.ts +3 -2
  68. package/src/auth/instances/instance.local-primary-auth.js +4 -2
  69. package/src/auth/instances/instance.local-primary-auth.js.map +1 -1
  70. package/src/auth/instances/instance.remote-primary-auth.d.ts +3 -2
  71. package/src/auth/instances/instance.remote-primary-auth.js +3 -1
  72. package/src/auth/instances/instance.remote-primary-auth.js.map +1 -1
  73. package/src/auth/jwks/jwks.service.js +0 -1
  74. package/src/auth/jwks/jwks.service.js.map +1 -1
  75. package/src/common/decorators/tool.decorator.d.ts +97 -36
  76. package/src/common/decorators/tool.decorator.js +0 -1
  77. package/src/common/decorators/tool.decorator.js.map +1 -1
  78. package/src/common/entries/scope.entry.d.ts +1 -0
  79. package/src/common/entries/scope.entry.js +6 -0
  80. package/src/common/entries/scope.entry.js.map +1 -1
  81. package/src/common/entries/tool.entry.d.ts +54 -11
  82. package/src/common/entries/tool.entry.js +19 -0
  83. package/src/common/entries/tool.entry.js.map +1 -1
  84. package/src/common/interfaces/internal/registry.interface.d.ts +10 -2
  85. package/src/common/interfaces/internal/registry.interface.js.map +1 -1
  86. package/src/common/interfaces/plugin.interface.d.ts +1 -1
  87. package/src/common/interfaces/plugin.interface.js.map +1 -1
  88. package/src/common/interfaces/tool.interface.d.ts +12 -7
  89. package/src/common/interfaces/tool.interface.js +1 -1
  90. package/src/common/interfaces/tool.interface.js.map +1 -1
  91. package/src/common/metadata/front-mcp.metadata.d.ts +145 -145
  92. package/src/common/metadata/hook.metadata.d.ts +4 -2
  93. package/src/common/metadata/hook.metadata.js.map +1 -1
  94. package/src/common/metadata/prompt.metadata.d.ts +28 -28
  95. package/src/common/metadata/prompt.metadata.js.map +1 -1
  96. package/src/common/metadata/resource.metadata.d.ts +54 -54
  97. package/src/common/metadata/tool.metadata.d.ts +190 -7
  98. package/src/common/metadata/tool.metadata.js +41 -6
  99. package/src/common/metadata/tool.metadata.js.map +1 -1
  100. package/src/common/records/scope.record.d.ts +2 -2
  101. package/src/common/records/scope.record.js.map +1 -1
  102. package/src/common/schemas/http-output.schema.d.ts +106 -106
  103. package/src/common/tokens/tool.tokens.js.map +1 -1
  104. package/src/common/types/options/logging.options.d.ts +1 -2
  105. package/src/common/types/options/logging.options.js +1 -9
  106. package/src/common/types/options/logging.options.js.map +1 -1
  107. package/src/common/types/options/server-info.options.d.ts +19 -19
  108. package/src/errors/error-handler.d.ts +65 -0
  109. package/src/errors/error-handler.js +107 -0
  110. package/src/errors/error-handler.js.map +1 -0
  111. package/src/errors/index.d.ts +2 -0
  112. package/src/errors/index.js +26 -0
  113. package/src/errors/index.js.map +1 -0
  114. package/src/errors/mcp.error.d.ts +156 -0
  115. package/src/errors/mcp.error.js +243 -0
  116. package/src/errors/mcp.error.js.map +1 -0
  117. package/src/flows/flow.instance.js +7 -6
  118. package/src/flows/flow.instance.js.map +1 -1
  119. package/src/flows/flow.registry.js +1 -1
  120. package/src/flows/flow.registry.js.map +1 -1
  121. package/src/front-mcp/front-mcp.providers.d.ts +20 -20
  122. package/src/hooks/hook.registry.d.ts +5 -3
  123. package/src/hooks/hook.registry.js +13 -1
  124. package/src/hooks/hook.registry.js.map +1 -1
  125. package/src/plugin/plugin.registry.d.ts +7 -2
  126. package/src/plugin/plugin.registry.js +23 -11
  127. package/src/plugin/plugin.registry.js.map +1 -1
  128. package/src/prompt/prompt.registry.js +1 -0
  129. package/src/prompt/prompt.registry.js.map +1 -1
  130. package/src/resource/resource.registry.js +1 -0
  131. package/src/resource/resource.registry.js.map +1 -1
  132. package/src/scope/scope.instance.js +8 -2
  133. package/src/scope/scope.instance.js.map +1 -1
  134. package/src/scope/scope.registry.js +3 -2
  135. package/src/scope/scope.registry.js.map +1 -1
  136. package/src/scope/scope.utils.js +6 -4
  137. package/src/scope/scope.utils.js.map +1 -1
  138. package/src/store/adapters/store.memory.adapter.js +3 -1
  139. package/src/store/adapters/store.memory.adapter.js.map +1 -1
  140. package/src/tool/flows/call-tool.flow.d.ts +1012 -676
  141. package/src/tool/flows/call-tool.flow.js +94 -61
  142. package/src/tool/flows/call-tool.flow.js.map +1 -1
  143. package/src/tool/flows/tools-list.flow.d.ts +347 -590
  144. package/src/tool/flows/tools-list.flow.js +76 -49
  145. package/src/tool/flows/tools-list.flow.js.map +1 -1
  146. package/src/tool/tool.instance.d.ts +27 -8
  147. package/src/tool/tool.instance.js +40 -5
  148. package/src/tool/tool.instance.js.map +1 -1
  149. package/src/tool/tool.registry.js +19 -21
  150. package/src/tool/tool.registry.js.map +1 -1
  151. package/src/tool/tool.utils.d.ts +3 -2
  152. package/src/tool/tool.utils.js +377 -14
  153. package/src/tool/tool.utils.js.map +1 -1
  154. package/src/transport/adapters/transport.sse.adapter.js +2 -1
  155. package/src/transport/adapters/transport.sse.adapter.js.map +1 -1
  156. package/src/transport/adapters/transport.streamable-http.adapter.js.map +1 -1
  157. package/src/transport/flows/handle.sse.flow.js +6 -13
  158. package/src/transport/flows/handle.sse.flow.js.map +1 -1
  159. package/src/transport/flows/handle.streamable-http.flow.js +1 -0
  160. package/src/transport/flows/handle.streamable-http.flow.js.map +1 -1
  161. package/src/transport/mcp-handlers/call-tool-request.handler.d.ts +1 -1
  162. package/src/transport/mcp-handlers/call-tool-request.handler.js +10 -5
  163. package/src/transport/mcp-handlers/call-tool-request.handler.js.map +1 -1
  164. package/src/transport/mcp-handlers/index.d.ts +151 -268
  165. package/src/transport/mcp-handlers/list-tools-request.handler.d.ts +124 -216
  166. package/src/transport/transport.local.js +1 -0
  167. package/src/transport/transport.local.js.map +1 -1
  168. package/src/utils/string.utils.js +1 -1
  169. package/src/utils/string.utils.js.map +1 -1
@@ -1,32 +1,26 @@
1
1
  import { McpHandler, McpHandlerOptions } from './mcp-handlers.types';
2
2
  export declare function createMcpHandlers(options: McpHandlerOptions): (McpHandler<{
3
3
  params: {
4
- [x: string]: unknown;
5
4
  protocolVersion: string;
6
5
  capabilities: {
7
- [x: string]: unknown;
8
6
  experimental?: {
9
- [x: string]: unknown;
10
- } | undefined;
11
- sampling?: {
12
- [x: string]: unknown;
7
+ [x: string]: object;
13
8
  } | undefined;
9
+ sampling?: object | undefined | undefined;
14
10
  elicitation?: {
15
11
  [x: string]: unknown;
12
+ applyDefaults?: boolean | undefined | undefined;
16
13
  } | undefined;
17
14
  roots?: {
18
- [x: string]: unknown;
19
- listChanged?: boolean | undefined;
15
+ listChanged?: boolean | undefined | undefined;
20
16
  } | undefined;
21
17
  };
22
18
  clientInfo: {
23
- [x: string]: unknown;
24
19
  name: string;
25
20
  version: string;
26
21
  icons?: {
27
- [x: string]: unknown;
28
22
  src: string;
29
- mimeType?: string | undefined;
23
+ mimeType?: string | undefined | undefined;
30
24
  sizes?: string[] | undefined;
31
25
  }[] | undefined;
32
26
  title?: string | undefined | undefined;
@@ -42,42 +36,32 @@ export declare function createMcpHandlers(options: McpHandlerOptions): (McpHandl
42
36
  [x: string]: unknown;
43
37
  protocolVersion: string;
44
38
  capabilities: {
45
- [x: string]: unknown;
46
- tools?: {
47
- [x: string]: unknown;
48
- listChanged?: boolean | undefined;
49
- } | undefined;
50
- resources?: {
51
- [x: string]: unknown;
52
- subscribe?: boolean | undefined;
53
- listChanged?: boolean | undefined;
39
+ experimental?: {
40
+ [x: string]: object;
54
41
  } | undefined;
42
+ logging?: object | undefined | undefined;
43
+ completions?: object | undefined | undefined;
55
44
  prompts?: {
56
- [x: string]: unknown;
57
- listChanged?: boolean | undefined;
58
- } | undefined;
59
- logging?: {
60
- [x: string]: unknown;
45
+ listChanged?: boolean | undefined | undefined;
61
46
  } | undefined;
62
- experimental?: {
63
- [x: string]: unknown;
47
+ resources?: {
48
+ listChanged?: boolean | undefined | undefined;
49
+ subscribe?: boolean | undefined | undefined;
64
50
  } | undefined;
65
- completions?: {
66
- [x: string]: unknown;
51
+ tools?: {
52
+ listChanged?: boolean | undefined | undefined;
67
53
  } | undefined;
68
54
  };
69
55
  serverInfo: {
70
- [x: string]: unknown;
71
56
  name: string;
72
57
  version: string;
73
- title?: string | undefined;
74
58
  icons?: {
75
- [x: string]: unknown;
76
59
  src: string;
77
- mimeType?: string | undefined;
60
+ mimeType?: string | undefined | undefined;
78
61
  sizes?: string[] | undefined;
79
62
  }[] | undefined;
80
- websiteUrl?: string | undefined;
63
+ title?: string | undefined | undefined;
64
+ websiteUrl?: string | undefined | undefined;
81
65
  };
82
66
  _meta?: {
83
67
  [x: string]: unknown;
@@ -144,65 +128,44 @@ export declare function createMcpHandlers(options: McpHandlerOptions): (McpHandl
144
128
  }, import("zod").ZodTypeAny, "passthrough">>>;
145
129
  }, {
146
130
  cursor: import("zod").ZodOptional<import("zod").ZodString>;
147
- }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
148
- _meta: import("zod").ZodOptional<import("zod").ZodObject<{
149
- progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
150
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
151
- progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
152
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
131
+ }>, "strip", import("zod").ZodTypeAny, {
132
+ _meta?: import("zod").objectOutputType<{
153
133
  progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
154
- }, import("zod").ZodTypeAny, "passthrough">>>;
134
+ }, import("zod").ZodTypeAny, "passthrough"> | undefined;
135
+ cursor?: string | undefined;
155
136
  }, {
156
- cursor: import("zod").ZodOptional<import("zod").ZodString>;
157
- }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<import("zod").objectUtil.extendShape<{
158
- _meta: import("zod").ZodOptional<import("zod").ZodObject<{
159
- progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
160
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
161
- progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
162
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
137
+ _meta?: import("zod").objectInputType<{
163
138
  progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
164
- }, import("zod").ZodTypeAny, "passthrough">>>;
165
- }, {
166
- cursor: import("zod").ZodOptional<import("zod").ZodString>;
167
- }>, import("zod").ZodTypeAny, "passthrough">>>;
139
+ }, import("zod").ZodTypeAny, "passthrough"> | undefined;
140
+ cursor?: string | undefined;
141
+ }>>;
168
142
  } & {
169
143
  method: import("zod").ZodLiteral<"tools/list">;
170
144
  }, "strip", import("zod").ZodTypeAny, {
171
145
  method: "tools/list";
172
- params?: import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
173
- _meta: import("zod").ZodOptional<import("zod").ZodObject<{
174
- progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
175
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
176
- progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
177
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
146
+ params?: {
147
+ _meta?: import("zod").objectOutputType<{
178
148
  progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
179
- }, import("zod").ZodTypeAny, "passthrough">>>;
180
- }, {
181
- cursor: import("zod").ZodOptional<import("zod").ZodString>;
182
- }>, import("zod").ZodTypeAny, "passthrough"> | undefined;
149
+ }, import("zod").ZodTypeAny, "passthrough"> | undefined;
150
+ cursor?: string | undefined;
151
+ } | undefined;
183
152
  }, {
184
153
  method: "tools/list";
185
- params?: import("zod").objectInputType<import("zod").objectUtil.extendShape<{
186
- _meta: import("zod").ZodOptional<import("zod").ZodObject<{
187
- progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
188
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
189
- progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
190
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
154
+ params?: {
155
+ _meta?: import("zod").objectInputType<{
191
156
  progressToken: import("zod").ZodOptional<import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodNumber]>>;
192
- }, import("zod").ZodTypeAny, "passthrough">>>;
193
- }, {
194
- cursor: import("zod").ZodOptional<import("zod").ZodString>;
195
- }>, import("zod").ZodTypeAny, "passthrough"> | undefined;
157
+ }, import("zod").ZodTypeAny, "passthrough"> | undefined;
158
+ cursor?: string | undefined;
159
+ } | undefined;
196
160
  }>;
197
161
  handler: (request: import("@modelcontextprotocol/sdk/types.js").ListToolsRequest, ctx: import("./mcp-handlers.types").McpRequestHandler<{
198
162
  method: "tools/list";
199
163
  params?: {
200
- [x: string]: unknown;
201
164
  _meta?: {
202
165
  [x: string]: unknown;
203
166
  progressToken?: string | number | undefined;
204
167
  } | undefined;
205
- cursor?: string | undefined;
168
+ cursor?: string | undefined | undefined;
206
169
  } | undefined;
207
170
  }, {
208
171
  method: string;
@@ -213,7 +176,7 @@ export declare function createMcpHandlers(options: McpHandlerOptions): (McpHandl
213
176
  } | undefined;
214
177
  } | undefined;
215
178
  }>) => Promise<import("zod").objectOutputType<{
216
- _meta: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
179
+ _meta: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
217
180
  } & {
218
181
  nextCursor: import("zod").ZodOptional<import("zod").ZodString>;
219
182
  } & {
@@ -224,199 +187,127 @@ export declare function createMcpHandlers(options: McpHandlerOptions): (McpHandl
224
187
  description: import("zod").ZodOptional<import("zod").ZodString>;
225
188
  inputSchema: import("zod").ZodObject<{
226
189
  type: import("zod").ZodLiteral<"object">;
227
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
228
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
229
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
230
- type: import("zod").ZodLiteral<"object">;
231
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
232
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
233
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
234
- type: import("zod").ZodLiteral<"object">;
235
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
190
+ properties: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodType<object, import("zod").ZodTypeDef, object>>>;
236
191
  required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
237
- }, import("zod").ZodTypeAny, "passthrough">>;
192
+ }, "strip", import("zod").ZodTypeAny, {
193
+ type: "object";
194
+ required?: string[] | undefined;
195
+ properties?: Record<string, object> | undefined;
196
+ }, {
197
+ type: "object";
198
+ required?: string[] | undefined;
199
+ properties?: Record<string, object> | undefined;
200
+ }>;
238
201
  outputSchema: import("zod").ZodOptional<import("zod").ZodObject<{
239
202
  type: import("zod").ZodLiteral<"object">;
240
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
241
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
242
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
243
- type: import("zod").ZodLiteral<"object">;
244
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
245
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
246
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
247
- type: import("zod").ZodLiteral<"object">;
248
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
203
+ properties: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodType<object, import("zod").ZodTypeDef, object>>>;
249
204
  required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
250
- }, import("zod").ZodTypeAny, "passthrough">>>;
205
+ additionalProperties: import("zod").ZodOptional<import("zod").ZodBoolean>;
206
+ }, "strip", import("zod").ZodTypeAny, {
207
+ type: "object";
208
+ required?: string[] | undefined;
209
+ properties?: Record<string, object> | undefined;
210
+ additionalProperties?: boolean | undefined;
211
+ }, {
212
+ type: "object";
213
+ required?: string[] | undefined;
214
+ properties?: Record<string, object> | undefined;
215
+ additionalProperties?: boolean | undefined;
216
+ }>>;
251
217
  annotations: import("zod").ZodOptional<import("zod").ZodObject<{
252
218
  title: import("zod").ZodOptional<import("zod").ZodString>;
253
219
  readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
254
220
  destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
255
221
  idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
256
222
  openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
257
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
258
- title: import("zod").ZodOptional<import("zod").ZodString>;
259
- readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
260
- destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
261
- idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
262
- openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
263
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
264
- title: import("zod").ZodOptional<import("zod").ZodString>;
265
- readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
266
- destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
267
- idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
268
- openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
269
- }, import("zod").ZodTypeAny, "passthrough">>>;
270
- _meta: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
223
+ }, "strip", import("zod").ZodTypeAny, {
224
+ title?: string | undefined;
225
+ readOnlyHint?: boolean | undefined;
226
+ destructiveHint?: boolean | undefined;
227
+ idempotentHint?: boolean | undefined;
228
+ openWorldHint?: boolean | undefined;
229
+ }, {
230
+ title?: string | undefined;
231
+ readOnlyHint?: boolean | undefined;
232
+ destructiveHint?: boolean | undefined;
233
+ idempotentHint?: boolean | undefined;
234
+ openWorldHint?: boolean | undefined;
235
+ }>>;
236
+ _meta: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
271
237
  }>, {
272
238
  icons: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
273
239
  src: import("zod").ZodString;
274
240
  mimeType: import("zod").ZodOptional<import("zod").ZodString>;
275
241
  sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
276
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
277
- src: import("zod").ZodString;
278
- mimeType: import("zod").ZodOptional<import("zod").ZodString>;
279
- sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
280
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
281
- src: import("zod").ZodString;
282
- mimeType: import("zod").ZodOptional<import("zod").ZodString>;
283
- sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
284
- }, import("zod").ZodTypeAny, "passthrough">>, "many">>;
285
- }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<import("zod").objectUtil.extendShape<import("zod").objectUtil.extendShape<{
286
- name: import("zod").ZodString;
287
- title: import("zod").ZodOptional<import("zod").ZodString>;
288
- }, {
289
- description: import("zod").ZodOptional<import("zod").ZodString>;
290
- inputSchema: import("zod").ZodObject<{
291
- type: import("zod").ZodLiteral<"object">;
292
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
293
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
294
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
295
- type: import("zod").ZodLiteral<"object">;
296
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
297
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
298
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
299
- type: import("zod").ZodLiteral<"object">;
300
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
301
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
302
- }, import("zod").ZodTypeAny, "passthrough">>;
303
- outputSchema: import("zod").ZodOptional<import("zod").ZodObject<{
304
- type: import("zod").ZodLiteral<"object">;
305
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
306
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
307
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
308
- type: import("zod").ZodLiteral<"object">;
309
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
310
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
311
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
312
- type: import("zod").ZodLiteral<"object">;
313
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
314
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
315
- }, import("zod").ZodTypeAny, "passthrough">>>;
316
- annotations: import("zod").ZodOptional<import("zod").ZodObject<{
317
- title: import("zod").ZodOptional<import("zod").ZodString>;
318
- readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
319
- destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
320
- idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
321
- openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
322
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
323
- title: import("zod").ZodOptional<import("zod").ZodString>;
324
- readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
325
- destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
326
- idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
327
- openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
328
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
329
- title: import("zod").ZodOptional<import("zod").ZodString>;
330
- readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
331
- destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
332
- idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
333
- openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
334
- }, import("zod").ZodTypeAny, "passthrough">>>;
335
- _meta: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
336
- }>, {
337
- icons: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
338
- src: import("zod").ZodString;
339
- mimeType: import("zod").ZodOptional<import("zod").ZodString>;
340
- sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
341
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
342
- src: import("zod").ZodString;
343
- mimeType: import("zod").ZodOptional<import("zod").ZodString>;
344
- sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
345
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
346
- src: import("zod").ZodString;
347
- mimeType: import("zod").ZodOptional<import("zod").ZodString>;
348
- sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
349
- }, import("zod").ZodTypeAny, "passthrough">>, "many">>;
350
- }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<import("zod").objectUtil.extendShape<import("zod").objectUtil.extendShape<{
351
- name: import("zod").ZodString;
352
- title: import("zod").ZodOptional<import("zod").ZodString>;
242
+ }, "strip", import("zod").ZodTypeAny, {
243
+ src: string;
244
+ mimeType?: string | undefined;
245
+ sizes?: string[] | undefined;
246
+ }, {
247
+ src: string;
248
+ mimeType?: string | undefined;
249
+ sizes?: string[] | undefined;
250
+ }>, "many">>;
251
+ }>, "strip", import("zod").ZodTypeAny, {
252
+ name: string;
253
+ inputSchema: {
254
+ type: "object";
255
+ required?: string[] | undefined;
256
+ properties?: Record<string, object> | undefined;
257
+ };
258
+ _meta?: Record<string, unknown> | undefined;
259
+ icons?: {
260
+ src: string;
261
+ mimeType?: string | undefined;
262
+ sizes?: string[] | undefined;
263
+ }[] | undefined;
264
+ title?: string | undefined;
265
+ description?: string | undefined;
266
+ outputSchema?: {
267
+ type: "object";
268
+ required?: string[] | undefined;
269
+ properties?: Record<string, object> | undefined;
270
+ additionalProperties?: boolean | undefined;
271
+ } | undefined;
272
+ annotations?: {
273
+ title?: string | undefined;
274
+ readOnlyHint?: boolean | undefined;
275
+ destructiveHint?: boolean | undefined;
276
+ idempotentHint?: boolean | undefined;
277
+ openWorldHint?: boolean | undefined;
278
+ } | undefined;
353
279
  }, {
354
- description: import("zod").ZodOptional<import("zod").ZodString>;
355
- inputSchema: import("zod").ZodObject<{
356
- type: import("zod").ZodLiteral<"object">;
357
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
358
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
359
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
360
- type: import("zod").ZodLiteral<"object">;
361
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
362
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
363
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
364
- type: import("zod").ZodLiteral<"object">;
365
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
366
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
367
- }, import("zod").ZodTypeAny, "passthrough">>;
368
- outputSchema: import("zod").ZodOptional<import("zod").ZodObject<{
369
- type: import("zod").ZodLiteral<"object">;
370
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
371
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
372
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
373
- type: import("zod").ZodLiteral<"object">;
374
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
375
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
376
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
377
- type: import("zod").ZodLiteral<"object">;
378
- properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
379
- required: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
380
- }, import("zod").ZodTypeAny, "passthrough">>>;
381
- annotations: import("zod").ZodOptional<import("zod").ZodObject<{
382
- title: import("zod").ZodOptional<import("zod").ZodString>;
383
- readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
384
- destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
385
- idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
386
- openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
387
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
388
- title: import("zod").ZodOptional<import("zod").ZodString>;
389
- readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
390
- destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
391
- idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
392
- openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
393
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
394
- title: import("zod").ZodOptional<import("zod").ZodString>;
395
- readOnlyHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
396
- destructiveHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
397
- idempotentHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
398
- openWorldHint: import("zod").ZodOptional<import("zod").ZodBoolean>;
399
- }, import("zod").ZodTypeAny, "passthrough">>>;
400
- _meta: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
401
- }>, {
402
- icons: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
403
- src: import("zod").ZodString;
404
- mimeType: import("zod").ZodOptional<import("zod").ZodString>;
405
- sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
406
- }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
407
- src: import("zod").ZodString;
408
- mimeType: import("zod").ZodOptional<import("zod").ZodString>;
409
- sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
410
- }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
411
- src: import("zod").ZodString;
412
- mimeType: import("zod").ZodOptional<import("zod").ZodString>;
413
- sizes: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
414
- }, import("zod").ZodTypeAny, "passthrough">>, "many">>;
415
- }>, import("zod").ZodTypeAny, "passthrough">>, "many">;
280
+ name: string;
281
+ inputSchema: {
282
+ type: "object";
283
+ required?: string[] | undefined;
284
+ properties?: Record<string, object> | undefined;
285
+ };
286
+ _meta?: Record<string, unknown> | undefined;
287
+ icons?: {
288
+ src: string;
289
+ mimeType?: string | undefined;
290
+ sizes?: string[] | undefined;
291
+ }[] | undefined;
292
+ title?: string | undefined;
293
+ description?: string | undefined;
294
+ outputSchema?: {
295
+ type: "object";
296
+ required?: string[] | undefined;
297
+ properties?: Record<string, object> | undefined;
298
+ additionalProperties?: boolean | undefined;
299
+ } | undefined;
300
+ annotations?: {
301
+ title?: string | undefined;
302
+ readOnlyHint?: boolean | undefined;
303
+ destructiveHint?: boolean | undefined;
304
+ idempotentHint?: boolean | undefined;
305
+ openWorldHint?: boolean | undefined;
306
+ } | undefined;
307
+ }>, "many">;
416
308
  }, import("zod").ZodTypeAny, "passthrough">>;
417
309
  } | McpHandler<{
418
310
  params: {
419
- [x: string]: unknown;
420
311
  name: string;
421
312
  _meta?: {
422
313
  [x: string]: unknown;
@@ -430,64 +321,56 @@ export declare function createMcpHandlers(options: McpHandlerOptions): (McpHandl
430
321
  }, {
431
322
  [x: string]: unknown;
432
323
  content: ({
433
- [x: string]: unknown;
434
324
  type: "text";
435
325
  text: string;
436
326
  _meta?: {
437
327
  [x: string]: unknown;
438
328
  } | undefined;
439
329
  } | {
440
- [x: string]: unknown;
441
330
  type: "image";
442
- mimeType: string;
443
331
  data: string;
332
+ mimeType: string;
444
333
  _meta?: {
445
334
  [x: string]: unknown;
446
335
  } | undefined;
447
336
  } | {
448
- [x: string]: unknown;
449
337
  type: "audio";
450
- mimeType: string;
451
338
  data: string;
339
+ mimeType: string;
452
340
  _meta?: {
453
341
  [x: string]: unknown;
454
342
  } | undefined;
455
343
  } | {
456
- [x: string]: unknown;
457
344
  type: "resource_link";
458
345
  name: string;
459
346
  uri: string;
460
- description?: string | undefined;
461
- title?: string | undefined;
462
- mimeType?: string | undefined;
463
- icons?: {
347
+ _meta?: {
464
348
  [x: string]: unknown;
349
+ } | undefined;
350
+ mimeType?: string | undefined | undefined;
351
+ icons?: {
465
352
  src: string;
466
- mimeType?: string | undefined;
353
+ mimeType?: string | undefined | undefined;
467
354
  sizes?: string[] | undefined;
468
355
  }[] | undefined;
469
- _meta?: {
470
- [x: string]: unknown;
471
- } | undefined;
356
+ title?: string | undefined | undefined;
357
+ description?: string | undefined | undefined;
472
358
  } | {
473
- [x: string]: unknown;
474
359
  type: "resource";
475
360
  resource: {
476
- [x: string]: unknown;
477
361
  uri: string;
478
362
  text: string;
479
- mimeType?: string | undefined;
480
363
  _meta?: {
481
364
  [x: string]: unknown;
482
365
  } | undefined;
366
+ mimeType?: string | undefined | undefined;
483
367
  } | {
484
- [x: string]: unknown;
485
368
  uri: string;
486
369
  blob: string;
487
- mimeType?: string | undefined;
488
370
  _meta?: {
489
371
  [x: string]: unknown;
490
372
  } | undefined;
373
+ mimeType?: string | undefined | undefined;
491
374
  };
492
375
  _meta?: {
493
376
  [x: string]: unknown;