@openvtc/trust-tasks 0.26.8 → 0.26.10

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 (30) hide show
  1. package/CHANGELOG.md +126 -0
  2. package/dist/_shared/components.d.ts +43 -0
  3. package/dist/_shared/components.d.ts.map +1 -1
  4. package/dist/external/credentials/issue/0.3/payload.d.ts +1523 -0
  5. package/dist/external/credentials/issue/0.3/payload.d.ts.map +1 -0
  6. package/dist/external/credentials/issue/0.3/payload.js +847 -0
  7. package/dist/external/credentials/issue/0.3/payload.js.map +1 -0
  8. package/dist/index.d.ts +4 -0
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +4 -0
  11. package/dist/index.js.map +1 -1
  12. package/dist/vtc/_shared/0.1/admission.d.ts +16 -0
  13. package/dist/vtc/_shared/0.1/admission.d.ts.map +1 -0
  14. package/dist/vtc/_shared/0.1/admission.js +6 -0
  15. package/dist/vtc/_shared/0.1/admission.js.map +1 -0
  16. package/dist/vtc/members/admit/0.1/payload.d.ts +481 -0
  17. package/dist/vtc/members/admit/0.1/payload.d.ts.map +1 -0
  18. package/dist/vtc/members/admit/0.1/payload.js +281 -0
  19. package/dist/vtc/members/admit/0.1/payload.js.map +1 -0
  20. package/dist/vtc/members/make-membership/0.1/payload.d.ts +447 -0
  21. package/dist/vtc/members/make-membership/0.1/payload.d.ts.map +1 -0
  22. package/dist/vtc/members/make-membership/0.1/payload.js +267 -0
  23. package/dist/vtc/members/make-membership/0.1/payload.js.map +1 -0
  24. package/package.json +1 -1
  25. package/src/_shared/components.ts +43 -0
  26. package/src/external/credentials/issue/0.3/payload.ts +999 -0
  27. package/src/index.ts +4 -0
  28. package/src/vtc/_shared/0.1/admission.ts +17 -0
  29. package/src/vtc/members/admit/0.1/payload.ts +326 -0
  30. package/src/vtc/members/make-membership/0.1/payload.ts +304 -0
