@openvtc/trust-tasks 0.21.4 → 0.21.5

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 (192) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/_shared/components.d.ts +210 -2
  3. package/dist/_shared/components.d.ts.map +1 -1
  4. package/dist/auth/_shared/0.1/passkey-invite.d.ts +16 -0
  5. package/dist/auth/_shared/0.1/passkey-invite.d.ts.map +1 -0
  6. package/dist/auth/_shared/0.1/passkey-invite.js +6 -0
  7. package/dist/auth/_shared/0.1/passkey-invite.js.map +1 -0
  8. package/dist/auth/passkey/enroll/invite/list/0.1/payload.d.ts +393 -0
  9. package/dist/auth/passkey/enroll/invite/list/0.1/payload.d.ts.map +1 -0
  10. package/dist/auth/passkey/enroll/invite/list/0.1/payload.js +234 -0
  11. package/dist/auth/passkey/enroll/invite/list/0.1/payload.js.map +1 -0
  12. package/dist/auth/passkey/enroll/invite/revoke/0.1/payload.d.ts +228 -0
  13. package/dist/auth/passkey/enroll/invite/revoke/0.1/payload.d.ts.map +1 -0
  14. package/dist/auth/passkey/enroll/invite/revoke/0.1/payload.js +138 -0
  15. package/dist/auth/passkey/enroll/invite/revoke/0.1/payload.js.map +1 -0
  16. package/dist/auth/passkey/enroll/invite/update/0.1/payload.d.ts +459 -0
  17. package/dist/auth/passkey/enroll/invite/update/0.1/payload.d.ts.map +1 -0
  18. package/dist/auth/passkey/enroll/invite/update/0.1/payload.js +286 -0
  19. package/dist/auth/passkey/enroll/invite/update/0.1/payload.js.map +1 -0
  20. package/dist/auth/step-up/start/0.1/payload.d.ts +420 -0
  21. package/dist/auth/step-up/start/0.1/payload.d.ts.map +1 -0
  22. package/dist/auth/step-up/start/0.1/payload.js +232 -0
  23. package/dist/auth/step-up/start/0.1/payload.js.map +1 -0
  24. package/dist/did-management/_shared/0.1/service-instance.d.ts +1 -1
  25. package/dist/did-management/_shared/0.1/service-instance.d.ts.map +1 -1
  26. package/dist/did-management/_shared/0.2/metrics-snapshot.d.ts +16 -0
  27. package/dist/did-management/_shared/0.2/metrics-snapshot.d.ts.map +1 -0
  28. package/dist/did-management/_shared/0.2/metrics-snapshot.js +6 -0
  29. package/dist/did-management/_shared/0.2/metrics-snapshot.js.map +1 -0
  30. package/dist/did-management/_shared/0.2/service-instance.d.ts +16 -0
  31. package/dist/did-management/_shared/0.2/service-instance.d.ts.map +1 -0
  32. package/dist/did-management/_shared/0.2/service-instance.js +6 -0
  33. package/dist/did-management/_shared/0.2/service-instance.js.map +1 -0
  34. package/dist/did-management/agent-name/resolve/0.1/payload.d.ts +318 -0
  35. package/dist/did-management/agent-name/resolve/0.1/payload.d.ts.map +1 -0
  36. package/dist/did-management/agent-name/resolve/0.1/payload.js +179 -0
  37. package/dist/did-management/agent-name/resolve/0.1/payload.js.map +1 -0
  38. package/dist/did-management/did/log/0.1/payload.d.ts +436 -0
  39. package/dist/did-management/did/log/0.1/payload.d.ts.map +1 -0
  40. package/dist/did-management/did/log/0.1/payload.js +228 -0
  41. package/dist/did-management/did/log/0.1/payload.js.map +1 -0
  42. package/dist/did-management/domain/list/0.1/payload.d.ts +423 -0
  43. package/dist/did-management/domain/list/0.1/payload.d.ts.map +1 -0
  44. package/dist/did-management/domain/list/0.1/payload.js +244 -0
  45. package/dist/did-management/domain/list/0.1/payload.js.map +1 -0
  46. package/dist/did-management/identity/list/0.1/payload.d.ts +494 -0
  47. package/dist/did-management/identity/list/0.1/payload.d.ts.map +1 -0
  48. package/dist/did-management/identity/list/0.1/payload.js +274 -0
  49. package/dist/did-management/identity/list/0.1/payload.js.map +1 -0
  50. package/dist/did-management/identity/retire/0.1/payload.d.ts +242 -0
  51. package/dist/did-management/identity/retire/0.1/payload.d.ts.map +1 -0
  52. package/dist/did-management/identity/retire/0.1/payload.js +142 -0
  53. package/dist/did-management/identity/retire/0.1/payload.js.map +1 -0
  54. package/dist/did-management/registry/admin-register/0.1/payload.d.ts +1 -1
  55. package/dist/did-management/registry/admin-register/0.1/payload.d.ts.map +1 -1
  56. package/dist/did-management/registry/check/0.1/payload.d.ts +639 -0
  57. package/dist/did-management/registry/check/0.1/payload.d.ts.map +1 -0
  58. package/dist/did-management/registry/check/0.1/payload.js +383 -0
  59. package/dist/did-management/registry/check/0.1/payload.js.map +1 -0
  60. package/dist/did-management/registry/get/0.1/payload.d.ts +632 -0
  61. package/dist/did-management/registry/get/0.1/payload.d.ts.map +1 -0
  62. package/dist/did-management/registry/get/0.1/payload.js +381 -0
  63. package/dist/did-management/registry/get/0.1/payload.js.map +1 -0
  64. package/dist/did-management/registry/list/0.1/payload.d.ts +661 -0
  65. package/dist/did-management/registry/list/0.1/payload.d.ts.map +1 -0
  66. package/dist/did-management/registry/list/0.1/payload.js +398 -0
  67. package/dist/did-management/registry/list/0.1/payload.js.map +1 -0
  68. package/dist/did-management/registry/purge-domain/0.1/payload.d.ts +269 -0
  69. package/dist/did-management/registry/purge-domain/0.1/payload.d.ts.map +1 -0
  70. package/dist/did-management/registry/purge-domain/0.1/payload.js +160 -0
  71. package/dist/did-management/registry/purge-domain/0.1/payload.js.map +1 -0
  72. package/dist/did-management/replica/domain/assign/0.1/payload.d.ts +233 -0
  73. package/dist/did-management/replica/domain/assign/0.1/payload.d.ts.map +1 -0
  74. package/dist/did-management/replica/domain/assign/0.1/payload.js +143 -0
  75. package/dist/did-management/replica/domain/assign/0.1/payload.js.map +1 -0
  76. package/dist/did-management/replica/domain/purge/0.1/payload.d.ts +257 -0
  77. package/dist/did-management/replica/domain/purge/0.1/payload.d.ts.map +1 -0
  78. package/dist/did-management/replica/domain/purge/0.1/payload.js +155 -0
  79. package/dist/did-management/replica/domain/purge/0.1/payload.js.map +1 -0
  80. package/dist/did-management/replica/domain/unassign/0.1/payload.d.ts +257 -0
  81. package/dist/did-management/replica/domain/unassign/0.1/payload.d.ts.map +1 -0
  82. package/dist/did-management/replica/domain/unassign/0.1/payload.js +155 -0
  83. package/dist/did-management/replica/domain/unassign/0.1/payload.js.map +1 -0
  84. package/dist/did-management/replica/domain/upsert/0.1/payload.d.ts +401 -0
  85. package/dist/did-management/replica/domain/upsert/0.1/payload.d.ts.map +1 -0
  86. package/dist/did-management/replica/domain/upsert/0.1/payload.js +241 -0
  87. package/dist/did-management/replica/domain/upsert/0.1/payload.js.map +1 -0
  88. package/dist/did-management/server/config/0.1/payload.d.ts +838 -0
  89. package/dist/did-management/server/config/0.1/payload.d.ts.map +1 -0
  90. package/dist/did-management/server/config/0.1/payload.js +444 -0
  91. package/dist/did-management/server/config/0.1/payload.js.map +1 -0
  92. package/dist/did-management/server/info/0.1/payload.d.ts +285 -0
  93. package/dist/did-management/server/info/0.1/payload.d.ts.map +1 -0
  94. package/dist/did-management/server/info/0.1/payload.js +160 -0
  95. package/dist/did-management/server/info/0.1/payload.js.map +1 -0
  96. package/dist/did-management/server/metrics/0.1/payload.d.ts +674 -0
  97. package/dist/did-management/server/metrics/0.1/payload.d.ts.map +1 -0
  98. package/dist/did-management/server/metrics/0.1/payload.js +387 -0
  99. package/dist/did-management/server/metrics/0.1/payload.js.map +1 -0
  100. package/dist/did-management/stats/get/0.1/payload.d.ts +349 -0
  101. package/dist/did-management/stats/get/0.1/payload.d.ts.map +1 -0
  102. package/dist/did-management/stats/get/0.1/payload.js +187 -0
  103. package/dist/did-management/stats/get/0.1/payload.js.map +1 -0
  104. package/dist/did-management/stats/timeseries/0.1/payload.d.ts +381 -0
  105. package/dist/did-management/stats/timeseries/0.1/payload.d.ts.map +1 -0
  106. package/dist/did-management/stats/timeseries/0.1/payload.js +227 -0
  107. package/dist/did-management/stats/timeseries/0.1/payload.js.map +1 -0
  108. package/dist/index.d.ts +34 -0
  109. package/dist/index.d.ts.map +1 -1
  110. package/dist/index.js +34 -0
  111. package/dist/index.js.map +1 -1
  112. package/dist/vtc/_shared/0.1/invite.d.ts +1 -1
  113. package/dist/vtc/_shared/0.1/invite.d.ts.map +1 -1
  114. package/dist/vtc/admin/invites/list/0.1/payload.d.ts +1 -1
  115. package/dist/vtc/admin/invites/list/0.1/payload.d.ts.map +1 -1
  116. package/dist/webvh/_shared/0.1/sync-update.d.ts +16 -0
  117. package/dist/webvh/_shared/0.1/sync-update.d.ts.map +1 -0
  118. package/dist/webvh/_shared/0.1/sync-update.js +6 -0
  119. package/dist/webvh/_shared/0.1/sync-update.js.map +1 -0
  120. package/dist/webvh/_shared/0.1/witness-key.d.ts +16 -0
  121. package/dist/webvh/_shared/0.1/witness-key.d.ts.map +1 -0
  122. package/dist/webvh/_shared/0.1/witness-key.js +6 -0
  123. package/dist/webvh/_shared/0.1/witness-key.js.map +1 -0
  124. package/dist/webvh/sync/batch/0.1/payload.d.ts +503 -0
  125. package/dist/webvh/sync/batch/0.1/payload.d.ts.map +1 -0
  126. package/dist/webvh/sync/batch/0.1/payload.js +290 -0
  127. package/dist/webvh/sync/batch/0.1/payload.js.map +1 -0
  128. package/dist/webvh/sync/delete/0.2/payload.d.ts +242 -0
  129. package/dist/webvh/sync/delete/0.2/payload.d.ts.map +1 -0
  130. package/dist/webvh/sync/delete/0.2/payload.js +148 -0
  131. package/dist/webvh/sync/delete/0.2/payload.js.map +1 -0
  132. package/dist/webvh/sync/update/0.2/payload.d.ts +315 -0
  133. package/dist/webvh/sync/update/0.2/payload.d.ts.map +1 -0
  134. package/dist/webvh/sync/update/0.2/payload.js +177 -0
  135. package/dist/webvh/sync/update/0.2/payload.js.map +1 -0
  136. package/dist/webvh/witness/key/create/0.1/payload.d.ts +346 -0
  137. package/dist/webvh/witness/key/create/0.1/payload.d.ts.map +1 -0
  138. package/dist/webvh/witness/key/create/0.1/payload.js +202 -0
  139. package/dist/webvh/witness/key/create/0.1/payload.js.map +1 -0
  140. package/dist/webvh/witness/key/delete/0.1/payload.d.ts +237 -0
  141. package/dist/webvh/witness/key/delete/0.1/payload.d.ts.map +1 -0
  142. package/dist/webvh/witness/key/delete/0.1/payload.js +141 -0
  143. package/dist/webvh/witness/key/delete/0.1/payload.js.map +1 -0
  144. package/dist/webvh/witness/key/list/0.1/payload.d.ts +349 -0
  145. package/dist/webvh/witness/key/list/0.1/payload.d.ts.map +1 -0
  146. package/dist/webvh/witness/key/list/0.1/payload.js +204 -0
  147. package/dist/webvh/witness/key/list/0.1/payload.js.map +1 -0
  148. package/dist/webvh/witness/sign/0.1/payload.d.ts +401 -0
  149. package/dist/webvh/witness/sign/0.1/payload.d.ts.map +1 -0
  150. package/dist/webvh/witness/sign/0.1/payload.js +229 -0
  151. package/dist/webvh/witness/sign/0.1/payload.js.map +1 -0
  152. package/package.json +1 -1
  153. package/src/_shared/components.ts +210 -2
  154. package/src/auth/_shared/0.1/passkey-invite.ts +17 -0
  155. package/src/auth/passkey/enroll/invite/list/0.1/payload.ts +266 -0
  156. package/src/auth/passkey/enroll/invite/revoke/0.1/payload.ts +165 -0
  157. package/src/auth/passkey/enroll/invite/update/0.1/payload.ts +327 -0
  158. package/src/auth/step-up/start/0.1/payload.ts +287 -0
  159. package/src/did-management/_shared/0.1/service-instance.ts +1 -1
  160. package/src/did-management/_shared/0.2/metrics-snapshot.ts +17 -0
  161. package/src/did-management/_shared/0.2/service-instance.ts +17 -0
  162. package/src/did-management/agent-name/resolve/0.1/payload.ts +222 -0
  163. package/src/did-management/did/log/0.1/payload.ts +295 -0
  164. package/src/did-management/domain/list/0.1/payload.ts +280 -0
  165. package/src/did-management/identity/list/0.1/payload.ts +335 -0
  166. package/src/did-management/identity/retire/0.1/payload.ts +175 -0
  167. package/src/did-management/registry/admin-register/0.1/payload.ts +1 -1
  168. package/src/did-management/registry/check/0.1/payload.ts +415 -0
  169. package/src/did-management/registry/get/0.1/payload.ts +410 -0
  170. package/src/did-management/registry/list/0.1/payload.ts +434 -0
  171. package/src/did-management/registry/purge-domain/0.1/payload.ts +198 -0
  172. package/src/did-management/replica/domain/assign/0.1/payload.ts +173 -0
  173. package/src/did-management/replica/domain/purge/0.1/payload.ts +189 -0
  174. package/src/did-management/replica/domain/unassign/0.1/payload.ts +189 -0
  175. package/src/did-management/replica/domain/upsert/0.1/payload.ts +271 -0
  176. package/src/did-management/server/config/0.1/payload.ts +545 -0
  177. package/src/did-management/server/info/0.1/payload.ts +200 -0
  178. package/src/did-management/server/metrics/0.1/payload.ts +418 -0
  179. package/src/did-management/stats/get/0.1/payload.ts +237 -0
  180. package/src/did-management/stats/timeseries/0.1/payload.ts +279 -0
  181. package/src/index.ts +34 -0
  182. package/src/vtc/_shared/0.1/invite.ts +1 -1
  183. package/src/vtc/admin/invites/list/0.1/payload.ts +1 -1
  184. package/src/webvh/_shared/0.1/sync-update.ts +17 -0
  185. package/src/webvh/_shared/0.1/witness-key.ts +17 -0
  186. package/src/webvh/sync/batch/0.1/payload.ts +336 -0
  187. package/src/webvh/sync/delete/0.2/payload.ts +181 -0
  188. package/src/webvh/sync/update/0.2/payload.ts +233 -0
  189. package/src/webvh/witness/key/create/0.1/payload.ts +231 -0
  190. package/src/webvh/witness/key/delete/0.1/payload.ts +171 -0
  191. package/src/webvh/witness/key/list/0.1/payload.ts +232 -0
  192. package/src/webvh/witness/sign/0.1/payload.ts +279 -0
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
3
+ * Source: specs/auth/passkey/enroll/invite/revoke/0.1/payload.schema.json
4
+ */
5
+
6
+ import type { Ext } from "../../../../../../_shared/components.js";
7
+
8
+
9
+ export interface AuthPasskeyInviteRevokePayload {
10
+ inviteId: string;
11
+ ext?: Ext;
12
+ }
13
+ export interface AuthPasskeyInviteRevokeResponsePayload {
14
+ inviteId: string;
15
+ revokedAt: string;
16
+ ext?: Ext;
17
+ }
18
+
19
+ /** Shared definitions this specification references, re-exported under the names it used to declare them with. */
20
+ export type { Ext };
21
+
22
+ /** Trust Task type URI. */
23
+ export const TYPE_URI = "https://trusttasks.org/spec/auth/passkey/enroll/invite/revoke/0.1" as const;
24
+
25
+ /** Stable alias for this specification's request payload shape. */
26
+ export type Payload = AuthPasskeyInviteRevokePayload;
27
+
28
+ /** Trust Task response type URI (request type URI + "#response"). */
29
+ export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/auth/passkey/enroll/invite/revoke/0.1#response" as const;
30
+
31
+ /** Stable alias for this specification's success-response payload shape. */
32
+ export type Response = AuthPasskeyInviteRevokeResponsePayload;
33
+
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 const PAYLOAD_SCHEMA = {
44
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
45
+ "$id": "https://trusttasks.org/spec/auth/passkey/enroll/invite/revoke/0.1",
46
+ "title": "Auth Passkey Invite Revoke — payload",
47
+ "type": "object",
48
+ "additionalProperties": false,
49
+ "required": [
50
+ "inviteId"
51
+ ],
52
+ "properties": {
53
+ "inviteId": {
54
+ "type": "string",
55
+ "minLength": 1,
56
+ "maxLength": 128
57
+ },
58
+ "ext": {
59
+ "$ref": "#/$defs/Ext"
60
+ }
61
+ },
62
+ "$defs": {
63
+ "Response": {
64
+ "$anchor": "response",
65
+ "title": "Auth Passkey Invite Revoke — response payload",
66
+ "type": "object",
67
+ "additionalProperties": false,
68
+ "required": [
69
+ "inviteId",
70
+ "revokedAt"
71
+ ],
72
+ "properties": {
73
+ "inviteId": {
74
+ "type": "string"
75
+ },
76
+ "revokedAt": {
77
+ "type": "string",
78
+ "format": "date-time"
79
+ },
80
+ "ext": {
81
+ "$ref": "#/$defs/Ext"
82
+ }
83
+ }
84
+ },
85
+ "Ext": {
86
+ "title": "Ext",
87
+ "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.",
88
+ "type": "object",
89
+ "minProperties": 1,
90
+ "additionalProperties": true,
91
+ "propertyNames": {
92
+ "pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
93
+ }
94
+ }
95
+ }
96
+ } as const;
97
+
98
+ /** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
99
+ export const RESPONSE_PAYLOAD_SCHEMA = {
100
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
101
+ "$ref": "#/$defs/Response",
102
+ "$defs": {
103
+ "Response": {
104
+ "$anchor": "response",
105
+ "title": "Auth Passkey Invite Revoke — response payload",
106
+ "type": "object",
107
+ "additionalProperties": false,
108
+ "required": [
109
+ "inviteId",
110
+ "revokedAt"
111
+ ],
112
+ "properties": {
113
+ "inviteId": {
114
+ "type": "string"
115
+ },
116
+ "revokedAt": {
117
+ "type": "string",
118
+ "format": "date-time"
119
+ },
120
+ "ext": {
121
+ "$ref": "#/$defs/Ext"
122
+ }
123
+ }
124
+ },
125
+ "Ext": {
126
+ "title": "Ext",
127
+ "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.",
128
+ "type": "object",
129
+ "minProperties": 1,
130
+ "additionalProperties": true,
131
+ "propertyNames": {
132
+ "pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
133
+ }
134
+ }
135
+ }
136
+ } as const;
137
+
138
+ /**
139
+ * SPEC.md §7.2 policy for the request variant, from this specification's
140
+ * front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
141
+ * per-specification and cannot be derived from the document alone, and
142
+ * item 2 needs the schema this carries.
143
+ */
144
+ export const SPEC = {
145
+ typeUri: TYPE_URI,
146
+ isBearer: false,
147
+ isProofRequired: true,
148
+ isRecipientRequired: true,
149
+ isIssuedAtRequired: true,
150
+ payloadSchema: PAYLOAD_SCHEMA,
151
+ } as const;
152
+
153
+ /**
154
+ * SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
155
+ * tracks the *issuer* party's requirement because a response swaps the
156
+ * parties (§7.3 item 5).
157
+ */
158
+ export const RESPONSE_SPEC = {
159
+ typeUri: RESPONSE_TYPE_URI,
160
+ isBearer: false,
161
+ isProofRequired: true,
162
+ isRecipientRequired: true,
163
+ isIssuedAtRequired: true,
164
+ payloadSchema: RESPONSE_PAYLOAD_SCHEMA,
165
+ } as const;
@@ -0,0 +1,327 @@
1
+ /**
2
+ * Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
3
+ * Source: specs/auth/passkey/enroll/invite/update/0.1/payload.schema.json
4
+ */
5
+
6
+ import type { Ext, InviteSummary_AuthV0_1 as InviteSummary } from "../../../../../../_shared/components.js";
7
+
8
+
9
+ export type AuthPasskeyInviteUpdatePayload = {
10
+ inviteId: string;
11
+ /**
12
+ * The role the invitee will receive. Absent leaves the role unchanged.
13
+ */
14
+ role?: string;
15
+ /**
16
+ * The new absolute expiry. Absent leaves the expiry unchanged unless extendBy is given. Mutually exclusive with extendBy.
17
+ */
18
+ expiresAt?: string;
19
+ /**
20
+ * Seconds to add to the time of processing to form the new expiry. Absent leaves the expiry unchanged unless expiresAt is given. Mutually exclusive with expiresAt.
21
+ */
22
+ extendBy?: number;
23
+ ext?: Ext;
24
+ } & {
25
+ [k: string]: unknown | undefined;
26
+ };
27
+
28
+ export interface AuthPasskeyInviteUpdateResponsePayload {
29
+ invite: InviteSummary;
30
+ ext?: Ext;
31
+ }
32
+
33
+ /** Shared definitions this specification references, re-exported under the names it used to declare them with. */
34
+ export type { Ext, InviteSummary };
35
+
36
+ /** Trust Task type URI. */
37
+ export const TYPE_URI = "https://trusttasks.org/spec/auth/passkey/enroll/invite/update/0.1" as const;
38
+
39
+ /** Stable alias for this specification's request payload shape. */
40
+ export type Payload = AuthPasskeyInviteUpdatePayload;
41
+
42
+ /** Trust Task response type URI (request type URI + "#response"). */
43
+ export const RESPONSE_TYPE_URI = "https://trusttasks.org/spec/auth/passkey/enroll/invite/update/0.1#response" as const;
44
+
45
+ /** Stable alias for this specification's success-response payload shape. */
46
+ export type Response = AuthPasskeyInviteUpdateResponsePayload;
47
+
48
+ /**
49
+ * This specification's payload schema, as a value.
50
+ *
51
+ * SPEC.md §7.2 item 2 is performed against this. It is shipped as data
52
+ * rather than only as a `.json` file because TypeScript types are erased
53
+ * at runtime: without a schema a consumer has nothing to validate, and
54
+ * every REQUIRED payload member is optional in practice. Cross-file
55
+ * `$ref`s are already inlined, so it needs no resolver.
56
+ */
57
+ export const PAYLOAD_SCHEMA = {
58
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
59
+ "$id": "https://trusttasks.org/spec/auth/passkey/enroll/invite/update/0.1",
60
+ "title": "Auth Passkey Invite Update — payload",
61
+ "type": "object",
62
+ "additionalProperties": false,
63
+ "required": [
64
+ "inviteId"
65
+ ],
66
+ "oneOf": [
67
+ {
68
+ "required": [
69
+ "role"
70
+ ],
71
+ "not": {
72
+ "anyOf": [
73
+ {
74
+ "required": [
75
+ "expiresAt"
76
+ ]
77
+ },
78
+ {
79
+ "required": [
80
+ "extendBy"
81
+ ]
82
+ }
83
+ ]
84
+ }
85
+ },
86
+ {
87
+ "required": [
88
+ "expiresAt"
89
+ ],
90
+ "not": {
91
+ "required": [
92
+ "extendBy"
93
+ ]
94
+ }
95
+ },
96
+ {
97
+ "required": [
98
+ "extendBy"
99
+ ],
100
+ "not": {
101
+ "required": [
102
+ "expiresAt"
103
+ ]
104
+ }
105
+ }
106
+ ],
107
+ "properties": {
108
+ "inviteId": {
109
+ "type": "string",
110
+ "minLength": 1,
111
+ "maxLength": 128
112
+ },
113
+ "role": {
114
+ "type": "string",
115
+ "minLength": 1,
116
+ "description": "The role the invitee will receive. Absent leaves the role unchanged."
117
+ },
118
+ "expiresAt": {
119
+ "type": "string",
120
+ "format": "date-time",
121
+ "description": "The new absolute expiry. Absent leaves the expiry unchanged unless extendBy is given. Mutually exclusive with extendBy."
122
+ },
123
+ "extendBy": {
124
+ "type": "integer",
125
+ "minimum": 1,
126
+ "description": "Seconds to add to the time of processing to form the new expiry. Absent leaves the expiry unchanged unless expiresAt is given. Mutually exclusive with expiresAt."
127
+ },
128
+ "ext": {
129
+ "$ref": "#/$defs/Ext"
130
+ }
131
+ },
132
+ "$defs": {
133
+ "Response": {
134
+ "$anchor": "response",
135
+ "title": "Auth Passkey Invite Update — response payload",
136
+ "type": "object",
137
+ "additionalProperties": false,
138
+ "required": [
139
+ "invite"
140
+ ],
141
+ "properties": {
142
+ "invite": {
143
+ "$ref": "#/$defs/InviteSummary"
144
+ },
145
+ "ext": {
146
+ "$ref": "#/$defs/Ext"
147
+ }
148
+ }
149
+ },
150
+ "Ext": {
151
+ "title": "Ext",
152
+ "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.",
153
+ "type": "object",
154
+ "minProperties": 1,
155
+ "additionalProperties": true,
156
+ "propertyNames": {
157
+ "pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
158
+ }
159
+ },
160
+ "InviteSummary": {
161
+ "$anchor": "inviteSummary",
162
+ "title": "InviteSummary",
163
+ "type": "object",
164
+ "additionalProperties": false,
165
+ "required": [
166
+ "inviteId",
167
+ "subject",
168
+ "purpose",
169
+ "createdAt",
170
+ "expiresAt",
171
+ "expired"
172
+ ],
173
+ "properties": {
174
+ "inviteId": {
175
+ "type": "string",
176
+ "minLength": 1,
177
+ "maxLength": 128,
178
+ "description": "Consumer-chosen opaque handle for the invite. It is NOT the invite token and MUST NOT be derivable into it; knowing it lets an administrator manage the invite, never redeem it."
179
+ },
180
+ "subject": {
181
+ "type": "string",
182
+ "minLength": 1,
183
+ "description": "The VID the invite binds a passkey to."
184
+ },
185
+ "purpose": {
186
+ "type": "string",
187
+ "enum": [
188
+ "session",
189
+ "stepUp"
190
+ ],
191
+ "description": "What the redeemed credential may authenticate, as in auth/passkey/enroll/invite."
192
+ },
193
+ "role": {
194
+ "type": "string",
195
+ "description": "The role the invitee receives on redemption. Absent when the consumer applies its default role, and always absent for purpose stepUp."
196
+ },
197
+ "createdAt": {
198
+ "type": "string",
199
+ "format": "date-time"
200
+ },
201
+ "expiresAt": {
202
+ "type": "string",
203
+ "format": "date-time"
204
+ },
205
+ "expired": {
206
+ "type": "boolean",
207
+ "description": "True when expiresAt has passed. An expired invite can no longer be redeemed; it is listed until the consumer's cleanup removes it."
208
+ }
209
+ }
210
+ }
211
+ }
212
+ } as const;
213
+
214
+ /** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
215
+ export const RESPONSE_PAYLOAD_SCHEMA = {
216
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
217
+ "$ref": "#/$defs/Response",
218
+ "$defs": {
219
+ "Response": {
220
+ "$anchor": "response",
221
+ "title": "Auth Passkey Invite Update — response payload",
222
+ "type": "object",
223
+ "additionalProperties": false,
224
+ "required": [
225
+ "invite"
226
+ ],
227
+ "properties": {
228
+ "invite": {
229
+ "$ref": "#/$defs/InviteSummary"
230
+ },
231
+ "ext": {
232
+ "$ref": "#/$defs/Ext"
233
+ }
234
+ }
235
+ },
236
+ "Ext": {
237
+ "title": "Ext",
238
+ "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.",
239
+ "type": "object",
240
+ "minProperties": 1,
241
+ "additionalProperties": true,
242
+ "propertyNames": {
243
+ "pattern": "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$"
244
+ }
245
+ },
246
+ "InviteSummary": {
247
+ "$anchor": "inviteSummary",
248
+ "title": "InviteSummary",
249
+ "type": "object",
250
+ "additionalProperties": false,
251
+ "required": [
252
+ "inviteId",
253
+ "subject",
254
+ "purpose",
255
+ "createdAt",
256
+ "expiresAt",
257
+ "expired"
258
+ ],
259
+ "properties": {
260
+ "inviteId": {
261
+ "type": "string",
262
+ "minLength": 1,
263
+ "maxLength": 128,
264
+ "description": "Consumer-chosen opaque handle for the invite. It is NOT the invite token and MUST NOT be derivable into it; knowing it lets an administrator manage the invite, never redeem it."
265
+ },
266
+ "subject": {
267
+ "type": "string",
268
+ "minLength": 1,
269
+ "description": "The VID the invite binds a passkey to."
270
+ },
271
+ "purpose": {
272
+ "type": "string",
273
+ "enum": [
274
+ "session",
275
+ "stepUp"
276
+ ],
277
+ "description": "What the redeemed credential may authenticate, as in auth/passkey/enroll/invite."
278
+ },
279
+ "role": {
280
+ "type": "string",
281
+ "description": "The role the invitee receives on redemption. Absent when the consumer applies its default role, and always absent for purpose stepUp."
282
+ },
283
+ "createdAt": {
284
+ "type": "string",
285
+ "format": "date-time"
286
+ },
287
+ "expiresAt": {
288
+ "type": "string",
289
+ "format": "date-time"
290
+ },
291
+ "expired": {
292
+ "type": "boolean",
293
+ "description": "True when expiresAt has passed. An expired invite can no longer be redeemed; it is listed until the consumer's cleanup removes it."
294
+ }
295
+ }
296
+ }
297
+ }
298
+ } as const;
299
+
300
+ /**
301
+ * SPEC.md §7.2 policy for the request variant, from this specification's
302
+ * front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
303
+ * per-specification and cannot be derived from the document alone, and
304
+ * item 2 needs the schema this carries.
305
+ */
306
+ export const SPEC = {
307
+ typeUri: TYPE_URI,
308
+ isBearer: false,
309
+ isProofRequired: true,
310
+ isRecipientRequired: true,
311
+ isIssuedAtRequired: true,
312
+ payloadSchema: PAYLOAD_SCHEMA,
313
+ } as const;
314
+
315
+ /**
316
+ * SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
317
+ * tracks the *issuer* party's requirement because a response swaps the
318
+ * parties (§7.3 item 5).
319
+ */
320
+ export const RESPONSE_SPEC = {
321
+ typeUri: RESPONSE_TYPE_URI,
322
+ isBearer: false,
323
+ isProofRequired: true,
324
+ isRecipientRequired: true,
325
+ isIssuedAtRequired: true,
326
+ payloadSchema: RESPONSE_PAYLOAD_SCHEMA,
327
+ } as const;