@kya-os/contracts 1.3.2 → 1.3.4
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/package.json +28 -5
- package/README.md +0 -130
- package/dist/cli.d.ts +0 -378
- package/dist/cli.js +0 -116
- package/dist/delegation/constraints.d.ts +0 -992
- package/dist/delegation/constraints.js +0 -210
- package/dist/delegation/index.d.ts +0 -8
- package/dist/delegation/index.js +0 -24
- package/dist/delegation/schemas.d.ts +0 -8382
- package/dist/delegation/schemas.js +0 -476
- package/dist/did/index.d.ts +0 -9
- package/dist/did/index.js +0 -25
- package/dist/did/resolve-contract.d.ts +0 -220
- package/dist/did/resolve-contract.js +0 -32
- package/dist/did/schemas.d.ts +0 -113
- package/dist/did/schemas.js +0 -173
- package/dist/did/types.d.ts +0 -164
- package/dist/did/types.js +0 -71
- package/dist/env/constants.d.ts +0 -58
- package/dist/env/constants.js +0 -60
- package/dist/env/index.d.ts +0 -5
- package/dist/env/index.js +0 -21
- package/dist/handshake.d.ts +0 -159
- package/dist/handshake.js +0 -58
- package/dist/index.d.ts +0 -26
- package/dist/index.js +0 -53
- package/dist/proof/index.d.ts +0 -9
- package/dist/proof/index.js +0 -25
- package/dist/proof/proof-record.d.ts +0 -838
- package/dist/proof/proof-record.js +0 -134
- package/dist/proof/signing-spec.d.ts +0 -147
- package/dist/proof/signing-spec.js +0 -123
- package/dist/proof.d.ts +0 -400
- package/dist/proof.js +0 -82
- package/dist/registry.d.ts +0 -343
- package/dist/registry.js +0 -119
- package/dist/runtime/errors.d.ts +0 -348
- package/dist/runtime/errors.js +0 -120
- package/dist/runtime/headers.d.ts +0 -84
- package/dist/runtime/headers.js +0 -82
- package/dist/runtime/index.d.ts +0 -6
- package/dist/runtime/index.js +0 -22
- package/dist/test.d.ts +0 -252
- package/dist/test.js +0 -120
- package/dist/tlkrc/index.d.ts +0 -5
- package/dist/tlkrc/index.js +0 -21
- package/dist/tlkrc/rotation.d.ts +0 -246
- package/dist/tlkrc/rotation.js +0 -127
- package/dist/utils/validation.d.ts +0 -31
- package/dist/utils/validation.js +0 -70
- package/dist/vc/index.d.ts +0 -8
- package/dist/vc/index.js +0 -24
- package/dist/vc/schemas.d.ts +0 -2484
- package/dist/vc/schemas.js +0 -225
- package/dist/vc/statuslist.d.ts +0 -494
- package/dist/vc/statuslist.js +0 -133
- package/dist/verifier.d.ts +0 -206
- package/dist/verifier.js +0 -84
package/dist/runtime/errors.d.ts
DELETED
|
@@ -1,348 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Runtime Error Contracts
|
|
3
|
-
*
|
|
4
|
-
* Error types and schemas for runtime errors, especially authorization errors
|
|
5
|
-
*
|
|
6
|
-
* Related Spec: MCP-I §6
|
|
7
|
-
* Python Reference: Core-Documentation.md
|
|
8
|
-
*/
|
|
9
|
-
import { z } from 'zod';
|
|
10
|
-
/**
|
|
11
|
-
* Display hint types for authorization UI
|
|
12
|
-
*/
|
|
13
|
-
export declare const DisplayHintSchema: z.ZodEnum<["link", "qr", "code"]>;
|
|
14
|
-
export type DisplayHint = z.infer<typeof DisplayHintSchema>;
|
|
15
|
-
/**
|
|
16
|
-
* Display options for authorization flow
|
|
17
|
-
*/
|
|
18
|
-
export declare const AuthorizationDisplaySchema: z.ZodObject<{
|
|
19
|
-
/** Optional title for the authorization screen */
|
|
20
|
-
title: z.ZodOptional<z.ZodString>;
|
|
21
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
22
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
23
|
-
/** Optional short authorization code */
|
|
24
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
25
|
-
/** Optional QR code URL */
|
|
26
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
27
|
-
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
28
|
-
/** Optional title for the authorization screen */
|
|
29
|
-
title: z.ZodOptional<z.ZodString>;
|
|
30
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
31
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
32
|
-
/** Optional short authorization code */
|
|
33
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
34
|
-
/** Optional QR code URL */
|
|
35
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
36
|
-
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
37
|
-
/** Optional title for the authorization screen */
|
|
38
|
-
title: z.ZodOptional<z.ZodString>;
|
|
39
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
40
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
41
|
-
/** Optional short authorization code */
|
|
42
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
43
|
-
/** Optional QR code URL */
|
|
44
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
45
|
-
}, z.ZodTypeAny, "passthrough">>;
|
|
46
|
-
export type AuthorizationDisplay = z.infer<typeof AuthorizationDisplaySchema>;
|
|
47
|
-
/**
|
|
48
|
-
* NeedsAuthorizationError Schema
|
|
49
|
-
*
|
|
50
|
-
* Error returned when a request requires authorization.
|
|
51
|
-
* Includes a resumeToken and authorizationUrl for the authorization flow.
|
|
52
|
-
*/
|
|
53
|
-
export declare const NeedsAuthorizationErrorSchema: z.ZodObject<{
|
|
54
|
-
/** Error code */
|
|
55
|
-
error: z.ZodLiteral<"needs_authorization">;
|
|
56
|
-
/** Human-readable error message */
|
|
57
|
-
message: z.ZodString;
|
|
58
|
-
/** URL for the user to authorize (includes resume token) */
|
|
59
|
-
authorizationUrl: z.ZodString;
|
|
60
|
-
/** Short-lived resume token for continuing after authorization */
|
|
61
|
-
resumeToken: z.ZodString;
|
|
62
|
-
/** Expiration timestamp for the resume token (milliseconds since epoch) */
|
|
63
|
-
expiresAt: z.ZodNumber;
|
|
64
|
-
/** Required scopes for authorization */
|
|
65
|
-
scopes: z.ZodArray<z.ZodString, "many">;
|
|
66
|
-
/** Optional display configuration for authorization UI */
|
|
67
|
-
display: z.ZodOptional<z.ZodObject<{
|
|
68
|
-
/** Optional title for the authorization screen */
|
|
69
|
-
title: z.ZodOptional<z.ZodString>;
|
|
70
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
71
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
72
|
-
/** Optional short authorization code */
|
|
73
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
74
|
-
/** Optional QR code URL */
|
|
75
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
76
|
-
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
77
|
-
/** Optional title for the authorization screen */
|
|
78
|
-
title: z.ZodOptional<z.ZodString>;
|
|
79
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
80
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
81
|
-
/** Optional short authorization code */
|
|
82
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
83
|
-
/** Optional QR code URL */
|
|
84
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
85
|
-
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
86
|
-
/** Optional title for the authorization screen */
|
|
87
|
-
title: z.ZodOptional<z.ZodString>;
|
|
88
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
89
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
90
|
-
/** Optional short authorization code */
|
|
91
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
92
|
-
/** Optional QR code URL */
|
|
93
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
94
|
-
}, z.ZodTypeAny, "passthrough">>>;
|
|
95
|
-
/** Optional additional context */
|
|
96
|
-
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
97
|
-
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
98
|
-
/** Error code */
|
|
99
|
-
error: z.ZodLiteral<"needs_authorization">;
|
|
100
|
-
/** Human-readable error message */
|
|
101
|
-
message: z.ZodString;
|
|
102
|
-
/** URL for the user to authorize (includes resume token) */
|
|
103
|
-
authorizationUrl: z.ZodString;
|
|
104
|
-
/** Short-lived resume token for continuing after authorization */
|
|
105
|
-
resumeToken: z.ZodString;
|
|
106
|
-
/** Expiration timestamp for the resume token (milliseconds since epoch) */
|
|
107
|
-
expiresAt: z.ZodNumber;
|
|
108
|
-
/** Required scopes for authorization */
|
|
109
|
-
scopes: z.ZodArray<z.ZodString, "many">;
|
|
110
|
-
/** Optional display configuration for authorization UI */
|
|
111
|
-
display: z.ZodOptional<z.ZodObject<{
|
|
112
|
-
/** Optional title for the authorization screen */
|
|
113
|
-
title: z.ZodOptional<z.ZodString>;
|
|
114
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
115
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
116
|
-
/** Optional short authorization code */
|
|
117
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
118
|
-
/** Optional QR code URL */
|
|
119
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
120
|
-
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
121
|
-
/** Optional title for the authorization screen */
|
|
122
|
-
title: z.ZodOptional<z.ZodString>;
|
|
123
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
124
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
125
|
-
/** Optional short authorization code */
|
|
126
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
127
|
-
/** Optional QR code URL */
|
|
128
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
129
|
-
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
130
|
-
/** Optional title for the authorization screen */
|
|
131
|
-
title: z.ZodOptional<z.ZodString>;
|
|
132
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
133
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
134
|
-
/** Optional short authorization code */
|
|
135
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
136
|
-
/** Optional QR code URL */
|
|
137
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
138
|
-
}, z.ZodTypeAny, "passthrough">>>;
|
|
139
|
-
/** Optional additional context */
|
|
140
|
-
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
141
|
-
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
142
|
-
/** Error code */
|
|
143
|
-
error: z.ZodLiteral<"needs_authorization">;
|
|
144
|
-
/** Human-readable error message */
|
|
145
|
-
message: z.ZodString;
|
|
146
|
-
/** URL for the user to authorize (includes resume token) */
|
|
147
|
-
authorizationUrl: z.ZodString;
|
|
148
|
-
/** Short-lived resume token for continuing after authorization */
|
|
149
|
-
resumeToken: z.ZodString;
|
|
150
|
-
/** Expiration timestamp for the resume token (milliseconds since epoch) */
|
|
151
|
-
expiresAt: z.ZodNumber;
|
|
152
|
-
/** Required scopes for authorization */
|
|
153
|
-
scopes: z.ZodArray<z.ZodString, "many">;
|
|
154
|
-
/** Optional display configuration for authorization UI */
|
|
155
|
-
display: z.ZodOptional<z.ZodObject<{
|
|
156
|
-
/** Optional title for the authorization screen */
|
|
157
|
-
title: z.ZodOptional<z.ZodString>;
|
|
158
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
159
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
160
|
-
/** Optional short authorization code */
|
|
161
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
162
|
-
/** Optional QR code URL */
|
|
163
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
164
|
-
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
165
|
-
/** Optional title for the authorization screen */
|
|
166
|
-
title: z.ZodOptional<z.ZodString>;
|
|
167
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
168
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
169
|
-
/** Optional short authorization code */
|
|
170
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
171
|
-
/** Optional QR code URL */
|
|
172
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
173
|
-
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
174
|
-
/** Optional title for the authorization screen */
|
|
175
|
-
title: z.ZodOptional<z.ZodString>;
|
|
176
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
177
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
178
|
-
/** Optional short authorization code */
|
|
179
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
180
|
-
/** Optional QR code URL */
|
|
181
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
182
|
-
}, z.ZodTypeAny, "passthrough">>>;
|
|
183
|
-
/** Optional additional context */
|
|
184
|
-
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
185
|
-
}, z.ZodTypeAny, "passthrough">>;
|
|
186
|
-
export type NeedsAuthorizationError = z.infer<typeof NeedsAuthorizationErrorSchema>;
|
|
187
|
-
/**
|
|
188
|
-
* Generic Error Schema
|
|
189
|
-
*
|
|
190
|
-
* Standard error format for all runtime errors
|
|
191
|
-
*/
|
|
192
|
-
export declare const RuntimeErrorSchema: z.ZodObject<{
|
|
193
|
-
/** Error code */
|
|
194
|
-
error: z.ZodString;
|
|
195
|
-
/** Human-readable error message */
|
|
196
|
-
message: z.ZodString;
|
|
197
|
-
/** Optional error details */
|
|
198
|
-
details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
199
|
-
/** HTTP status code (if applicable) */
|
|
200
|
-
httpStatus: z.ZodOptional<z.ZodNumber>;
|
|
201
|
-
}, "strip", z.ZodTypeAny, {
|
|
202
|
-
message: string;
|
|
203
|
-
error: string;
|
|
204
|
-
details?: Record<string, any> | undefined;
|
|
205
|
-
httpStatus?: number | undefined;
|
|
206
|
-
}, {
|
|
207
|
-
message: string;
|
|
208
|
-
error: string;
|
|
209
|
-
details?: Record<string, any> | undefined;
|
|
210
|
-
httpStatus?: number | undefined;
|
|
211
|
-
}>;
|
|
212
|
-
export type RuntimeError = z.infer<typeof RuntimeErrorSchema>;
|
|
213
|
-
/**
|
|
214
|
-
* Validation Helpers
|
|
215
|
-
*/
|
|
216
|
-
/**
|
|
217
|
-
* Validate a needs authorization error
|
|
218
|
-
*
|
|
219
|
-
* @param error - The error to validate
|
|
220
|
-
* @returns Validation result
|
|
221
|
-
*/
|
|
222
|
-
export declare function validateNeedsAuthorizationError(error: unknown): z.SafeParseReturnType<z.objectInputType<{
|
|
223
|
-
/** Error code */
|
|
224
|
-
error: z.ZodLiteral<"needs_authorization">;
|
|
225
|
-
/** Human-readable error message */
|
|
226
|
-
message: z.ZodString;
|
|
227
|
-
/** URL for the user to authorize (includes resume token) */
|
|
228
|
-
authorizationUrl: z.ZodString;
|
|
229
|
-
/** Short-lived resume token for continuing after authorization */
|
|
230
|
-
resumeToken: z.ZodString;
|
|
231
|
-
/** Expiration timestamp for the resume token (milliseconds since epoch) */
|
|
232
|
-
expiresAt: z.ZodNumber;
|
|
233
|
-
/** Required scopes for authorization */
|
|
234
|
-
scopes: z.ZodArray<z.ZodString, "many">;
|
|
235
|
-
/** Optional display configuration for authorization UI */
|
|
236
|
-
display: z.ZodOptional<z.ZodObject<{
|
|
237
|
-
/** Optional title for the authorization screen */
|
|
238
|
-
title: z.ZodOptional<z.ZodString>;
|
|
239
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
240
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
241
|
-
/** Optional short authorization code */
|
|
242
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
243
|
-
/** Optional QR code URL */
|
|
244
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
245
|
-
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
246
|
-
/** Optional title for the authorization screen */
|
|
247
|
-
title: z.ZodOptional<z.ZodString>;
|
|
248
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
249
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
250
|
-
/** Optional short authorization code */
|
|
251
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
252
|
-
/** Optional QR code URL */
|
|
253
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
254
|
-
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
255
|
-
/** Optional title for the authorization screen */
|
|
256
|
-
title: z.ZodOptional<z.ZodString>;
|
|
257
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
258
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
259
|
-
/** Optional short authorization code */
|
|
260
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
261
|
-
/** Optional QR code URL */
|
|
262
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
263
|
-
}, z.ZodTypeAny, "passthrough">>>;
|
|
264
|
-
/** Optional additional context */
|
|
265
|
-
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
266
|
-
}, z.ZodTypeAny, "passthrough">, z.objectOutputType<{
|
|
267
|
-
/** Error code */
|
|
268
|
-
error: z.ZodLiteral<"needs_authorization">;
|
|
269
|
-
/** Human-readable error message */
|
|
270
|
-
message: z.ZodString;
|
|
271
|
-
/** URL for the user to authorize (includes resume token) */
|
|
272
|
-
authorizationUrl: z.ZodString;
|
|
273
|
-
/** Short-lived resume token for continuing after authorization */
|
|
274
|
-
resumeToken: z.ZodString;
|
|
275
|
-
/** Expiration timestamp for the resume token (milliseconds since epoch) */
|
|
276
|
-
expiresAt: z.ZodNumber;
|
|
277
|
-
/** Required scopes for authorization */
|
|
278
|
-
scopes: z.ZodArray<z.ZodString, "many">;
|
|
279
|
-
/** Optional display configuration for authorization UI */
|
|
280
|
-
display: z.ZodOptional<z.ZodObject<{
|
|
281
|
-
/** Optional title for the authorization screen */
|
|
282
|
-
title: z.ZodOptional<z.ZodString>;
|
|
283
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
284
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
285
|
-
/** Optional short authorization code */
|
|
286
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
287
|
-
/** Optional QR code URL */
|
|
288
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
289
|
-
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
290
|
-
/** Optional title for the authorization screen */
|
|
291
|
-
title: z.ZodOptional<z.ZodString>;
|
|
292
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
293
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
294
|
-
/** Optional short authorization code */
|
|
295
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
296
|
-
/** Optional QR code URL */
|
|
297
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
298
|
-
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
299
|
-
/** Optional title for the authorization screen */
|
|
300
|
-
title: z.ZodOptional<z.ZodString>;
|
|
301
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
302
|
-
hint: z.ZodOptional<z.ZodArray<z.ZodEnum<["link", "qr", "code"]>, "many">>;
|
|
303
|
-
/** Optional short authorization code */
|
|
304
|
-
authorizationCode: z.ZodOptional<z.ZodString>;
|
|
305
|
-
/** Optional QR code URL */
|
|
306
|
-
qrUrl: z.ZodOptional<z.ZodString>;
|
|
307
|
-
}, z.ZodTypeAny, "passthrough">>>;
|
|
308
|
-
/** Optional additional context */
|
|
309
|
-
context: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
|
|
310
|
-
}, z.ZodTypeAny, "passthrough">>;
|
|
311
|
-
/**
|
|
312
|
-
* Check if error is a needs authorization error
|
|
313
|
-
*
|
|
314
|
-
* @param error - The error to check
|
|
315
|
-
* @returns true if it's a needs authorization error
|
|
316
|
-
*/
|
|
317
|
-
export declare function isNeedsAuthorizationError(error: any): error is NeedsAuthorizationError;
|
|
318
|
-
/**
|
|
319
|
-
* Create a needs authorization error
|
|
320
|
-
*
|
|
321
|
-
* @param config - Configuration for the error
|
|
322
|
-
* @returns NeedsAuthorizationError instance
|
|
323
|
-
*/
|
|
324
|
-
export declare function createNeedsAuthorizationError(config: {
|
|
325
|
-
message: string;
|
|
326
|
-
authorizationUrl: string;
|
|
327
|
-
resumeToken: string;
|
|
328
|
-
expiresAt: number;
|
|
329
|
-
scopes: string[];
|
|
330
|
-
display?: AuthorizationDisplay;
|
|
331
|
-
}): NeedsAuthorizationError;
|
|
332
|
-
/**
|
|
333
|
-
* Constants
|
|
334
|
-
*/
|
|
335
|
-
/**
|
|
336
|
-
* Error codes
|
|
337
|
-
*/
|
|
338
|
-
export declare const ERROR_CODES: Readonly<{
|
|
339
|
-
readonly NEEDS_AUTHORIZATION: "needs_authorization";
|
|
340
|
-
readonly INVALID_TOKEN: "invalid_token";
|
|
341
|
-
readonly TOKEN_EXPIRED: "token_expired";
|
|
342
|
-
readonly INSUFFICIENT_SCOPE: "insufficient_scope";
|
|
343
|
-
readonly INVALID_SIGNATURE: "invalid_signature";
|
|
344
|
-
readonly DELEGATION_REVOKED: "delegation_revoked";
|
|
345
|
-
readonly CREDENTIAL_REVOKED: "credential_revoked";
|
|
346
|
-
}>;
|
|
347
|
-
export type ErrorCode = typeof ERROR_CODES[keyof typeof ERROR_CODES];
|
|
348
|
-
//# sourceMappingURL=errors.d.ts.map
|
package/dist/runtime/errors.js
DELETED
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Runtime Error Contracts
|
|
4
|
-
*
|
|
5
|
-
* Error types and schemas for runtime errors, especially authorization errors
|
|
6
|
-
*
|
|
7
|
-
* Related Spec: MCP-I §6
|
|
8
|
-
* Python Reference: Core-Documentation.md
|
|
9
|
-
*/
|
|
10
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
exports.ERROR_CODES = exports.RuntimeErrorSchema = exports.NeedsAuthorizationErrorSchema = exports.AuthorizationDisplaySchema = exports.DisplayHintSchema = void 0;
|
|
12
|
-
exports.validateNeedsAuthorizationError = validateNeedsAuthorizationError;
|
|
13
|
-
exports.isNeedsAuthorizationError = isNeedsAuthorizationError;
|
|
14
|
-
exports.createNeedsAuthorizationError = createNeedsAuthorizationError;
|
|
15
|
-
const zod_1 = require("zod");
|
|
16
|
-
/**
|
|
17
|
-
* Display hint types for authorization UI
|
|
18
|
-
*/
|
|
19
|
-
exports.DisplayHintSchema = zod_1.z.enum(['link', 'qr', 'code']);
|
|
20
|
-
/**
|
|
21
|
-
* Display options for authorization flow
|
|
22
|
-
*/
|
|
23
|
-
exports.AuthorizationDisplaySchema = zod_1.z.object({
|
|
24
|
-
/** Optional title for the authorization screen */
|
|
25
|
-
title: zod_1.z.string().optional(),
|
|
26
|
-
/** Hints for how to display authorization (link, QR code, or code) */
|
|
27
|
-
hint: zod_1.z.array(exports.DisplayHintSchema).optional(),
|
|
28
|
-
/** Optional short authorization code */
|
|
29
|
-
authorizationCode: zod_1.z.string().optional(),
|
|
30
|
-
/** Optional QR code URL */
|
|
31
|
-
qrUrl: zod_1.z.string().url().optional(),
|
|
32
|
-
}).passthrough();
|
|
33
|
-
/**
|
|
34
|
-
* NeedsAuthorizationError Schema
|
|
35
|
-
*
|
|
36
|
-
* Error returned when a request requires authorization.
|
|
37
|
-
* Includes a resumeToken and authorizationUrl for the authorization flow.
|
|
38
|
-
*/
|
|
39
|
-
exports.NeedsAuthorizationErrorSchema = zod_1.z.object({
|
|
40
|
-
/** Error code */
|
|
41
|
-
error: zod_1.z.literal('needs_authorization'),
|
|
42
|
-
/** Human-readable error message */
|
|
43
|
-
message: zod_1.z.string().min(1),
|
|
44
|
-
/** URL for the user to authorize (includes resume token) */
|
|
45
|
-
authorizationUrl: zod_1.z.string().url(),
|
|
46
|
-
/** Short-lived resume token for continuing after authorization */
|
|
47
|
-
resumeToken: zod_1.z.string().min(1),
|
|
48
|
-
/** Expiration timestamp for the resume token (milliseconds since epoch) */
|
|
49
|
-
expiresAt: zod_1.z.number().int().positive(),
|
|
50
|
-
/** Required scopes for authorization */
|
|
51
|
-
scopes: zod_1.z.array(zod_1.z.string()),
|
|
52
|
-
/** Optional display configuration for authorization UI */
|
|
53
|
-
display: exports.AuthorizationDisplaySchema.optional(),
|
|
54
|
-
/** Optional additional context */
|
|
55
|
-
context: zod_1.z.record(zod_1.z.any()).optional(),
|
|
56
|
-
}).passthrough();
|
|
57
|
-
/**
|
|
58
|
-
* Generic Error Schema
|
|
59
|
-
*
|
|
60
|
-
* Standard error format for all runtime errors
|
|
61
|
-
*/
|
|
62
|
-
exports.RuntimeErrorSchema = zod_1.z.object({
|
|
63
|
-
/** Error code */
|
|
64
|
-
error: zod_1.z.string().min(1),
|
|
65
|
-
/** Human-readable error message */
|
|
66
|
-
message: zod_1.z.string().min(1),
|
|
67
|
-
/** Optional error details */
|
|
68
|
-
details: zod_1.z.record(zod_1.z.any()).optional(),
|
|
69
|
-
/** HTTP status code (if applicable) */
|
|
70
|
-
httpStatus: zod_1.z.number().int().min(400).max(599).optional(),
|
|
71
|
-
});
|
|
72
|
-
/**
|
|
73
|
-
* Validation Helpers
|
|
74
|
-
*/
|
|
75
|
-
/**
|
|
76
|
-
* Validate a needs authorization error
|
|
77
|
-
*
|
|
78
|
-
* @param error - The error to validate
|
|
79
|
-
* @returns Validation result
|
|
80
|
-
*/
|
|
81
|
-
function validateNeedsAuthorizationError(error) {
|
|
82
|
-
return exports.NeedsAuthorizationErrorSchema.safeParse(error);
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Check if error is a needs authorization error
|
|
86
|
-
*
|
|
87
|
-
* @param error - The error to check
|
|
88
|
-
* @returns true if it's a needs authorization error
|
|
89
|
-
*/
|
|
90
|
-
function isNeedsAuthorizationError(error) {
|
|
91
|
-
return error && error.error === 'needs_authorization';
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Create a needs authorization error
|
|
95
|
-
*
|
|
96
|
-
* @param config - Configuration for the error
|
|
97
|
-
* @returns NeedsAuthorizationError instance
|
|
98
|
-
*/
|
|
99
|
-
function createNeedsAuthorizationError(config) {
|
|
100
|
-
return {
|
|
101
|
-
error: 'needs_authorization',
|
|
102
|
-
...config,
|
|
103
|
-
};
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Constants
|
|
107
|
-
*/
|
|
108
|
-
/**
|
|
109
|
-
* Error codes
|
|
110
|
-
*/
|
|
111
|
-
exports.ERROR_CODES = Object.freeze({
|
|
112
|
-
NEEDS_AUTHORIZATION: 'needs_authorization',
|
|
113
|
-
INVALID_TOKEN: 'invalid_token',
|
|
114
|
-
TOKEN_EXPIRED: 'token_expired',
|
|
115
|
-
INSUFFICIENT_SCOPE: 'insufficient_scope',
|
|
116
|
-
INVALID_SIGNATURE: 'invalid_signature',
|
|
117
|
-
DELEGATION_REVOKED: 'delegation_revoked',
|
|
118
|
-
CREDENTIAL_REVOKED: 'credential_revoked',
|
|
119
|
-
});
|
|
120
|
-
//# sourceMappingURL=errors.js.map
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Runtime Header Contracts
|
|
3
|
-
*
|
|
4
|
-
* Header contracts for downstream services
|
|
5
|
-
*
|
|
6
|
-
* Related Spec: MCP-I §6
|
|
7
|
-
* Python Reference: Core-Documentation.md
|
|
8
|
-
*/
|
|
9
|
-
/**
|
|
10
|
-
* Downstream Headers Interface
|
|
11
|
-
*
|
|
12
|
-
* Headers passed to downstream services after verification
|
|
13
|
-
*/
|
|
14
|
-
export interface DownstreamHeaders {
|
|
15
|
-
/** DID of the verified agent */
|
|
16
|
-
'X-Agent-DID': string;
|
|
17
|
-
/** Optional delegation ID */
|
|
18
|
-
'X-Delegation-Id'?: string;
|
|
19
|
-
/** Optional delegation chain (format: vc_id>del_id>...) */
|
|
20
|
-
'X-Delegation-Chain'?: string;
|
|
21
|
-
/** Proof ID for audit trail */
|
|
22
|
-
'X-MCPI-Proof-Id': string;
|
|
23
|
-
/** Optional CRISP spend info (JSON string: {unit, delta, remaining}) */
|
|
24
|
-
'X-CRISP-Spend'?: string;
|
|
25
|
-
/** Optional session ID */
|
|
26
|
-
'X-Session-Id'?: string;
|
|
27
|
-
/** Optional scopes */
|
|
28
|
-
'X-Scopes'?: string;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Header names as constants for type safety
|
|
32
|
-
*/
|
|
33
|
-
export declare const DOWNSTREAM_HEADER_NAMES: Readonly<{
|
|
34
|
-
readonly AGENT_DID: "X-Agent-DID";
|
|
35
|
-
readonly DELEGATION_ID: "X-Delegation-Id";
|
|
36
|
-
readonly DELEGATION_CHAIN: "X-Delegation-Chain";
|
|
37
|
-
readonly PROOF_ID: "X-MCPI-Proof-Id";
|
|
38
|
-
readonly CRISP_SPEND: "X-CRISP-Spend";
|
|
39
|
-
readonly SESSION_ID: "X-Session-Id";
|
|
40
|
-
readonly SCOPES: "X-Scopes";
|
|
41
|
-
}>;
|
|
42
|
-
/**
|
|
43
|
-
* CRISP Spend Info
|
|
44
|
-
*
|
|
45
|
-
* Structure for X-CRISP-Spend header value
|
|
46
|
-
*/
|
|
47
|
-
export interface CrispSpendInfo {
|
|
48
|
-
/** Unit of spending */
|
|
49
|
-
unit: 'USD' | 'ops' | 'points';
|
|
50
|
-
/** Amount spent in this request */
|
|
51
|
-
delta?: number;
|
|
52
|
-
/** Remaining budget */
|
|
53
|
-
remaining?: number;
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Helper to serialize CRISP spend info to header value
|
|
57
|
-
*
|
|
58
|
-
* @param info - CRISP spend info
|
|
59
|
-
* @returns JSON string for header
|
|
60
|
-
*/
|
|
61
|
-
export declare function serializeCrispSpend(info: CrispSpendInfo): string;
|
|
62
|
-
/**
|
|
63
|
-
* Helper to parse CRISP spend info from header value
|
|
64
|
-
*
|
|
65
|
-
* @param headerValue - JSON string from header
|
|
66
|
-
* @returns Parsed CRISP spend info or null if invalid
|
|
67
|
-
*/
|
|
68
|
-
export declare function parseCrispSpend(headerValue: string): CrispSpendInfo | null;
|
|
69
|
-
/**
|
|
70
|
-
* Helper to create downstream headers
|
|
71
|
-
*
|
|
72
|
-
* @param config - Configuration for headers
|
|
73
|
-
* @returns DownstreamHeaders object
|
|
74
|
-
*/
|
|
75
|
-
export declare function createDownstreamHeaders(config: {
|
|
76
|
-
agentDid: string;
|
|
77
|
-
proofId: string;
|
|
78
|
-
delegationId?: string;
|
|
79
|
-
delegationChain?: string;
|
|
80
|
-
crispSpend?: CrispSpendInfo;
|
|
81
|
-
sessionId?: string;
|
|
82
|
-
scopes?: string[];
|
|
83
|
-
}): DownstreamHeaders;
|
|
84
|
-
//# sourceMappingURL=headers.d.ts.map
|
package/dist/runtime/headers.js
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Runtime Header Contracts
|
|
4
|
-
*
|
|
5
|
-
* Header contracts for downstream services
|
|
6
|
-
*
|
|
7
|
-
* Related Spec: MCP-I §6
|
|
8
|
-
* Python Reference: Core-Documentation.md
|
|
9
|
-
*/
|
|
10
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
exports.DOWNSTREAM_HEADER_NAMES = void 0;
|
|
12
|
-
exports.serializeCrispSpend = serializeCrispSpend;
|
|
13
|
-
exports.parseCrispSpend = parseCrispSpend;
|
|
14
|
-
exports.createDownstreamHeaders = createDownstreamHeaders;
|
|
15
|
-
/**
|
|
16
|
-
* Header names as constants for type safety
|
|
17
|
-
*/
|
|
18
|
-
exports.DOWNSTREAM_HEADER_NAMES = Object.freeze({
|
|
19
|
-
AGENT_DID: 'X-Agent-DID',
|
|
20
|
-
DELEGATION_ID: 'X-Delegation-Id',
|
|
21
|
-
DELEGATION_CHAIN: 'X-Delegation-Chain',
|
|
22
|
-
PROOF_ID: 'X-MCPI-Proof-Id',
|
|
23
|
-
CRISP_SPEND: 'X-CRISP-Spend',
|
|
24
|
-
SESSION_ID: 'X-Session-Id',
|
|
25
|
-
SCOPES: 'X-Scopes',
|
|
26
|
-
});
|
|
27
|
-
/**
|
|
28
|
-
* Helper to serialize CRISP spend info to header value
|
|
29
|
-
*
|
|
30
|
-
* @param info - CRISP spend info
|
|
31
|
-
* @returns JSON string for header
|
|
32
|
-
*/
|
|
33
|
-
function serializeCrispSpend(info) {
|
|
34
|
-
return JSON.stringify(info);
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Helper to parse CRISP spend info from header value
|
|
38
|
-
*
|
|
39
|
-
* @param headerValue - JSON string from header
|
|
40
|
-
* @returns Parsed CRISP spend info or null if invalid
|
|
41
|
-
*/
|
|
42
|
-
function parseCrispSpend(headerValue) {
|
|
43
|
-
try {
|
|
44
|
-
const parsed = JSON.parse(headerValue);
|
|
45
|
-
if (parsed && typeof parsed.unit === 'string') {
|
|
46
|
-
return parsed;
|
|
47
|
-
}
|
|
48
|
-
return null;
|
|
49
|
-
}
|
|
50
|
-
catch {
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Helper to create downstream headers
|
|
56
|
-
*
|
|
57
|
-
* @param config - Configuration for headers
|
|
58
|
-
* @returns DownstreamHeaders object
|
|
59
|
-
*/
|
|
60
|
-
function createDownstreamHeaders(config) {
|
|
61
|
-
const headers = {
|
|
62
|
-
'X-Agent-DID': config.agentDid,
|
|
63
|
-
'X-MCPI-Proof-Id': config.proofId,
|
|
64
|
-
};
|
|
65
|
-
if (config.delegationId) {
|
|
66
|
-
headers['X-Delegation-Id'] = config.delegationId;
|
|
67
|
-
}
|
|
68
|
-
if (config.delegationChain) {
|
|
69
|
-
headers['X-Delegation-Chain'] = config.delegationChain;
|
|
70
|
-
}
|
|
71
|
-
if (config.crispSpend) {
|
|
72
|
-
headers['X-CRISP-Spend'] = serializeCrispSpend(config.crispSpend);
|
|
73
|
-
}
|
|
74
|
-
if (config.sessionId) {
|
|
75
|
-
headers['X-Session-Id'] = config.sessionId;
|
|
76
|
-
}
|
|
77
|
-
if (config.scopes && config.scopes.length > 0) {
|
|
78
|
-
headers['X-Scopes'] = config.scopes.join(',');
|
|
79
|
-
}
|
|
80
|
-
return headers;
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=headers.js.map
|
package/dist/runtime/index.d.ts
DELETED
package/dist/runtime/index.js
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Runtime Module Exports
|
|
4
|
-
*/
|
|
5
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
-
}
|
|
11
|
-
Object.defineProperty(o, k2, desc);
|
|
12
|
-
}) : (function(o, m, k, k2) {
|
|
13
|
-
if (k2 === undefined) k2 = k;
|
|
14
|
-
o[k2] = m[k];
|
|
15
|
-
}));
|
|
16
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
17
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
18
|
-
};
|
|
19
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
__exportStar(require("./errors.js"), exports);
|
|
21
|
-
__exportStar(require("./headers.js"), exports);
|
|
22
|
-
//# sourceMappingURL=index.js.map
|