@@ -0,0 +1,447 @@
1
+ /**
2
+ * Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
3
+ * Source: specs/vtc/members/make-membership/0.1/payload.schema.json
4
+ */
5
+ import type { AdmittedMembership, Approval, Ext } from "../../../../_shared/components.js";
6
+ /**
7
+ * Success response to vtc/members/make-membership/0.1: the membership as admitted, with the credentials issued for it. Type https://trusttasks.org/spec/vtc/members/make-membership/0.1#response — carried directly, or on the request's threadId when a referred operation executes after its approval.
8
+ */
9
+ export type VTCMembersMakeMembershipResponsePayload = AdmittedMembership;
10
+ /**
11
+ * An administrator gives an existing access-control entry that has no member record — typically the community's bootstrap administrator — the member record and credentials a completed join would have given it, at the role the entry already holds. The entry itself is not changed.
12
+ */
13
+ export interface VTCMembersMakeMembershipPayload {
14
+ /**
15
+ * The DID whose access-control entry becomes a membership. It holds a live entry that is not of the `application` community role, and no member record, live or removed.
16
+ */
17
+ subject: string;
18
+ /**
19
+ * Why, for the community's audit trail and for the administrators asked to approve it if the operation is referred. Never published to the subject or beyond the community.
20
+ */
21
+ reason?: string;
22
+ ext?: Ext;
23
+ }
24
+ /** Shared definitions this specification references, re-exported under the names it used to declare them with. */
25
+ export type { AdmittedMembership, Approval, Ext };
26
+ /** Trust Task type URI. */
27
+ export declare const TYPE_URI: "https://trusttasks.org/spec/vtc/members/make-membership/0.1";
28
+ /** Stable alias for this specification's request payload shape. */
29
+ export type Payload = VTCMembersMakeMembershipPayload;
30
+ /** Trust Task response type URI (request type URI + "#response"). */
31
+ export declare const RESPONSE_TYPE_URI: "https://trusttasks.org/spec/vtc/members/make-membership/0.1#response";
32
+ /** Stable alias for this specification's success-response payload shape. */
33
+ export type Response = VTCMembersMakeMembershipResponsePayload;
34
+ /**
35
+ * This specification's payload schema, as a value.
36
+ *
37
+ * SPEC.md §7.2 item 2 is performed against this. It is shipped as data
38
+ * rather than only as a `.json` file because TypeScript types are erased
39
+ * at runtime: without a schema a consumer has nothing to validate, and
40
+ * every REQUIRED payload member is optional in practice. Cross-file
41
+ * `$ref`s are already inlined, so it needs no resolver.
42
+ */
43
+ export declare const PAYLOAD_SCHEMA: {
44
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
45
+ readonly $id: "https://trusttasks.org/spec/vtc/members/make-membership/0.1";
46
+ readonly title: "VTC Members Make-Membership — payload";
47
+ readonly description: "An administrator gives an existing access-control entry that has no member record — typically the community's bootstrap administrator — the member record and credentials a completed join would have given it, at the role the entry already holds. The entry itself is not changed.";
48
+ readonly type: "object";
49
+ readonly additionalProperties: false;
50
+ readonly required: readonly ["subject"];
51
+ readonly properties: {
52
+ readonly subject: {
53
+ readonly type: "string";
54
+ readonly pattern: "^did:";
55
+ readonly maxLength: 2048;
56
+ readonly description: "The DID whose access-control entry becomes a membership. It holds a live entry that is not of the `application` community role, and no member record, live or removed.";
57
+ };
58
+ readonly reason: {
59
+ readonly type: "string";
60
+ readonly maxLength: 1024;
61
+ readonly description: "Why, for the community's audit trail and for the administrators asked to approve it if the operation is referred. Never published to the subject or beyond the community.";
62
+ };
63
+ readonly ext: {
64
+ readonly $ref: "#/$defs/Ext";
65
+ };
66
+ };
67
+ readonly $defs: {
68
+ readonly Response: {
69
+ readonly $anchor: "response";
70
+ readonly title: "VTC Members Make-Membership — response payload";
71
+ readonly description: "Success response to vtc/members/make-membership/0.1: the membership as admitted, with the credentials issued for it. Type https://trusttasks.org/spec/vtc/members/make-membership/0.1#response — carried directly, or on the request's threadId when a referred operation executes after its approval.";
72
+ readonly $ref: "#/$defs/AdmittedMembership";
73
+ readonly unevaluatedProperties: false;
74
+ };
75
+ readonly AdmittedMembership: {
76
+ readonly title: "AdmittedMembership";
77
+ readonly description: "A membership admitted directly, with the credentials issued for it — the success payload of vtc/members/admit and vtc/members/make-membership.";
78
+ readonly type: "object";
79
+ readonly additionalProperties: false;
80
+ readonly required: readonly ["subject", "role", "status", "returning", "approval", "statusListIndex", "vmc", "roleVac"];
81
+ readonly properties: {
82
+ readonly subject: {
83
+ readonly type: "string";
84
+ readonly pattern: "^did:";
85
+ readonly maxLength: 2048;
86
+ readonly description: "The DID admitted.";
87
+ };
88
+ readonly role: {
89
+ readonly type: "string";
90
+ readonly minLength: 1;
91
+ readonly maxLength: 128;
92
+ readonly description: "The community role the membership holds: for vtc/members/admit the one requested, for vtc/members/make-membership the role the entry already held.";
93
+ };
94
+ readonly label: {
95
+ readonly type: "string";
96
+ readonly minLength: 1;
97
+ readonly maxLength: 256;
98
+ readonly description: "The new entry's label, when vtc/members/admit was given one. Absent for vtc/members/make-membership, which writes no entry.";
99
+ };
100
+ readonly status: {
101
+ readonly type: "string";
102
+ readonly enum: readonly ["admitted"];
103
+ readonly description: "Always `admitted`: a refusal is a trust-task-error, and a referred admission is answered with trust-task-next-step until it executes.";
104
+ };
105
+ readonly returning: {
106
+ readonly type: "boolean";
107
+ readonly description: "True when vtc/members/admit re-admitted a former member (a removed member record, no entry), as a rejoin would re-admit them. Always false for vtc/members/make-membership, which refuses a removed record.";
108
+ };
109
+ readonly approval: {
110
+ readonly $ref: "#/$defs/Approval";
111
+ };
112
+ readonly statusListIndex: {
113
+ readonly type: "integer";
114
+ readonly minimum: 0;
115
+ readonly description: "The membership's slot on the community's revocation status list, which the VMC's credentialStatus names.";
116
+ };
117
+ readonly vmc: {
118
+ readonly type: "object";
119
+ readonly description: "The Verifiable Membership Credential issued for the admission, delivered inline as vtc/join-requests/decide delivers it.";
120
+ };
121
+ readonly roleVac: {
122
+ readonly type: "object";
123
+ readonly description: "The role credential issued for the admission: a Verifiable Authority Credential issued by the community whose `credentialSubject.authority` is `{ scope: <community DID>, actions: [\"role:<name>\"] }`, the shape vtc/join-requests/decide returns.";
124
+ };
125
+ readonly ext: {
126
+ readonly $ref: "#/$defs/Ext";
127
+ };
128
+ };
129
+ };
130
+ readonly Approval: {
131
+ readonly title: "Approval";
132
+ readonly type: "string";
133
+ readonly enum: readonly ["policyAllowed", "approved", "waived"];
134
+ readonly description: "How the admission came to execute. `policyAllowed`: the community's policy admitted it at once. `approved`: the policy referred it, the community parked it, and another administrator approved it. `waived`: the policy referred it, and the community's single-administrator mode waived the approval on the requester's own re-authentication bound to the operation.";
135
+ };
136
+ readonly Ext: {
137
+ readonly title: "Ext";
138
+ readonly description: "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.";
139
+ readonly type: "object";
140
+ readonly minProperties: 1;
141
+ readonly additionalProperties: true;
142
+ readonly propertyNames: {
143
+ readonly pattern: "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$";
144
+ };
145
+ };
146
+ };
147
+ };
148
+ /** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
149
+ export declare const RESPONSE_PAYLOAD_SCHEMA: {
150
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
151
+ readonly $ref: "#/$defs/Response";
152
+ readonly $defs: {
153
+ readonly Response: {
154
+ readonly $anchor: "response";
155
+ readonly title: "VTC Members Make-Membership — response payload";
156
+ readonly description: "Success response to vtc/members/make-membership/0.1: the membership as admitted, with the credentials issued for it. Type https://trusttasks.org/spec/vtc/members/make-membership/0.1#response — carried directly, or on the request's threadId when a referred operation executes after its approval.";
157
+ readonly $ref: "#/$defs/AdmittedMembership";
158
+ readonly unevaluatedProperties: false;
159
+ };
160
+ readonly AdmittedMembership: {
161
+ readonly title: "AdmittedMembership";
162
+ readonly description: "A membership admitted directly, with the credentials issued for it — the success payload of vtc/members/admit and vtc/members/make-membership.";
163
+ readonly type: "object";
164
+ readonly additionalProperties: false;
165
+ readonly required: readonly ["subject", "role", "status", "returning", "approval", "statusListIndex", "vmc", "roleVac"];
166
+ readonly properties: {
167
+ readonly subject: {
168
+ readonly type: "string";
169
+ readonly pattern: "^did:";
170
+ readonly maxLength: 2048;
171
+ readonly description: "The DID admitted.";
172
+ };
173
+ readonly role: {
174
+ readonly type: "string";
175
+ readonly minLength: 1;
176
+ readonly maxLength: 128;
177
+ readonly description: "The community role the membership holds: for vtc/members/admit the one requested, for vtc/members/make-membership the role the entry already held.";
178
+ };
179
+ readonly label: {
180
+ readonly type: "string";
181
+ readonly minLength: 1;
182
+ readonly maxLength: 256;
183
+ readonly description: "The new entry's label, when vtc/members/admit was given one. Absent for vtc/members/make-membership, which writes no entry.";
184
+ };
185
+ readonly status: {
186
+ readonly type: "string";
187
+ readonly enum: readonly ["admitted"];
188
+ readonly description: "Always `admitted`: a refusal is a trust-task-error, and a referred admission is answered with trust-task-next-step until it executes.";
189
+ };
190
+ readonly returning: {
191
+ readonly type: "boolean";
192
+ readonly description: "True when vtc/members/admit re-admitted a former member (a removed member record, no entry), as a rejoin would re-admit them. Always false for vtc/members/make-membership, which refuses a removed record.";
193
+ };
194
+ readonly approval: {
195
+ readonly $ref: "#/$defs/Approval";
196
+ };
197
+ readonly statusListIndex: {
198
+ readonly type: "integer";
199
+ readonly minimum: 0;
200
+ readonly description: "The membership's slot on the community's revocation status list, which the VMC's credentialStatus names.";
201
+ };
202
+ readonly vmc: {
203
+ readonly type: "object";
204
+ readonly description: "The Verifiable Membership Credential issued for the admission, delivered inline as vtc/join-requests/decide delivers it.";
205
+ };
206
+ readonly roleVac: {
207
+ readonly type: "object";
208
+ readonly description: "The role credential issued for the admission: a Verifiable Authority Credential issued by the community whose `credentialSubject.authority` is `{ scope: <community DID>, actions: [\"role:<name>\"] }`, the shape vtc/join-requests/decide returns.";
209
+ };
210
+ readonly ext: {
211
+ readonly $ref: "#/$defs/Ext";
212
+ };
213
+ };
214
+ };
215
+ readonly Approval: {
216
+ readonly title: "Approval";
217
+ readonly type: "string";
218
+ readonly enum: readonly ["policyAllowed", "approved", "waived"];
219
+ readonly description: "How the admission came to execute. `policyAllowed`: the community's policy admitted it at once. `approved`: the policy referred it, the community parked it, and another administrator approved it. `waived`: the policy referred it, and the community's single-administrator mode waived the approval on the requester's own re-authentication bound to the operation.";
220
+ };
221
+ readonly Ext: {
222
+ readonly title: "Ext";
223
+ readonly description: "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.";
224
+ readonly type: "object";
225
+ readonly minProperties: 1;
226
+ readonly additionalProperties: true;
227
+ readonly propertyNames: {
228
+ readonly pattern: "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$";
229
+ };
230
+ };
231
+ };
232
+ };
233
+ /**
234
+ * SPEC.md §7.2 policy for the request variant, from this specification's
235
+ * front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
236
+ * per-specification and cannot be derived from the document alone, and
237
+ * item 2 needs the schema this carries.
238
+ */
239
+ export declare const SPEC: {
240
+ readonly typeUri: "https://trusttasks.org/spec/vtc/members/make-membership/0.1";
241
+ readonly isBearer: false;
242
+ readonly isProofRequired: true;
243
+ readonly isRecipientRequired: true;
244
+ readonly isIssuedAtRequired: true;
245
+ readonly payloadSchema: {
246
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
247
+ readonly $id: "https://trusttasks.org/spec/vtc/members/make-membership/0.1";
248
+ readonly title: "VTC Members Make-Membership — payload";
249
+ readonly description: "An administrator gives an existing access-control entry that has no member record — typically the community's bootstrap administrator — the member record and credentials a completed join would have given it, at the role the entry already holds. The entry itself is not changed.";
250
+ readonly type: "object";
251
+ readonly additionalProperties: false;
252
+ readonly required: readonly ["subject"];
253
+ readonly properties: {
254
+ readonly subject: {
255
+ readonly type: "string";
256
+ readonly pattern: "^did:";
257
+ readonly maxLength: 2048;
258
+ readonly description: "The DID whose access-control entry becomes a membership. It holds a live entry that is not of the `application` community role, and no member record, live or removed.";
259
+ };
260
+ readonly reason: {
261
+ readonly type: "string";
262
+ readonly maxLength: 1024;
263
+ readonly description: "Why, for the community's audit trail and for the administrators asked to approve it if the operation is referred. Never published to the subject or beyond the community.";
264
+ };
265
+ readonly ext: {
266
+ readonly $ref: "#/$defs/Ext";
267
+ };
268
+ };
269
+ readonly $defs: {
270
+ readonly Response: {
271
+ readonly $anchor: "response";
272
+ readonly title: "VTC Members Make-Membership — response payload";
273
+ readonly description: "Success response to vtc/members/make-membership/0.1: the membership as admitted, with the credentials issued for it. Type https://trusttasks.org/spec/vtc/members/make-membership/0.1#response — carried directly, or on the request's threadId when a referred operation executes after its approval.";
274
+ readonly $ref: "#/$defs/AdmittedMembership";
275
+ readonly unevaluatedProperties: false;
276
+ };
277
+ readonly AdmittedMembership: {
278
+ readonly title: "AdmittedMembership";
279
+ readonly description: "A membership admitted directly, with the credentials issued for it — the success payload of vtc/members/admit and vtc/members/make-membership.";
280
+ readonly type: "object";
281
+ readonly additionalProperties: false;
282
+ readonly required: readonly ["subject", "role", "status", "returning", "approval", "statusListIndex", "vmc", "roleVac"];
283
+ readonly properties: {
284
+ readonly subject: {
285
+ readonly type: "string";
286
+ readonly pattern: "^did:";
287
+ readonly maxLength: 2048;
288
+ readonly description: "The DID admitted.";
289
+ };
290
+ readonly role: {
291
+ readonly type: "string";
292
+ readonly minLength: 1;
293
+ readonly maxLength: 128;
294
+ readonly description: "The community role the membership holds: for vtc/members/admit the one requested, for vtc/members/make-membership the role the entry already held.";
295
+ };
296
+ readonly label: {
297
+ readonly type: "string";
298
+ readonly minLength: 1;
299
+ readonly maxLength: 256;
300
+ readonly description: "The new entry's label, when vtc/members/admit was given one. Absent for vtc/members/make-membership, which writes no entry.";
301
+ };
302
+ readonly status: {
303
+ readonly type: "string";
304
+ readonly enum: readonly ["admitted"];
305
+ readonly description: "Always `admitted`: a refusal is a trust-task-error, and a referred admission is answered with trust-task-next-step until it executes.";
306
+ };
307
+ readonly returning: {
308
+ readonly type: "boolean";
309
+ readonly description: "True when vtc/members/admit re-admitted a former member (a removed member record, no entry), as a rejoin would re-admit them. Always false for vtc/members/make-membership, which refuses a removed record.";
310
+ };
311
+ readonly approval: {
312
+ readonly $ref: "#/$defs/Approval";
313
+ };
314
+ readonly statusListIndex: {
315
+ readonly type: "integer";
316
+ readonly minimum: 0;
317
+ readonly description: "The membership's slot on the community's revocation status list, which the VMC's credentialStatus names.";
318
+ };
319
+ readonly vmc: {
320
+ readonly type: "object";
321
+ readonly description: "The Verifiable Membership Credential issued for the admission, delivered inline as vtc/join-requests/decide delivers it.";
322
+ };
323
+ readonly roleVac: {
324
+ readonly type: "object";
325
+ readonly description: "The role credential issued for the admission: a Verifiable Authority Credential issued by the community whose `credentialSubject.authority` is `{ scope: <community DID>, actions: [\"role:<name>\"] }`, the shape vtc/join-requests/decide returns.";
326
+ };
327
+ readonly ext: {
328
+ readonly $ref: "#/$defs/Ext";
329
+ };
330
+ };
331
+ };
332
+ readonly Approval: {
333
+ readonly title: "Approval";
334
+ readonly type: "string";
335
+ readonly enum: readonly ["policyAllowed", "approved", "waived"];
336
+ readonly description: "How the admission came to execute. `policyAllowed`: the community's policy admitted it at once. `approved`: the policy referred it, the community parked it, and another administrator approved it. `waived`: the policy referred it, and the community's single-administrator mode waived the approval on the requester's own re-authentication bound to the operation.";
337
+ };
338
+ readonly Ext: {
339
+ readonly title: "Ext";
340
+ readonly description: "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.";
341
+ readonly type: "object";
342
+ readonly minProperties: 1;
343
+ readonly additionalProperties: true;
344
+ readonly propertyNames: {
345
+ readonly pattern: "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$";
346
+ };
347
+ };
348
+ };
349
+ };
350
+ };
351
+ /**
352
+ * SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
353
+ * tracks the *issuer* party's requirement because a response swaps the
354
+ * parties (§7.3 item 5).
355
+ */
356
+ export declare const RESPONSE_SPEC: {
357
+ readonly typeUri: "https://trusttasks.org/spec/vtc/members/make-membership/0.1#response";
358
+ readonly isBearer: false;
359
+ readonly isProofRequired: true;
360
+ readonly isRecipientRequired: true;
361
+ readonly isIssuedAtRequired: true;
362
+ readonly payloadSchema: {
363
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
364
+ readonly $ref: "#/$defs/Response";
365
+ readonly $defs: {
366
+ readonly Response: {
367
+ readonly $anchor: "response";
368
+ readonly title: "VTC Members Make-Membership — response payload";
369
+ readonly description: "Success response to vtc/members/make-membership/0.1: the membership as admitted, with the credentials issued for it. Type https://trusttasks.org/spec/vtc/members/make-membership/0.1#response — carried directly, or on the request's threadId when a referred operation executes after its approval.";
370
+ readonly $ref: "#/$defs/AdmittedMembership";
371
+ readonly unevaluatedProperties: false;
372
+ };
373
+ readonly AdmittedMembership: {
374
+ readonly title: "AdmittedMembership";
375
+ readonly description: "A membership admitted directly, with the credentials issued for it — the success payload of vtc/members/admit and vtc/members/make-membership.";
376
+ readonly type: "object";
377
+ readonly additionalProperties: false;
378
+ readonly required: readonly ["subject", "role", "status", "returning", "approval", "statusListIndex", "vmc", "roleVac"];
379
+ readonly properties: {
380
+ readonly subject: {
381
+ readonly type: "string";
382
+ readonly pattern: "^did:";
383
+ readonly maxLength: 2048;
384
+ readonly description: "The DID admitted.";
385
+ };
386
+ readonly role: {
387
+ readonly type: "string";
388
+ readonly minLength: 1;
389
+ readonly maxLength: 128;
390
+ readonly description: "The community role the membership holds: for vtc/members/admit the one requested, for vtc/members/make-membership the role the entry already held.";
391
+ };
392
+ readonly label: {
393
+ readonly type: "string";
394
+ readonly minLength: 1;
395
+ readonly maxLength: 256;
396
+ readonly description: "The new entry's label, when vtc/members/admit was given one. Absent for vtc/members/make-membership, which writes no entry.";
397
+ };
398
+ readonly status: {
399
+ readonly type: "string";
400
+ readonly enum: readonly ["admitted"];
401
+ readonly description: "Always `admitted`: a refusal is a trust-task-error, and a referred admission is answered with trust-task-next-step until it executes.";
402
+ };
403
+ readonly returning: {
404
+ readonly type: "boolean";
405
+ readonly description: "True when vtc/members/admit re-admitted a former member (a removed member record, no entry), as a rejoin would re-admit them. Always false for vtc/members/make-membership, which refuses a removed record.";
406
+ };
407
+ readonly approval: {
408
+ readonly $ref: "#/$defs/Approval";
409
+ };
410
+ readonly statusListIndex: {
411
+ readonly type: "integer";
412
+ readonly minimum: 0;
413
+ readonly description: "The membership's slot on the community's revocation status list, which the VMC's credentialStatus names.";
414
+ };
415
+ readonly vmc: {
416
+ readonly type: "object";
417
+ readonly description: "The Verifiable Membership Credential issued for the admission, delivered inline as vtc/join-requests/decide delivers it.";
418
+ };
419
+ readonly roleVac: {
420
+ readonly type: "object";
421
+ readonly description: "The role credential issued for the admission: a Verifiable Authority Credential issued by the community whose `credentialSubject.authority` is `{ scope: <community DID>, actions: [\"role:<name>\"] }`, the shape vtc/join-requests/decide returns.";
422
+ };
423
+ readonly ext: {
424
+ readonly $ref: "#/$defs/Ext";
425
+ };
426
+ };
427
+ };
428
+ readonly Approval: {
429
+ readonly title: "Approval";
430
+ readonly type: "string";
431
+ readonly enum: readonly ["policyAllowed", "approved", "waived"];
432
+ readonly description: "How the admission came to execute. `policyAllowed`: the community's policy admitted it at once. `approved`: the policy referred it, the community parked it, and another administrator approved it. `waived`: the policy referred it, and the community's single-administrator mode waived the approval on the requester's own re-authentication bound to the operation.";
433
+ };
434
+ readonly Ext: {
435
+ readonly title: "Ext";
436
+ readonly description: "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.";
437
+ readonly type: "object";
438
+ readonly minProperties: 1;
439
+ readonly additionalProperties: true;
440
+ readonly propertyNames: {
441
+ readonly pattern: "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$";
442
+ };
443
+ };
444
+ };
445
+ };
446
+ };
447
+ //# sourceMappingURL=payload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payload.d.ts","sourceRoot":"","sources":["../../../../../src/vtc/members/make-membership/0.1/payload.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,mCAAmC,CAAC;AAG3F;;GAEG;AACH,MAAM,MAAM,uCAAuC,GAAG,kBAAkB,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,GAAG,CAAC;CACX;AAED,kHAAkH;AAClH,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;AAElD,2BAA2B;AAC3B,eAAO,MAAM,QAAQ,EAAG,6DAAsE,CAAC;AAE/F,mEAAmE;AACnE,MAAM,MAAM,OAAO,GAAG,+BAA+B,CAAC;AAEtD,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,EAAG,sEAA+E,CAAC;AAEjH,4EAA4E;AAC5E,MAAM,MAAM,QAAQ,GAAG,uCAAuC,CAAC;AAE/D;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyHjB,CAAC;AAEX,mEAAmE;AACnE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkG1B,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOP,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOhB,CAAC"}