@openvtc/trust-tasks 0.23.7 → 0.23.9

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 (312) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/dist/_shared/components.d.ts +2451 -4
  3. package/dist/_shared/components.d.ts.map +1 -1
  4. package/dist/auth/oob/_shared/0.1/oob.d.ts +16 -0
  5. package/dist/auth/oob/_shared/0.1/oob.d.ts.map +1 -0
  6. package/dist/auth/oob/_shared/0.1/oob.js +6 -0
  7. package/dist/auth/oob/_shared/0.1/oob.js.map +1 -0
  8. package/dist/auth/oob/cancel/0.1/payload.d.ts +262 -0
  9. package/dist/auth/oob/cancel/0.1/payload.d.ts.map +1 -0
  10. package/dist/auth/oob/cancel/0.1/payload.js +153 -0
  11. package/dist/auth/oob/cancel/0.1/payload.js.map +1 -0
  12. package/dist/auth/oob/claim/0.1/payload.d.ts +463 -0
  13. package/dist/auth/oob/claim/0.1/payload.d.ts.map +1 -0
  14. package/dist/auth/oob/claim/0.1/payload.js +264 -0
  15. package/dist/auth/oob/claim/0.1/payload.js.map +1 -0
  16. package/dist/auth/oob/grant/0.1/payload.d.ts +212 -0
  17. package/dist/auth/oob/grant/0.1/payload.d.ts.map +1 -0
  18. package/dist/auth/oob/grant/0.1/payload.js +117 -0
  19. package/dist/auth/oob/grant/0.1/payload.js.map +1 -0
  20. package/dist/auth/oob/identify/0.1/payload.d.ts +145 -0
  21. package/dist/auth/oob/identify/0.1/payload.d.ts.map +1 -0
  22. package/dist/auth/oob/identify/0.1/payload.js +81 -0
  23. package/dist/auth/oob/identify/0.1/payload.js.map +1 -0
  24. package/dist/auth/oob/prove/0.1/payload.d.ts +740 -0
  25. package/dist/auth/oob/prove/0.1/payload.d.ts.map +1 -0
  26. package/dist/auth/oob/prove/0.1/payload.js +422 -0
  27. package/dist/auth/oob/prove/0.1/payload.js.map +1 -0
  28. package/dist/auth/oob/redeem/0.1/payload.d.ts +364 -0
  29. package/dist/auth/oob/redeem/0.1/payload.d.ts.map +1 -0
  30. package/dist/auth/oob/redeem/0.1/payload.js +199 -0
  31. package/dist/auth/oob/redeem/0.1/payload.js.map +1 -0
  32. package/dist/auth/oob/request/0.1/payload.d.ts +330 -0
  33. package/dist/auth/oob/request/0.1/payload.d.ts.map +1 -0
  34. package/dist/auth/oob/request/0.1/payload.js +193 -0
  35. package/dist/auth/oob/request/0.1/payload.js.map +1 -0
  36. package/dist/auth/oob/respond/0.1/payload.d.ts +235 -0
  37. package/dist/auth/oob/respond/0.1/payload.d.ts.map +1 -0
  38. package/dist/auth/oob/respond/0.1/payload.js +140 -0
  39. package/dist/auth/oob/respond/0.1/payload.js.map +1 -0
  40. package/dist/device/list/0.1/payload.d.ts +4 -4
  41. package/dist/device/list/0.1/payload.d.ts.map +1 -1
  42. package/dist/device/list/0.1/payload.js +6 -2
  43. package/dist/device/list/0.1/payload.js.map +1 -1
  44. package/dist/device/list/0.2/payload.d.ts +4 -4
  45. package/dist/device/list/0.2/payload.d.ts.map +1 -1
  46. package/dist/device/list/0.2/payload.js +6 -2
  47. package/dist/device/list/0.2/payload.js.map +1 -1
  48. package/dist/device/register/0.1/payload.d.ts +4 -4
  49. package/dist/device/register/0.1/payload.d.ts.map +1 -1
  50. package/dist/device/register/0.1/payload.js +6 -2
  51. package/dist/device/register/0.1/payload.js.map +1 -1
  52. package/dist/device/register/0.2/payload.d.ts +4 -4
  53. package/dist/device/register/0.2/payload.d.ts.map +1 -1
  54. package/dist/device/register/0.2/payload.js +6 -2
  55. package/dist/device/register/0.2/payload.js.map +1 -1
  56. package/dist/external/_shared/0.1/accounts.d.ts +18 -0
  57. package/dist/external/_shared/0.1/accounts.d.ts.map +1 -0
  58. package/dist/external/_shared/0.1/accounts.js +6 -0
  59. package/dist/external/_shared/0.1/accounts.js.map +1 -0
  60. package/dist/external/accounts/archive/0.1/payload.d.ts +2945 -0
  61. package/dist/external/accounts/archive/0.1/payload.d.ts.map +1 -0
  62. package/dist/external/accounts/archive/0.1/payload.js +1736 -0
  63. package/dist/external/accounts/archive/0.1/payload.js.map +1 -0
  64. package/dist/external/accounts/bindings/grant/0.1/payload.d.ts +2938 -0
  65. package/dist/external/accounts/bindings/grant/0.1/payload.d.ts.map +1 -0
  66. package/dist/external/accounts/bindings/grant/0.1/payload.js +1735 -0
  67. package/dist/external/accounts/bindings/grant/0.1/payload.js.map +1 -0
  68. package/dist/external/accounts/bindings/revoke/0.1/payload.d.ts +2958 -0
  69. package/dist/external/accounts/bindings/revoke/0.1/payload.d.ts.map +1 -0
  70. package/dist/external/accounts/bindings/revoke/0.1/payload.js +1743 -0
  71. package/dist/external/accounts/bindings/revoke/0.1/payload.js.map +1 -0
  72. package/dist/external/accounts/create/0.1/payload.d.ts +2954 -0
  73. package/dist/external/accounts/create/0.1/payload.d.ts.map +1 -0
  74. package/dist/external/accounts/create/0.1/payload.js +1742 -0
  75. package/dist/external/accounts/create/0.1/payload.js.map +1 -0
  76. package/dist/external/accounts/delete/0.1/payload.d.ts +310 -0
  77. package/dist/external/accounts/delete/0.1/payload.d.ts.map +1 -0
  78. package/dist/external/accounts/delete/0.1/payload.js +176 -0
  79. package/dist/external/accounts/delete/0.1/payload.js.map +1 -0
  80. package/dist/external/accounts/get/0.1/payload.d.ts +2931 -0
  81. package/dist/external/accounts/get/0.1/payload.d.ts.map +1 -0
  82. package/dist/external/accounts/get/0.1/payload.js +1731 -0
  83. package/dist/external/accounts/get/0.1/payload.js.map +1 -0
  84. package/dist/external/accounts/keys/rotate/0.1/payload.d.ts +3216 -0
  85. package/dist/external/accounts/keys/rotate/0.1/payload.d.ts.map +1 -0
  86. package/dist/external/accounts/keys/rotate/0.1/payload.js +1912 -0
  87. package/dist/external/accounts/keys/rotate/0.1/payload.js.map +1 -0
  88. package/dist/external/accounts/list/0.1/payload.d.ts +3034 -0
  89. package/dist/external/accounts/list/0.1/payload.d.ts.map +1 -0
  90. package/dist/external/accounts/list/0.1/payload.js +1791 -0
  91. package/dist/external/accounts/list/0.1/payload.js.map +1 -0
  92. package/dist/external/accounts/probe/0.1/payload.d.ts +511 -0
  93. package/dist/external/accounts/probe/0.1/payload.d.ts.map +1 -0
  94. package/dist/external/accounts/probe/0.1/payload.js +307 -0
  95. package/dist/external/accounts/probe/0.1/payload.js.map +1 -0
  96. package/dist/external/accounts/restore/0.1/payload.d.ts +2945 -0
  97. package/dist/external/accounts/restore/0.1/payload.d.ts.map +1 -0
  98. package/dist/external/accounts/restore/0.1/payload.js +1736 -0
  99. package/dist/external/accounts/restore/0.1/payload.js.map +1 -0
  100. package/dist/external/accounts/resume/0.1/payload.d.ts +2945 -0
  101. package/dist/external/accounts/resume/0.1/payload.d.ts.map +1 -0
  102. package/dist/external/accounts/resume/0.1/payload.js +1736 -0
  103. package/dist/external/accounts/resume/0.1/payload.js.map +1 -0
  104. package/dist/external/accounts/secret/set/0.1/payload.d.ts +379 -0
  105. package/dist/external/accounts/secret/set/0.1/payload.d.ts.map +1 -0
  106. package/dist/external/accounts/secret/set/0.1/payload.js +212 -0
  107. package/dist/external/accounts/secret/set/0.1/payload.js.map +1 -0
  108. package/dist/external/accounts/setup/0.1/payload.d.ts +535 -0
  109. package/dist/external/accounts/setup/0.1/payload.d.ts.map +1 -0
  110. package/dist/external/accounts/setup/0.1/payload.js +325 -0
  111. package/dist/external/accounts/setup/0.1/payload.js.map +1 -0
  112. package/dist/external/accounts/suspend/0.1/payload.d.ts +2945 -0
  113. package/dist/external/accounts/suspend/0.1/payload.d.ts.map +1 -0
  114. package/dist/external/accounts/suspend/0.1/payload.js +1736 -0
  115. package/dist/external/accounts/suspend/0.1/payload.js.map +1 -0
  116. package/dist/external/accounts/update/0.1/payload.d.ts +2949 -0
  117. package/dist/external/accounts/update/0.1/payload.d.ts.map +1 -0
  118. package/dist/external/accounts/update/0.1/payload.js +1739 -0
  119. package/dist/external/accounts/update/0.1/payload.js.map +1 -0
  120. package/dist/external/credentials/issue/0.1/payload.d.ts +586 -0
  121. package/dist/external/credentials/issue/0.1/payload.d.ts.map +1 -0
  122. package/dist/external/credentials/issue/0.1/payload.js +322 -0
  123. package/dist/external/credentials/issue/0.1/payload.js.map +1 -0
  124. package/dist/external/sign/0.1/payload.d.ts +348 -0
  125. package/dist/external/sign/0.1/payload.d.ts.map +1 -0
  126. package/dist/external/sign/0.1/payload.js +193 -0
  127. package/dist/external/sign/0.1/payload.js.map +1 -0
  128. package/dist/index.d.ts +53 -0
  129. package/dist/index.d.ts.map +1 -1
  130. package/dist/index.js +53 -0
  131. package/dist/index.js.map +1 -1
  132. package/dist/rooms/_shared/0.1/blobs.d.ts +16 -0
  133. package/dist/rooms/_shared/0.1/blobs.d.ts.map +1 -0
  134. package/dist/rooms/_shared/0.1/blobs.js +6 -0
  135. package/dist/rooms/_shared/0.1/blobs.js.map +1 -0
  136. package/dist/rooms/_shared/0.1/room.d.ts +1 -1
  137. package/dist/rooms/_shared/0.1/room.d.ts.map +1 -1
  138. package/dist/rooms/blobs/chunk/0.1/payload.d.ts +375 -0
  139. package/dist/rooms/blobs/chunk/0.1/payload.d.ts.map +1 -0
  140. package/dist/rooms/blobs/chunk/0.1/payload.js +213 -0
  141. package/dist/rooms/blobs/chunk/0.1/payload.js.map +1 -0
  142. package/dist/rooms/blobs/get/0.1/payload.d.ts +743 -0
  143. package/dist/rooms/blobs/get/0.1/payload.d.ts.map +1 -0
  144. package/dist/rooms/blobs/get/0.1/payload.js +415 -0
  145. package/dist/rooms/blobs/get/0.1/payload.js.map +1 -0
  146. package/dist/rooms/blobs/upload/abort/0.1/payload.d.ts +263 -0
  147. package/dist/rooms/blobs/upload/abort/0.1/payload.d.ts.map +1 -0
  148. package/dist/rooms/blobs/upload/abort/0.1/payload.js +151 -0
  149. package/dist/rooms/blobs/upload/abort/0.1/payload.js.map +1 -0
  150. package/dist/rooms/blobs/upload/begin/0.1/payload.d.ts +793 -0
  151. package/dist/rooms/blobs/upload/begin/0.1/payload.d.ts.map +1 -0
  152. package/dist/rooms/blobs/upload/begin/0.1/payload.js +437 -0
  153. package/dist/rooms/blobs/upload/begin/0.1/payload.js.map +1 -0
  154. package/dist/rooms/blobs/upload/chunk/0.1/payload.d.ts +459 -0
  155. package/dist/rooms/blobs/upload/chunk/0.1/payload.d.ts.map +1 -0
  156. package/dist/rooms/blobs/upload/chunk/0.1/payload.js +256 -0
  157. package/dist/rooms/blobs/upload/chunk/0.1/payload.js.map +1 -0
  158. package/dist/rooms/blobs/upload/commit/0.1/payload.d.ts +326 -0
  159. package/dist/rooms/blobs/upload/commit/0.1/payload.d.ts.map +1 -0
  160. package/dist/rooms/blobs/upload/commit/0.1/payload.js +185 -0
  161. package/dist/rooms/blobs/upload/commit/0.1/payload.js.map +1 -0
  162. package/dist/rooms/info/0.1/payload.d.ts +897 -0
  163. package/dist/rooms/info/0.1/payload.d.ts.map +1 -0
  164. package/dist/rooms/info/0.1/payload.js +498 -0
  165. package/dist/rooms/info/0.1/payload.js.map +1 -0
  166. package/dist/rooms/keys/file-key/0.1/payload.d.ts +306 -0
  167. package/dist/rooms/keys/file-key/0.1/payload.d.ts.map +1 -0
  168. package/dist/rooms/keys/file-key/0.1/payload.js +167 -0
  169. package/dist/rooms/keys/file-key/0.1/payload.js.map +1 -0
  170. package/dist/rooms/records/get/0.2/payload.d.ts +954 -0
  171. package/dist/rooms/records/get/0.2/payload.d.ts.map +1 -0
  172. package/dist/rooms/records/get/0.2/payload.js +515 -0
  173. package/dist/rooms/records/get/0.2/payload.js.map +1 -0
  174. package/dist/rooms/records/list/0.2/payload.d.ts +854 -0
  175. package/dist/rooms/records/list/0.2/payload.d.ts.map +1 -0
  176. package/dist/rooms/records/list/0.2/payload.js +462 -0
  177. package/dist/rooms/records/list/0.2/payload.js.map +1 -0
  178. package/dist/rooms/records/put/0.2/payload.d.ts +679 -0
  179. package/dist/rooms/records/put/0.2/payload.d.ts.map +1 -0
  180. package/dist/rooms/records/put/0.2/payload.js +357 -0
  181. package/dist/rooms/records/put/0.2/payload.js.map +1 -0
  182. package/dist/rooms/usage/0.1/payload.d.ts +795 -0
  183. package/dist/rooms/usage/0.1/payload.d.ts.map +1 -0
  184. package/dist/rooms/usage/0.1/payload.js +417 -0
  185. package/dist/rooms/usage/0.1/payload.js.map +1 -0
  186. package/dist/vtc/_shared/0.1/room-storage.d.ts +16 -0
  187. package/dist/vtc/_shared/0.1/room-storage.d.ts.map +1 -0
  188. package/dist/vtc/_shared/0.1/room-storage.js +6 -0
  189. package/dist/vtc/_shared/0.1/room-storage.js.map +1 -0
  190. package/dist/vtc/rooms/get/0.1/payload.d.ts +1813 -0
  191. package/dist/vtc/rooms/get/0.1/payload.d.ts.map +1 -0
  192. package/dist/vtc/rooms/get/0.1/payload.js +892 -0
  193. package/dist/vtc/rooms/get/0.1/payload.js.map +1 -0
  194. package/dist/vtc/rooms/limits/set/0.1/payload.d.ts +873 -0
  195. package/dist/vtc/rooms/limits/set/0.1/payload.d.ts.map +1 -0
  196. package/dist/vtc/rooms/limits/set/0.1/payload.js +489 -0
  197. package/dist/vtc/rooms/limits/set/0.1/payload.js.map +1 -0
  198. package/dist/vtc/rooms/storage/assign/0.1/payload.d.ts +341 -0
  199. package/dist/vtc/rooms/storage/assign/0.1/payload.d.ts.map +1 -0
  200. package/dist/vtc/rooms/storage/assign/0.1/payload.js +191 -0
  201. package/dist/vtc/rooms/storage/assign/0.1/payload.js.map +1 -0
  202. package/dist/vtc/rooms/storage/migrate/0.1/payload.d.ts +452 -0
  203. package/dist/vtc/rooms/storage/migrate/0.1/payload.d.ts.map +1 -0
  204. package/dist/vtc/rooms/storage/migrate/0.1/payload.js +260 -0
  205. package/dist/vtc/rooms/storage/migrate/0.1/payload.js.map +1 -0
  206. package/dist/vtc/rooms/usage/0.1/payload.d.ts +880 -0
  207. package/dist/vtc/rooms/usage/0.1/payload.d.ts.map +1 -0
  208. package/dist/vtc/rooms/usage/0.1/payload.js +457 -0
  209. package/dist/vtc/rooms/usage/0.1/payload.js.map +1 -0
  210. package/dist/vtc/storage/configs/create/0.1/payload.d.ts +1272 -0
  211. package/dist/vtc/storage/configs/create/0.1/payload.d.ts.map +1 -0
  212. package/dist/vtc/storage/configs/create/0.1/payload.js +737 -0
  213. package/dist/vtc/storage/configs/create/0.1/payload.js.map +1 -0
  214. package/dist/vtc/storage/configs/get/0.1/payload.d.ts +1750 -0
  215. package/dist/vtc/storage/configs/get/0.1/payload.d.ts.map +1 -0
  216. package/dist/vtc/storage/configs/get/0.1/payload.js +1019 -0
  217. package/dist/vtc/storage/configs/get/0.1/payload.js.map +1 -0
  218. package/dist/vtc/storage/configs/list/0.1/payload.d.ts +1851 -0
  219. package/dist/vtc/storage/configs/list/0.1/payload.d.ts.map +1 -0
  220. package/dist/vtc/storage/configs/list/0.1/payload.js +1069 -0
  221. package/dist/vtc/storage/configs/list/0.1/payload.js.map +1 -0
  222. package/dist/vtc/storage/configs/probe/0.1/payload.d.ts +459 -0
  223. package/dist/vtc/storage/configs/probe/0.1/payload.d.ts.map +1 -0
  224. package/dist/vtc/storage/configs/probe/0.1/payload.js +267 -0
  225. package/dist/vtc/storage/configs/probe/0.1/payload.js.map +1 -0
  226. package/dist/vtc/storage/configs/retire/0.1/payload.d.ts +294 -0
  227. package/dist/vtc/storage/configs/retire/0.1/payload.d.ts.map +1 -0
  228. package/dist/vtc/storage/configs/retire/0.1/payload.js +176 -0
  229. package/dist/vtc/storage/configs/retire/0.1/payload.js.map +1 -0
  230. package/dist/vtc/storage/configs/update/0.1/payload.d.ts +1274 -0
  231. package/dist/vtc/storage/configs/update/0.1/payload.d.ts.map +1 -0
  232. package/dist/vtc/storage/configs/update/0.1/payload.js +736 -0
  233. package/dist/vtc/storage/configs/update/0.1/payload.js.map +1 -0
  234. package/dist/vtc/storage/credentials/set/0.1/payload.d.ts +511 -0
  235. package/dist/vtc/storage/credentials/set/0.1/payload.d.ts.map +1 -0
  236. package/dist/vtc/storage/credentials/set/0.1/payload.js +293 -0
  237. package/dist/vtc/storage/credentials/set/0.1/payload.js.map +1 -0
  238. package/dist/vtc/vetting/hidden/publish/0.1/payload.d.ts +69 -8
  239. package/dist/vtc/vetting/hidden/publish/0.1/payload.d.ts.map +1 -1
  240. package/dist/vtc/vetting/hidden/publish/0.1/payload.js +31 -0
  241. package/dist/vtc/vetting/hidden/publish/0.1/payload.js.map +1 -1
  242. package/dist/vtc/vetting/hidden/show/0.1/payload.d.ts +62 -8
  243. package/dist/vtc/vetting/hidden/show/0.1/payload.d.ts.map +1 -1
  244. package/dist/vtc/vetting/hidden/show/0.1/payload.js +28 -0
  245. package/dist/vtc/vetting/hidden/show/0.1/payload.js.map +1 -1
  246. package/dist/vtc/vetting/vetters/pcs-tokens/0.1/payload.d.ts +3 -3
  247. package/dist/vtc/vetting/vetters/pcs-tokens/0.1/payload.js +1 -1
  248. package/dist/vtc/vetting/vetters/pcs-tokens/0.1/payload.js.map +1 -1
  249. package/package.json +1 -1
  250. package/src/_shared/components.ts +2539 -4
  251. package/src/auth/oob/_shared/0.1/oob.ts +17 -0
  252. package/src/auth/oob/cancel/0.1/payload.ts +188 -0
  253. package/src/auth/oob/claim/0.1/payload.ts +306 -0
  254. package/src/auth/oob/grant/0.1/payload.ts +159 -0
  255. package/src/auth/oob/identify/0.1/payload.ts +110 -0
  256. package/src/auth/oob/prove/0.1/payload.ts +473 -0
  257. package/src/auth/oob/redeem/0.1/payload.ts +248 -0
  258. package/src/auth/oob/request/0.1/payload.ts +230 -0
  259. package/src/auth/oob/respond/0.1/payload.ts +178 -0
  260. package/src/device/list/0.1/payload.ts +6 -2
  261. package/src/device/list/0.2/payload.ts +6 -2
  262. package/src/device/register/0.1/payload.ts +6 -2
  263. package/src/device/register/0.2/payload.ts +6 -2
  264. package/src/external/_shared/0.1/accounts.ts +19 -0
  265. package/src/external/accounts/archive/0.1/payload.ts +1770 -0
  266. package/src/external/accounts/bindings/grant/0.1/payload.ts +1766 -0
  267. package/src/external/accounts/bindings/revoke/0.1/payload.ts +1778 -0
  268. package/src/external/accounts/create/0.1/payload.ts +1777 -0
  269. package/src/external/accounts/delete/0.1/payload.ts +211 -0
  270. package/src/external/accounts/get/0.1/payload.ts +1761 -0
  271. package/src/external/accounts/keys/rotate/0.1/payload.ts +1947 -0
  272. package/src/external/accounts/list/0.1/payload.ts +1834 -0
  273. package/src/external/accounts/probe/0.1/payload.ts +337 -0
  274. package/src/external/accounts/restore/0.1/payload.ts +1770 -0
  275. package/src/external/accounts/resume/0.1/payload.ts +1770 -0
  276. package/src/external/accounts/secret/set/0.1/payload.ts +248 -0
  277. package/src/external/accounts/setup/0.1/payload.ts +355 -0
  278. package/src/external/accounts/suspend/0.1/payload.ts +1770 -0
  279. package/src/external/accounts/update/0.1/payload.ts +1771 -0
  280. package/src/external/credentials/issue/0.1/payload.ts +365 -0
  281. package/src/external/sign/0.1/payload.ts +234 -0
  282. package/src/index.ts +53 -0
  283. package/src/rooms/_shared/0.1/blobs.ts +17 -0
  284. package/src/rooms/_shared/0.1/room.ts +1 -1
  285. package/src/rooms/blobs/chunk/0.1/payload.ts +251 -0
  286. package/src/rooms/blobs/get/0.1/payload.ts +463 -0
  287. package/src/rooms/blobs/upload/abort/0.1/payload.ts +187 -0
  288. package/src/rooms/blobs/upload/begin/0.1/payload.ts +491 -0
  289. package/src/rooms/blobs/upload/chunk/0.1/payload.ts +304 -0
  290. package/src/rooms/blobs/upload/commit/0.1/payload.ts +224 -0
  291. package/src/rooms/info/0.1/payload.ts +572 -0
  292. package/src/rooms/keys/file-key/0.1/payload.ts +224 -0
  293. package/src/rooms/records/get/0.2/payload.ts +614 -0
  294. package/src/rooms/records/list/0.2/payload.ts +533 -0
  295. package/src/rooms/records/put/0.2/payload.ts +441 -0
  296. package/src/rooms/usage/0.1/payload.ts +499 -0
  297. package/src/vtc/_shared/0.1/room-storage.ts +17 -0
  298. package/src/vtc/rooms/get/0.1/payload.ts +1275 -0
  299. package/src/vtc/rooms/limits/set/0.1/payload.ts +555 -0
  300. package/src/vtc/rooms/storage/assign/0.1/payload.ts +237 -0
  301. package/src/vtc/rooms/storage/migrate/0.1/payload.ts +317 -0
  302. package/src/vtc/rooms/usage/0.1/payload.ts +568 -0
  303. package/src/vtc/storage/configs/create/0.1/payload.ts +784 -0
  304. package/src/vtc/storage/configs/get/0.1/payload.ts +1054 -0
  305. package/src/vtc/storage/configs/list/0.1/payload.ts +1121 -0
  306. package/src/vtc/storage/configs/probe/0.1/payload.ts +329 -0
  307. package/src/vtc/storage/configs/retire/0.1/payload.ts +211 -0
  308. package/src/vtc/storage/configs/update/0.1/payload.ts +783 -0
  309. package/src/vtc/storage/credentials/set/0.1/payload.ts +339 -0
  310. package/src/vtc/vetting/hidden/publish/0.1/payload.ts +39 -0
  311. package/src/vtc/vetting/hidden/show/0.1/payload.ts +35 -0
  312. package/src/vtc/vetting/vetters/pcs-tokens/0.1/payload.ts +2 -2
@@ -16,6 +16,320 @@
16
16
  * An Accepts criterion's identifier, chosen by the registering administrator — a ceremony purpose or a named manifest criterion, e.g. `membership`. Compared as an exact string after surrounding whitespace is trimmed. Bounded at 128 characters, the bound vtc/join-requests/manifest/0.2 places on the criterion `id` it publishes.
17
17
  */
18
18
  export type AcceptsCriterionId = string;
19
+ /**
20
+ * The custodian context that owns the account. Act scope in this context decides who may manage the account and who may consume it; the account's keys are derived in this context's key space.
21
+ */
22
+ export type AccountContextId = string;
23
+ /**
24
+ * The account's identifier within its context, chosen by whoever creates it. Lowercase letters, digits and hyphens, so that it can be embedded in a certificate subject, a token subject or a provider-side condition without escaping. Unique per context; never reused after deletion while anything that names it (a provider-side trust policy, an audit row) may still exist.
25
+ */
26
+ export type AccountId = string;
27
+ /**
28
+ * `sign`: the custodian signed its assertion, session request or test transaction. `exchange`: the provider issued a credential for it. `put`, `get`, `delete`: one canary object at the narrowest scope of the account's bindings. `decode`: for `sui-signer`, a built test transaction passed the allow-list (it is never submitted).
29
+ */
30
+ export type AccountProbeStep = "sign" | "exchange" | "put" | "get" | "delete" | "decode";
31
+ /**
32
+ * Per-model account settings, discriminated by `model`: every branch is an object whose `model` member is a `const`, which is what lets each generated binding emit a tagged union, so an unusable setting is answered as `external:invalidSettings` naming the member rather than as an unparseable payload. Never a secret: every value here is returned to anyone who may read the account. Branches are referred to by their `model` ("the `sui-signer` settings"). They carry no `title`, so that every binding renders each as a plain variant of this union.
33
+ */
34
+ export type AccountSettings =
35
+ | {
36
+ model: "aws-roles-anywhere";
37
+ region: AwsRegion;
38
+ /**
39
+ * The trust anchor holding the custodian's CA certificate. Recorded after the administrator creates it from external/accounts/setup.
40
+ */
41
+ trustAnchorArn: AwsArn;
42
+ profileArn: AwsArn;
43
+ roleArn: AwsArn;
44
+ /**
45
+ * When set, every issuance chains an AssumeRole into this role carrying the downscoping session policy, for deployments whose Roles Anywhere profile cannot carry one per request. Caps a credential at one hour.
46
+ */
47
+ chainedRoleArn?: AwsArn;
48
+ /**
49
+ * The S3 bucket issuances are scoped within. Required for an account whose bindings issue storage scopes.
50
+ */
51
+ bucket?: ProviderBucketName;
52
+ /**
53
+ * Where external/accounts/probe writes its canary when no binding names a narrower prefix. Lets a new account be probed before anything is bound to it. Absent, a probe of an account with no bindings stops after `exchange` and reports `complete: false`.
54
+ */
55
+ probePrefix?: ProviderObjectPrefix;
56
+ }
57
+ | {
58
+ model: "gcp-wif-pinned";
59
+ projectNumber: string;
60
+ poolId: string;
61
+ providerId: string;
62
+ /**
63
+ * When set, the federated token is exchanged for this service account's access token.
64
+ */
65
+ serviceAccount?: string;
66
+ /**
67
+ * The ID-token algorithm. ES256 unless the provider refuses it. Absent means ES256.
68
+ */
69
+ signingAlgorithm?: "ES256" | "RS256";
70
+ /**
71
+ * The GCS bucket issuances are scoped within, by a Credential Access Boundary.
72
+ */
73
+ bucket?: ProviderBucketName;
74
+ /**
75
+ * Where external/accounts/probe writes its canary when no binding names a narrower prefix. Lets a new account be probed before anything is bound to it. Absent, a probe of an account with no bindings stops after `exchange` and reports `complete: false`.
76
+ */
77
+ probePrefix?: ProviderObjectPrefix;
78
+ }
79
+ | {
80
+ model: "azure-cert";
81
+ tenantId: string;
82
+ clientId: string;
83
+ /**
84
+ * The `scope` requested at the token endpoint, such as `https://storage.azure.com/.default`.
85
+ */
86
+ tokenScope: string;
87
+ /**
88
+ * Absent means `login.microsoftonline.com`.
89
+ */
90
+ authorityHost?: string;
91
+ }
92
+ | {
93
+ model: "oauth2-private-key-jwt";
94
+ tokenEndpoint: ProviderHttpsUrl;
95
+ clientId: string;
96
+ /**
97
+ * The assertion's `aud`. Absent means `tokenEndpoint`.
98
+ */
99
+ audience?: string;
100
+ /**
101
+ * The scopes a binding may request, the ceiling for every issuance.
102
+ *
103
+ * @maxItems 64
104
+ */
105
+ scopes?: string[];
106
+ signingAlgorithm?: "ES256" | "RS256";
107
+ }
108
+ | {
109
+ model: "s3-static-presign";
110
+ endpoint: ProviderHttpsUrl;
111
+ /**
112
+ * The SigV4 signing region; `auto` for Cloudflare R2.
113
+ */
114
+ region: string;
115
+ bucket: ProviderBucketName;
116
+ /**
117
+ * Address the bucket in the path rather than the host name, as MinIO usually needs.
118
+ */
119
+ pathStyle?: boolean;
120
+ /**
121
+ * The access key's identifier. Not a secret: it appears in every presigned URL. The secret half is set with external/accounts/secret/set and never returned.
122
+ */
123
+ accessKeyId: string;
124
+ /**
125
+ * Where external/accounts/probe writes its canary when no binding names a narrower prefix. Lets a new account be probed before anything is bound to it. Absent, a probe of an account with no bindings stops after `exchange` and reports `complete: false`.
126
+ */
127
+ probePrefix?: ProviderObjectPrefix;
128
+ }
129
+ | {
130
+ model: "sui-signer";
131
+ network: "mainnet" | "testnet" | "devnet";
132
+ /**
133
+ * Every MoveCall command in a signed transaction must name one of these. For Walrus storage: the system package's `register_blob`, `certify_blob`, `extend_blob` and `delete_blob`, and the coin calls needed to pay for them.
134
+ *
135
+ * @minItems 1
136
+ * @maxItems 32
137
+ */
138
+ allowedCalls: [SuiMoveCall, ...SuiMoveCall[]];
139
+ /**
140
+ * Shared objects a transaction may take as input, such as the Walrus system and staking objects. Absent means any object the allowed calls accept.
141
+ *
142
+ * @maxItems 32
143
+ */
144
+ allowedObjects?: string[];
145
+ /**
146
+ * The largest gas budget one transaction may declare.
147
+ */
148
+ maxGasBudgetMist: number;
149
+ /**
150
+ * The total gas budget signed per rolling 24 hours.
151
+ */
152
+ maxGasPerDayMist: number;
153
+ /**
154
+ * Per coin type, the most a single transaction may spend or transfer out of the account's address, in the coin's smallest unit. A coin type not listed may not leave the address at all.
155
+ *
156
+ * @maxItems 8
157
+ */
158
+ maxCoinOutPerTx?:
159
+ | []
160
+ | [
161
+ {
162
+ coinType: string;
163
+ amount: number;
164
+ }
165
+ ]
166
+ | [
167
+ {
168
+ coinType: string;
169
+ amount: number;
170
+ },
171
+ {
172
+ coinType: string;
173
+ amount: number;
174
+ }
175
+ ]
176
+ | [
177
+ {
178
+ coinType: string;
179
+ amount: number;
180
+ },
181
+ {
182
+ coinType: string;
183
+ amount: number;
184
+ },
185
+ {
186
+ coinType: string;
187
+ amount: number;
188
+ }
189
+ ]
190
+ | [
191
+ {
192
+ coinType: string;
193
+ amount: number;
194
+ },
195
+ {
196
+ coinType: string;
197
+ amount: number;
198
+ },
199
+ {
200
+ coinType: string;
201
+ amount: number;
202
+ },
203
+ {
204
+ coinType: string;
205
+ amount: number;
206
+ }
207
+ ]
208
+ | [
209
+ {
210
+ coinType: string;
211
+ amount: number;
212
+ },
213
+ {
214
+ coinType: string;
215
+ amount: number;
216
+ },
217
+ {
218
+ coinType: string;
219
+ amount: number;
220
+ },
221
+ {
222
+ coinType: string;
223
+ amount: number;
224
+ },
225
+ {
226
+ coinType: string;
227
+ amount: number;
228
+ }
229
+ ]
230
+ | [
231
+ {
232
+ coinType: string;
233
+ amount: number;
234
+ },
235
+ {
236
+ coinType: string;
237
+ amount: number;
238
+ },
239
+ {
240
+ coinType: string;
241
+ amount: number;
242
+ },
243
+ {
244
+ coinType: string;
245
+ amount: number;
246
+ },
247
+ {
248
+ coinType: string;
249
+ amount: number;
250
+ },
251
+ {
252
+ coinType: string;
253
+ amount: number;
254
+ }
255
+ ]
256
+ | [
257
+ {
258
+ coinType: string;
259
+ amount: number;
260
+ },
261
+ {
262
+ coinType: string;
263
+ amount: number;
264
+ },
265
+ {
266
+ coinType: string;
267
+ amount: number;
268
+ },
269
+ {
270
+ coinType: string;
271
+ amount: number;
272
+ },
273
+ {
274
+ coinType: string;
275
+ amount: number;
276
+ },
277
+ {
278
+ coinType: string;
279
+ amount: number;
280
+ },
281
+ {
282
+ coinType: string;
283
+ amount: number;
284
+ }
285
+ ]
286
+ | [
287
+ {
288
+ coinType: string;
289
+ amount: number;
290
+ },
291
+ {
292
+ coinType: string;
293
+ amount: number;
294
+ },
295
+ {
296
+ coinType: string;
297
+ amount: number;
298
+ },
299
+ {
300
+ coinType: string;
301
+ amount: number;
302
+ },
303
+ {
304
+ coinType: string;
305
+ amount: number;
306
+ },
307
+ {
308
+ coinType: string;
309
+ amount: number;
310
+ },
311
+ {
312
+ coinType: string;
313
+ amount: number;
314
+ },
315
+ {
316
+ coinType: string;
317
+ amount: number;
318
+ }
319
+ ];
320
+ }
321
+ | {
322
+ model: "static-secret";
323
+ /**
324
+ * The custodian's driver that uses the secret: performs a login or token exchange and returns a short-lived result. A custodian refuses a driver it does not implement.
325
+ */
326
+ driver: string;
327
+ baseUrl: ProviderHttpsUrl;
328
+ };
329
+ /**
330
+ * `active`: usable by its bindings. `suspended`: every issuance and signature is refused at once; management reads continue; resumable. `archived`: hidden from default listings, refused for use, restorable. Deletion removes the record.
331
+ */
332
+ export type AccountState = "active" | "suspended" | "archived";
19
333
  /**
20
334
  * The account's role at the mediator. `standard` is an ordinary served account; `admin`/`rootAdmin` may administer other accounts; `mediator` is the mediator's own account. Only a rootAdmin may assign or modify the rootAdmin role.
21
335
  */
@@ -66,10 +380,29 @@ export type AuditAction =
66
380
  | "accountChangeQueueLimits"
67
381
  | "adminAdd"
68
382
  | "adminStrip";
383
+ /**
384
+ * How the account authenticates to its provider. Every model pins the custodian's verification material in the provider's own account, uploaded once, so no model requires the custodian to be reachable from the internet. `aws-roles-anywhere`: the custodian is the certificate authority of an IAM Roles Anywhere trust anchor, and signs CreateSession with a short-lived end-entity certificate it issued to the account's own key. `gcp-wif-pinned`: a Workload Identity Federation pool provider holds an uploaded JWKS; the custodian signs an ID token and exchanges it at Google's STS. `azure-cert`: a certificate uploaded to an Entra app registration; the custodian signs an RFC 7523 client assertion. `oauth2-private-key-jwt`: the same RFC 7523 client authentication against any token endpoint that registered the custodian's public key. `s3-static-presign`: an access-key pair for an S3-compatible store that cannot federate; the custodian presigns per-object URLs and never releases the key. `sui-signer`: a Sui address derived from the custodian's key; the custodian signs only allow-listed transactions. `static-secret`: an API key or token used inside the custodian by a named driver; last resort, never released.
385
+ *
386
+ * Plain OpenID Connect discovery federation is deliberately absent. It works by the provider fetching the issuer's JWKS from a public URL, which either makes the custodian reachable from the internet or makes whoever hosts a copy of the JWKS able to mint credentials for every federated role.
387
+ */
388
+ export type AuthModel =
389
+ | "aws-roles-anywhere"
390
+ | "gcp-wif-pinned"
391
+ | "azure-cert"
392
+ | "oauth2-private-key-jwt"
393
+ | "s3-static-presign"
394
+ | "sui-signer"
395
+ | "static-secret";
69
396
  /**
70
397
  * An explicit authority scope — used for both the act scope and the approve scope of an entry. Exactly one of three shapes, discriminated by `scope`: `all`, `none`, or `contexts` with a NON-EMPTY list. The empty list is not a fourth shape: it is invalid, so a serializer that drops or empties the list produces a document that fails validation rather than one that silently means something else.
71
398
  */
72
399
  export type AuthorityScope = AuthorityScopeAll | AuthorityScopeNone | AuthorityScopeContexts;
400
+ export type AwsArn = string;
401
+ export type AwsRegion = string;
402
+ /**
403
+ * The name of one blob: the digest of its BlobManifest, taken over the manifest's RFC 8785 (JCS) canonicalization. sha2-256 is RECOMMENDED and MUST be implemented. Content addressing over ciphertext, never plaintext, so a BlobRef says nothing about what the file contains, and two uploads of one file have different BlobRefs (a fresh `fileId` gives a different key, and so different ciphertext). Rooms cannot be correlated by the files they share. Compared as decoded multihash bytes, never as encoded strings. A BlobRef is defined over the manifest's JSON, as this schema states it and RFC 8785 canonicalizes it, never over any binding's generated type: two bindings that model the manifest as distinct types still compute the same BlobRef from the same JSON.
404
+ */
405
+ export type BlobRef = DigestMultibase;
73
406
  /**
74
407
  * The control-plane account of a bundle transfer: which algorithm, on what terms, until when. Exactly one of the two shapes — they are mutually exclusive, since StreamDescriptor requires `transportUrl` and `transportToken` and forbids `chunks`, and ChunkedDescriptor requires `chunks` and forbids both.
75
408
  */
@@ -109,7 +442,9 @@ export type Capability_DeviceV0_1 =
109
442
  | "room-present"
110
443
  | "room-open"
111
444
  | "key-export"
112
- | "sign-sshsig";
445
+ | "sign-sshsig"
446
+ | "external-accounts-manage"
447
+ | "external-auth-use";
113
448
  /**
114
449
  * Fine-grained capability flag scoped to the device's allowed contexts. See SPEC.md for the full semantics of each. Capability values are additive: a consumer MUST ignore a value it does not recognise rather than reject the binding, and MUST NOT treat an unrecognised value as conferring anything.
115
450
  */
@@ -129,7 +464,9 @@ export type Capability_DeviceV0_2 =
129
464
  | "roomPresent"
130
465
  | "roomOpen"
131
466
  | "keyExport"
132
- | "signSshsig";
467
+ | "signSshsig"
468
+ | "externalAccountsManage"
469
+ | "externalAuthUse";
133
470
  /**
134
471
  * Number of chunks in the bundle, equal to ceil(expectedSizeBytes / chunkSize). Bounded at 4096 so that the manifest itself — one digest per chunk — fits in the single document that carries it under the same message-size reasoning as a chunk.
135
472
  */
@@ -154,6 +491,10 @@ export type ChunkSize = number;
154
491
  * The `x:` prefix is an open extension namespace and is not decoration. The closest prior art — Windows CardSpace's self-issued card — supported exactly fifteen predefined claim types with no extensibility, and that is the specific way it failed the requirement a holder actually has. An `x:` attribute stores, composes, binds and discloses exactly like a known one; it renders generically and matches only an explicit query.
155
492
  */
156
493
  export type ClaimType = string;
494
+ /**
495
+ * `active`: accepts new rooms and new uploads. `draining`: retired by an administrator while blobs still name it — refuses new rooms and new uploads, keeps serving reads, and becomes `retired` when a migration has emptied it. `retired`: refuses new rooms and new uploads and holds no blob. A config is never deleted while a blob names it.
496
+ */
497
+ export type ConfigState = "active" | "draining" | "retired";
157
498
  /**
158
499
  * Discriminator: is this consumer a user-driven Companion or a headless Service?
159
500
  */
@@ -330,6 +671,10 @@ export type ExpiresAt = string;
330
671
  * @minItems 1
331
672
  */
332
673
  export type ExtCritical = [string, ...string[]];
674
+ /**
675
+ * The identifier of an external account held by the community's VTA (the external/accounts/* family), which issues the community short-lived, room-scoped credentials and holds the long-lived authority itself.
676
+ */
677
+ export type ExternalAccountId = string;
333
678
  /**
334
679
  * Where a pool face may be worn. `anywhere` is the default and what an absent member means. `only` names the contexts it may be worn in, and a maintainer MUST refuse to wear it in any other (persona/binding/set `outsideReach`).
335
680
  *
@@ -433,6 +778,18 @@ export type LanguageTag = string;
433
778
  * Why the edge was suspended or restored, stored verbatim on the lifecycle event. Free text written by the caller — the edge's issuer or a moderating administrator — and read by the counterparty and by administrators; retained with the edge. Untrusted, attributed to its author wherever rendered, and never read by the community's state machine.
434
779
  */
435
780
  export type LifecycleReason = string;
781
+ /**
782
+ * Where an effective limit came from. `policy`: the community's rooms policy at the room's creation. `override`: an administrator's vtc/rooms/limits/set. `default`: the community's configured defaults, where neither applies. The host-wide ceiling bounds all three.
783
+ */
784
+ export type LimitSource = "policy" | "override" | "default";
785
+ /**
786
+ * The two-digit number the service chooses at claim, shows only to the starter (through redeem), and the approver types from the starter's screen. A string so that a leading zero survives.
787
+ */
788
+ export type MatchNumber = string;
789
+ /**
790
+ * How the request reaches the approver. A CLOSED list. Version 0.1 defines `scan`: the starter shows a trigger link (as a QR code that is also a clickable link, TRIGGER-LINK.md) and the approver's wallet reads it. `code` (a typed code of at least 8 characters, under strict rate limits) and `push` (sent to the approver's enrolled devices) are reserved names.
791
+ */
792
+ export type Mode = "scan";
436
793
  /**
437
794
  * Scopes one application's records within a context, so several tools can share a context without colliding — `openvtc`, `cnm`, an agent runtime. The maintainer MUST NOT interpret the value; it is an opaque partition name. Namespaces are first-come and unreserved, so an application SHOULD pick a stable, specific one: a future per-namespace ACL would grant on this exact string, which makes renaming a namespace a migration rather than an edit.
438
795
  */
@@ -441,6 +798,18 @@ export type Namespace = string;
441
798
  * The VTC's opaque identifier for a namespace, assigned when it is bound. Stable for the life of the binding; never reused for another binding.
442
799
  */
443
800
  export type NamespaceId = string;
801
+ /**
802
+ * A key prefix inside the bucket, ending in `/`, under which the config's `rooms/` tree is placed. Restricted to the S3 safe-character set so that it can be placed in a downscoped policy without escaping.
803
+ */
804
+ export type ObjectPrefix = string;
805
+ /**
806
+ * A starter key (`K_b`) or an approver lock key (`K_a`), as an Ed25519 `did:key` (`z6Mk…`) generated for this one request and used nowhere else. Ed25519 only: a service refuses any other key type with `auth/oob:keyUnsupported` before parsing beyond the multicodec prefix.
807
+ */
808
+ export type OobKey = string;
809
+ /**
810
+ * A web origin (`https://host[:port]`, no path, no trailing slash) — for `login`, the origin of the portal where the starter runs, which is the origin of the `serviceEndpoint` of the service's `SignInPortal` service in its DID document.
811
+ */
812
+ export type Origin = string;
444
813
  /**
445
814
  * A region or city name as the vetter writes it. Compared case-insensitively and otherwise exactly.
446
815
  */
@@ -555,6 +924,23 @@ export type Provenance =
555
924
  */
556
925
  derivedAt: string;
557
926
  };
927
+ /**
928
+ * A bucket name as S3 and GCS accept it. Validated rather than free so that it can be placed in a provider policy without escaping.
929
+ */
930
+ export type ProviderBucketName = string;
931
+ export type ProviderHttpsUrl = string;
932
+ /**
933
+ * `put`: write an object. `get`: read one. `delete`: remove one. No list, ACL, policy or bucket-level action exists here, so none can be granted.
934
+ */
935
+ export type ProviderObjectAction = "put" | "get" | "delete";
936
+ /**
937
+ * An object-key prefix within the account's bucket: one or more segments of lowercase letters, digits, `.`, `_` and `-`, each beginning with a letter or digit and ending with `/`. No quote, backslash, wildcard, whitespace, `..` segment or empty segment can appear. That is deliberate: the custodian places this value inside a provider policy — an IAM session policy (JSON), a GCS Credential Access Boundary condition (CEL) — and a value able to carry a metacharacter can break out of the string it is placed in and widen the policy. That is a known class of defect (CVE-2026-42811, a CEL injection in downscoped GCS credentials). Even with this pattern, a custodian MUST build provider policies with the provider language's own encoder, never by string interpolation.
938
+ */
939
+ export type ProviderObjectPrefix = string;
940
+ /**
941
+ * What the request is for. A CLOSED list: each purpose has a fixed row in CONVENTIONS.md §3 stating what is revealed at each step, what the grant contains, what redeem returns and the window lengths. Version 0.1 defines `login` only. `stepUp` and `deviceEnrol` are reserved names; adding one is a new version of this component and of every task that references it, never an in-place edit.
942
+ */
943
+ export type Purpose = "login";
558
944
  /**
559
945
  * A device's platform push channel — the body the device registers with its push GATEWAY (push wake-up binding, https://trusttasks.org/binding/push/0.1; modeled on Aries RFC 0699/0734). The gateway holds this token and returns an opaque WakeHandle in exchange; the token is held by the gateway ONLY, never by the mediator or the maintainer/VTA. The gateway uses it to send a contentless wake-up when an authorized trigger asks — the push payload never carries Trust Task content. Tagged union over the discriminator `platform`.
560
946
  */
@@ -625,6 +1011,10 @@ export type RepoResource = string;
625
1011
  * Repository visibility on the forge.
626
1012
  */
627
1013
  export type RepoVisibility = "public" | "private";
1014
+ /**
1015
+ * The service-generated handle of one request: 16 to 32 bytes from a cryptographically secure random source, written as unpadded base64url (22 to 43 characters; 16 bytes, 22 characters, is RECOMMENDED). It is also the nonce of the exchange, so the family needs no separate challenge, and it is the `_id` of the trigger link (VTI-LNK-033). Compared as a string. It confers no authority on its holder.
1016
+ */
1017
+ export type RequestId = string;
628
1018
  /**
629
1019
  * What the community asks an applicant to tell it about themselves, as claim types — never values. At most 32 entries, and no claim type twice: two answers to one question is a question nobody can answer. Self-asserted by the applicant when answered; a community MUST NOT describe an answer as verified. Empty means the community asks nothing.
630
1020
  *
@@ -675,6 +1065,10 @@ export type RotationState = "pendingApproval" | "staged" | "overlapping" | "comp
675
1065
  * How a consent prompt reaches the approver: `wake` pushes to the approver's device for a DID-signed decision; `bridge-relay` renders it through an enrolled bridge (e.g. a numbered card in the operator's messaging app) for a bridge-attested decision.
676
1066
  */
677
1067
  export type Route = "wake" | "bridge-relay";
1068
+ /**
1069
+ * Whether the starter's request and the approver's prove came from the same egress network, as the service saw them: `true`, `false`, or the string `unknown` when the service cannot tell. The service compares addresses; it never discloses them.
1070
+ */
1071
+ export type SameNetwork = boolean | "unknown";
678
1072
  /**
679
1073
  * An administrator's description of the entry, shown in administration surfaces. Free text written by the registering administrator and read by other administrators; untrusted, attributed to `createdByDid` wherever it is rendered, and never read by the community's own logic.
680
1074
  */
@@ -705,6 +1099,14 @@ export type SealedEnvelope_VaultV0_2 =
705
1099
  | DidcommAuthcryptEnvelope_VaultV0_2
706
1100
  | HpkeArmoredEnvelope_VaultV0_2
707
1101
  | TspMessageEnvelope_VaultV0_2;
1102
+ /**
1103
+ * A sealed-transfer bundle: OpenPGP-style ASCII armor around an HPKE-sealed `SealedPayloadV1` (base mode, X25519-HKDF-SHA256 KEM, HKDF-SHA256 KDF, ChaCha20-Poly1305 AEAD, info string `vta-sealed-transfer/v1`), with a producer assertion and Bundle-Id, Chunk and Digest-Algo headers bound into the associated data. Each task states the key it is sealed to: a single-use wrapping key from keys/import-wrapping-key for external/accounts/secret/set, and the caller's key-agreement key for external/credentials/issue. Its cleartext is an ExternalSecretPayload or an ExternalCredentialPayload. The only form in which secret material crosses the wire in this family, in either direction: the seal is what keeps a terminating proxy, a relay, a request log or a debug dump of "the response" from ever holding a usable secret, whatever transport carried the document.
1104
+ */
1105
+ export type SealedTransferBundle = string;
1106
+ /**
1107
+ * Which secret is set, without being a way to test guesses at it. `hmacsha256:` followed by the base64url encoding, without padding, of the first 16 bytes of HMAC-SHA256 over the secret's bytes under a fingerprint key the custodian holds and never discloses. Comparable only between fingerprints made by the same custodian: a re-entered value can be confirmed, while the same secret at two custodians gives unrelated fingerprints. Never a bare hash of the secret, which would let anyone who reads it run a dictionary against it offline; and deliberately not a DigestMultibase, since multihash has no code for a keyed digest.
1108
+ */
1109
+ export type SecretFingerprint = string;
708
1110
  /**
709
1111
  * Discriminator for the secret type stored in the entry. Definitions:
710
1112
  * - `password` — username + password (+ optional TOTP seed).
@@ -793,6 +1195,38 @@ export type SiteTarget_VaultV0_2 = WebOrigin_VaultV0_2 | Did_VaultV0_2 | IosApp_
793
1195
  * Other values are the holder's or the producer's own and carry no meaning a maintainer interprets.
794
1196
  */
795
1197
  export type Slot = string;
1198
+ /**
1199
+ * How the community authenticates to a config's backend. Absent on a `local` config, which needs none.
1200
+ *
1201
+ * `vta-account` (RECOMMENDED): an external account in the community's VTA. The VTA holds the long-lived authority; the community holds nothing that outlives a credential lifetime, and asks for credentials scoped to one room's prefix for at most 15 minutes, every issuance audited at the VTA. Required for a `walrus` config other than a `sealed` one, since the VTA's `sui-signer` account signs its storage transactions.
1202
+ *
1203
+ * `ambient`: the cloud identity of the machine the community runs on (an instance role, workload identity), downscoped to one room's prefix by the community itself. Not audited or rate-limited by the VTA, and usable by anything on that machine that reaches the metadata endpoint. Not valid for `walrus`.
1204
+ *
1205
+ * `sealed` (discouraged): a long-lived credential stored by the community, set with vtc/storage/credentials/set. Protects against every administrator through every surface the community offers; does not protect against whoever operates the machine.
1206
+ */
1207
+ export type StorageAuth =
1208
+ | {
1209
+ mode: "vta-account";
1210
+ account: ExternalAccountId;
1211
+ }
1212
+ | {
1213
+ mode: "ambient";
1214
+ }
1215
+ | {
1216
+ mode: "sealed";
1217
+ };
1218
+ /**
1219
+ * A storage config's identifier, chosen by the administrator who creates it and immutable thereafter: lowercase letters, digits and inner hyphens, at most 64 characters (`eu-s3-primary`, `walrus-main`). Unique within the community. Never reused after a config is retired, because blobs name their config by this value.
1220
+ */
1221
+ export type StorageConfigId = string;
1222
+ /**
1223
+ * Which backend a config stores to. `local`: plain files in a directory on the community's own host. `s3`: an S3-compatible object store (AWS S3, Cloudflare R2, Backblaze B2, MinIO). `gcs`: native Google Cloud Storage. `walrus`: the Walrus decentralised store, where every blob is public ciphertext and deletion is a lapse, not an erasure.
1224
+ */
1225
+ export type StorageKind = "local" | "s3" | "gcs" | "walrus";
1226
+ /**
1227
+ * A config's backend settings, discriminated by `kind`. Never a secret: a credential is a StorageAuth, held elsewhere.
1228
+ */
1229
+ export type StorageSettings = LocalSettings | S3Settings | GcsSettings | WalrusSettings;
796
1230
  /**
797
1231
  * Minutes between sweeps: at most every five minutes, at least once a day.
798
1232
  */
@@ -831,6 +1265,10 @@ export type TrafficStage =
831
1265
  | "deleted"
832
1266
  | "expired"
833
1267
  | "purged";
1268
+ /**
1269
+ * Handle for one upload (begin → chunk → commit or abort) or one download (get → chunk). Host-generated and unguessable, which is what lets a reference to another party's transfer be answered as not-found without confirming that it exists. Bound at creation to the party that opened it: the subject the host authenticated for the opening request. Opaque: a producer quotes what it was given.
1270
+ */
1271
+ export type TransferId = string;
834
1272
  /**
835
1273
  * A ULID in Crockford base32, uppercase. Used for `attributeId` and `profileId`. Chosen over a UUID because the leading 48 bits are a timestamp, so a key-ordered scan of the store is also creation-ordered and a `list` needs no secondary sort. Server-assigned on create; a producer MAY supply one to make a create idempotent, and a maintainer MUST reject a supplied value that already exists rather than silently overwriting.
836
1274
  */
@@ -1159,9 +1597,1665 @@ export interface Account {
1159
1597
  */
1160
1598
  lastAuthenticatedAt?: number;
1161
1599
  /**
1162
- * Lifetime counters the mediator keeps for this account. Present only when the request set `includeStats`.
1600
+ * Lifetime counters the mediator keeps for this account. Present only when the request set `includeStats`.
1601
+ */
1602
+ stats?: AccountStats;
1603
+ }
1604
+ /**
1605
+ * Who may use an account, and how far. One binding per consumer per account. A binding is checked before anything is signed: the caller must be `consumer`, proven by the request's own proof; the request must sit inside `scopeCeiling`; its TTL must not exceed `maxTtlSeconds`; and the binding's rate must not be exhausted.
1606
+ */
1607
+ export interface AccountBinding {
1608
+ /**
1609
+ * The DID of the integration allowed to use the account.
1610
+ */
1611
+ consumer: string;
1612
+ /**
1613
+ * Required for storage and OAuth models; absent for `sui-signer`, whose ceiling is the account's own allow-list and caps.
1614
+ */
1615
+ scopeCeiling?: CredentialScopeCeiling;
1616
+ /**
1617
+ * The longest credential lifetime the consumer may request. 900 (15 minutes) is RECOMMENDED; the ceiling is one hour.
1618
+ */
1619
+ maxTtlSeconds: number;
1620
+ /**
1621
+ * Issuances or signatures per minute for this binding.
1622
+ */
1623
+ ratePerMinute: number;
1624
+ /**
1625
+ * Where the provider supports it (`aws:SourceIp`), issued credentials are pinned to these networks, so a credential lifted from the consumer is useless elsewhere.
1626
+ *
1627
+ * @maxItems 16
1628
+ */
1629
+ sourceCidrs?:
1630
+ | []
1631
+ | [string]
1632
+ | [string, string]
1633
+ | [string, string, string]
1634
+ | [string, string, string, string]
1635
+ | [string, string, string, string, string]
1636
+ | [string, string, string, string, string, string]
1637
+ | [string, string, string, string, string, string, string]
1638
+ | [string, string, string, string, string, string, string, string]
1639
+ | [string, string, string, string, string, string, string, string, string]
1640
+ | [string, string, string, string, string, string, string, string, string, string]
1641
+ | [string, string, string, string, string, string, string, string, string, string, string]
1642
+ | [string, string, string, string, string, string, string, string, string, string, string, string]
1643
+ | [string, string, string, string, string, string, string, string, string, string, string, string, string]
1644
+ | [string, string, string, string, string, string, string, string, string, string, string, string, string, string]
1645
+ | [
1646
+ string,
1647
+ string,
1648
+ string,
1649
+ string,
1650
+ string,
1651
+ string,
1652
+ string,
1653
+ string,
1654
+ string,
1655
+ string,
1656
+ string,
1657
+ string,
1658
+ string,
1659
+ string,
1660
+ string
1661
+ ]
1662
+ | [
1663
+ string,
1664
+ string,
1665
+ string,
1666
+ string,
1667
+ string,
1668
+ string,
1669
+ string,
1670
+ string,
1671
+ string,
1672
+ string,
1673
+ string,
1674
+ string,
1675
+ string,
1676
+ string,
1677
+ string,
1678
+ string
1679
+ ];
1680
+ grantedAt?: string;
1681
+ }
1682
+ export interface AccountProbeReport {
1683
+ at: string;
1684
+ /**
1685
+ * True when every step that ran succeeded.
1686
+ */
1687
+ ok: boolean;
1688
+ /**
1689
+ * True only when the canary steps (`put`, `get`, `delete`, or the model's equivalent) ran, so the account was exercised end to end. A probe that stopped after `exchange` because nothing named a canary prefix is `complete: false` even when `ok` is true, and does not clear `providerSetupRequired`.
1690
+ */
1691
+ complete: boolean;
1692
+ /**
1693
+ * In order; the first failing step ends the probe.
1694
+ *
1695
+ * @maxItems 8
1696
+ */
1697
+ steps:
1698
+ | []
1699
+ | [
1700
+ {
1701
+ step: AccountProbeStep;
1702
+ ok: boolean;
1703
+ durationMs?: number;
1704
+ /**
1705
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1706
+ */
1707
+ providerError?: string;
1708
+ providerRequestId?: string;
1709
+ }
1710
+ ]
1711
+ | [
1712
+ {
1713
+ step: AccountProbeStep;
1714
+ ok: boolean;
1715
+ durationMs?: number;
1716
+ /**
1717
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1718
+ */
1719
+ providerError?: string;
1720
+ providerRequestId?: string;
1721
+ },
1722
+ {
1723
+ step: AccountProbeStep;
1724
+ ok: boolean;
1725
+ durationMs?: number;
1726
+ /**
1727
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1728
+ */
1729
+ providerError?: string;
1730
+ providerRequestId?: string;
1731
+ }
1732
+ ]
1733
+ | [
1734
+ {
1735
+ step: AccountProbeStep;
1736
+ ok: boolean;
1737
+ durationMs?: number;
1738
+ /**
1739
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1740
+ */
1741
+ providerError?: string;
1742
+ providerRequestId?: string;
1743
+ },
1744
+ {
1745
+ step: AccountProbeStep;
1746
+ ok: boolean;
1747
+ durationMs?: number;
1748
+ /**
1749
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1750
+ */
1751
+ providerError?: string;
1752
+ providerRequestId?: string;
1753
+ },
1754
+ {
1755
+ step: AccountProbeStep;
1756
+ ok: boolean;
1757
+ durationMs?: number;
1758
+ /**
1759
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1760
+ */
1761
+ providerError?: string;
1762
+ providerRequestId?: string;
1763
+ }
1764
+ ]
1765
+ | [
1766
+ {
1767
+ step: AccountProbeStep;
1768
+ ok: boolean;
1769
+ durationMs?: number;
1770
+ /**
1771
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1772
+ */
1773
+ providerError?: string;
1774
+ providerRequestId?: string;
1775
+ },
1776
+ {
1777
+ step: AccountProbeStep;
1778
+ ok: boolean;
1779
+ durationMs?: number;
1780
+ /**
1781
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1782
+ */
1783
+ providerError?: string;
1784
+ providerRequestId?: string;
1785
+ },
1786
+ {
1787
+ step: AccountProbeStep;
1788
+ ok: boolean;
1789
+ durationMs?: number;
1790
+ /**
1791
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1792
+ */
1793
+ providerError?: string;
1794
+ providerRequestId?: string;
1795
+ },
1796
+ {
1797
+ step: AccountProbeStep;
1798
+ ok: boolean;
1799
+ durationMs?: number;
1800
+ /**
1801
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1802
+ */
1803
+ providerError?: string;
1804
+ providerRequestId?: string;
1805
+ }
1806
+ ]
1807
+ | [
1808
+ {
1809
+ step: AccountProbeStep;
1810
+ ok: boolean;
1811
+ durationMs?: number;
1812
+ /**
1813
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1814
+ */
1815
+ providerError?: string;
1816
+ providerRequestId?: string;
1817
+ },
1818
+ {
1819
+ step: AccountProbeStep;
1820
+ ok: boolean;
1821
+ durationMs?: number;
1822
+ /**
1823
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1824
+ */
1825
+ providerError?: string;
1826
+ providerRequestId?: string;
1827
+ },
1828
+ {
1829
+ step: AccountProbeStep;
1830
+ ok: boolean;
1831
+ durationMs?: number;
1832
+ /**
1833
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1834
+ */
1835
+ providerError?: string;
1836
+ providerRequestId?: string;
1837
+ },
1838
+ {
1839
+ step: AccountProbeStep;
1840
+ ok: boolean;
1841
+ durationMs?: number;
1842
+ /**
1843
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1844
+ */
1845
+ providerError?: string;
1846
+ providerRequestId?: string;
1847
+ },
1848
+ {
1849
+ step: AccountProbeStep;
1850
+ ok: boolean;
1851
+ durationMs?: number;
1852
+ /**
1853
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1854
+ */
1855
+ providerError?: string;
1856
+ providerRequestId?: string;
1857
+ }
1858
+ ]
1859
+ | [
1860
+ {
1861
+ step: AccountProbeStep;
1862
+ ok: boolean;
1863
+ durationMs?: number;
1864
+ /**
1865
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1866
+ */
1867
+ providerError?: string;
1868
+ providerRequestId?: string;
1869
+ },
1870
+ {
1871
+ step: AccountProbeStep;
1872
+ ok: boolean;
1873
+ durationMs?: number;
1874
+ /**
1875
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1876
+ */
1877
+ providerError?: string;
1878
+ providerRequestId?: string;
1879
+ },
1880
+ {
1881
+ step: AccountProbeStep;
1882
+ ok: boolean;
1883
+ durationMs?: number;
1884
+ /**
1885
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1886
+ */
1887
+ providerError?: string;
1888
+ providerRequestId?: string;
1889
+ },
1890
+ {
1891
+ step: AccountProbeStep;
1892
+ ok: boolean;
1893
+ durationMs?: number;
1894
+ /**
1895
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1896
+ */
1897
+ providerError?: string;
1898
+ providerRequestId?: string;
1899
+ },
1900
+ {
1901
+ step: AccountProbeStep;
1902
+ ok: boolean;
1903
+ durationMs?: number;
1904
+ /**
1905
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1906
+ */
1907
+ providerError?: string;
1908
+ providerRequestId?: string;
1909
+ },
1910
+ {
1911
+ step: AccountProbeStep;
1912
+ ok: boolean;
1913
+ durationMs?: number;
1914
+ /**
1915
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1916
+ */
1917
+ providerError?: string;
1918
+ providerRequestId?: string;
1919
+ }
1920
+ ]
1921
+ | [
1922
+ {
1923
+ step: AccountProbeStep;
1924
+ ok: boolean;
1925
+ durationMs?: number;
1926
+ /**
1927
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1928
+ */
1929
+ providerError?: string;
1930
+ providerRequestId?: string;
1931
+ },
1932
+ {
1933
+ step: AccountProbeStep;
1934
+ ok: boolean;
1935
+ durationMs?: number;
1936
+ /**
1937
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1938
+ */
1939
+ providerError?: string;
1940
+ providerRequestId?: string;
1941
+ },
1942
+ {
1943
+ step: AccountProbeStep;
1944
+ ok: boolean;
1945
+ durationMs?: number;
1946
+ /**
1947
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1948
+ */
1949
+ providerError?: string;
1950
+ providerRequestId?: string;
1951
+ },
1952
+ {
1953
+ step: AccountProbeStep;
1954
+ ok: boolean;
1955
+ durationMs?: number;
1956
+ /**
1957
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1958
+ */
1959
+ providerError?: string;
1960
+ providerRequestId?: string;
1961
+ },
1962
+ {
1963
+ step: AccountProbeStep;
1964
+ ok: boolean;
1965
+ durationMs?: number;
1966
+ /**
1967
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1968
+ */
1969
+ providerError?: string;
1970
+ providerRequestId?: string;
1971
+ },
1972
+ {
1973
+ step: AccountProbeStep;
1974
+ ok: boolean;
1975
+ durationMs?: number;
1976
+ /**
1977
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1978
+ */
1979
+ providerError?: string;
1980
+ providerRequestId?: string;
1981
+ },
1982
+ {
1983
+ step: AccountProbeStep;
1984
+ ok: boolean;
1985
+ durationMs?: number;
1986
+ /**
1987
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
1988
+ */
1989
+ providerError?: string;
1990
+ providerRequestId?: string;
1991
+ }
1992
+ ]
1993
+ | [
1994
+ {
1995
+ step: AccountProbeStep;
1996
+ ok: boolean;
1997
+ durationMs?: number;
1998
+ /**
1999
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
2000
+ */
2001
+ providerError?: string;
2002
+ providerRequestId?: string;
2003
+ },
2004
+ {
2005
+ step: AccountProbeStep;
2006
+ ok: boolean;
2007
+ durationMs?: number;
2008
+ /**
2009
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
2010
+ */
2011
+ providerError?: string;
2012
+ providerRequestId?: string;
2013
+ },
2014
+ {
2015
+ step: AccountProbeStep;
2016
+ ok: boolean;
2017
+ durationMs?: number;
2018
+ /**
2019
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
2020
+ */
2021
+ providerError?: string;
2022
+ providerRequestId?: string;
2023
+ },
2024
+ {
2025
+ step: AccountProbeStep;
2026
+ ok: boolean;
2027
+ durationMs?: number;
2028
+ /**
2029
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
2030
+ */
2031
+ providerError?: string;
2032
+ providerRequestId?: string;
2033
+ },
2034
+ {
2035
+ step: AccountProbeStep;
2036
+ ok: boolean;
2037
+ durationMs?: number;
2038
+ /**
2039
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
2040
+ */
2041
+ providerError?: string;
2042
+ providerRequestId?: string;
2043
+ },
2044
+ {
2045
+ step: AccountProbeStep;
2046
+ ok: boolean;
2047
+ durationMs?: number;
2048
+ /**
2049
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
2050
+ */
2051
+ providerError?: string;
2052
+ providerRequestId?: string;
2053
+ },
2054
+ {
2055
+ step: AccountProbeStep;
2056
+ ok: boolean;
2057
+ durationMs?: number;
2058
+ /**
2059
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
2060
+ */
2061
+ providerError?: string;
2062
+ providerRequestId?: string;
2063
+ },
2064
+ {
2065
+ step: AccountProbeStep;
2066
+ ok: boolean;
2067
+ durationMs?: number;
2068
+ /**
2069
+ * The provider's error, verbatim and truncated, so an administrator sees the cloud's own words. Untrusted text. A custodian MUST remove any credential, signature or token from it first.
2070
+ */
2071
+ providerError?: string;
2072
+ providerRequestId?: string;
2073
+ }
2074
+ ];
2075
+ }
2076
+ /**
2077
+ * The public half of the account's key, as the provider needs it. Never a private key.
2078
+ */
2079
+ export interface AccountPublicMaterial {
2080
+ algorithm: "ES256" | "RS256" | "Secp256r1";
2081
+ /**
2082
+ * Digest of the public key's SubjectPublicKeyInfo DER.
2083
+ */
2084
+ keyFingerprint: DigestMultibase;
2085
+ /**
2086
+ * The public key as a JWK, with `kid`. Public members only: the schema admits no private member (`d`, `p`, `q`, `dp`, `dq`, `qi`), so a document carrying one fails validation.
2087
+ */
2088
+ publicKeyJwk?: {
2089
+ kty: "EC" | "RSA";
2090
+ crv?: "P-256";
2091
+ x?: string;
2092
+ y?: string;
2093
+ n?: string;
2094
+ e?: string;
2095
+ kid: string;
2096
+ alg?: "ES256" | "RS256";
2097
+ use?: "sig";
2098
+ };
2099
+ /**
2100
+ * `aws-roles-anywhere`: the trust anchor's CA certificate. `azure-cert`: the certificate uploaded to the app registration.
2101
+ */
2102
+ certificatePem?: string;
2103
+ /**
2104
+ * `sui-signer`: the Sui address the key controls.
2105
+ */
2106
+ address?: string;
2107
+ /**
2108
+ * During a rotation (external/accounts/keys/rotate), the staged successor key, until it is confirmed and the current key retires.
2109
+ */
2110
+ pendingKeyFingerprint?: DigestMultibase;
2111
+ }
2112
+ /**
2113
+ * That a static model's secret is set, and which one. Never its value.
2114
+ */
2115
+ export interface AccountSecretInfo {
2116
+ fingerprint: SecretFingerprint;
2117
+ setAt: string;
2118
+ }
2119
+ /**
2120
+ * What an administrator does at the provider to make an account usable, generated by the custodian from the account's settings, public material and bindings. Public material and policy only: never a private key or secret, and the custodian never asks for the provider's administrator credentials.
2121
+ */
2122
+ export interface AccountSetupArtifacts {
2123
+ model: AuthModel;
2124
+ /**
2125
+ * @maxItems 16
2126
+ */
2127
+ artifacts:
2128
+ | []
2129
+ | [
2130
+ {
2131
+ /**
2132
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2133
+ */
2134
+ name: string;
2135
+ mediaType: string;
2136
+ content: string;
2137
+ }
2138
+ ]
2139
+ | [
2140
+ {
2141
+ /**
2142
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2143
+ */
2144
+ name: string;
2145
+ mediaType: string;
2146
+ content: string;
2147
+ },
2148
+ {
2149
+ /**
2150
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2151
+ */
2152
+ name: string;
2153
+ mediaType: string;
2154
+ content: string;
2155
+ }
2156
+ ]
2157
+ | [
2158
+ {
2159
+ /**
2160
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2161
+ */
2162
+ name: string;
2163
+ mediaType: string;
2164
+ content: string;
2165
+ },
2166
+ {
2167
+ /**
2168
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2169
+ */
2170
+ name: string;
2171
+ mediaType: string;
2172
+ content: string;
2173
+ },
2174
+ {
2175
+ /**
2176
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2177
+ */
2178
+ name: string;
2179
+ mediaType: string;
2180
+ content: string;
2181
+ }
2182
+ ]
2183
+ | [
2184
+ {
2185
+ /**
2186
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2187
+ */
2188
+ name: string;
2189
+ mediaType: string;
2190
+ content: string;
2191
+ },
2192
+ {
2193
+ /**
2194
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2195
+ */
2196
+ name: string;
2197
+ mediaType: string;
2198
+ content: string;
2199
+ },
2200
+ {
2201
+ /**
2202
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2203
+ */
2204
+ name: string;
2205
+ mediaType: string;
2206
+ content: string;
2207
+ },
2208
+ {
2209
+ /**
2210
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2211
+ */
2212
+ name: string;
2213
+ mediaType: string;
2214
+ content: string;
2215
+ }
2216
+ ]
2217
+ | [
2218
+ {
2219
+ /**
2220
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2221
+ */
2222
+ name: string;
2223
+ mediaType: string;
2224
+ content: string;
2225
+ },
2226
+ {
2227
+ /**
2228
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2229
+ */
2230
+ name: string;
2231
+ mediaType: string;
2232
+ content: string;
2233
+ },
2234
+ {
2235
+ /**
2236
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2237
+ */
2238
+ name: string;
2239
+ mediaType: string;
2240
+ content: string;
2241
+ },
2242
+ {
2243
+ /**
2244
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2245
+ */
2246
+ name: string;
2247
+ mediaType: string;
2248
+ content: string;
2249
+ },
2250
+ {
2251
+ /**
2252
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2253
+ */
2254
+ name: string;
2255
+ mediaType: string;
2256
+ content: string;
2257
+ }
2258
+ ]
2259
+ | [
2260
+ {
2261
+ /**
2262
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2263
+ */
2264
+ name: string;
2265
+ mediaType: string;
2266
+ content: string;
2267
+ },
2268
+ {
2269
+ /**
2270
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2271
+ */
2272
+ name: string;
2273
+ mediaType: string;
2274
+ content: string;
2275
+ },
2276
+ {
2277
+ /**
2278
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2279
+ */
2280
+ name: string;
2281
+ mediaType: string;
2282
+ content: string;
2283
+ },
2284
+ {
2285
+ /**
2286
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2287
+ */
2288
+ name: string;
2289
+ mediaType: string;
2290
+ content: string;
2291
+ },
2292
+ {
2293
+ /**
2294
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2295
+ */
2296
+ name: string;
2297
+ mediaType: string;
2298
+ content: string;
2299
+ },
2300
+ {
2301
+ /**
2302
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2303
+ */
2304
+ name: string;
2305
+ mediaType: string;
2306
+ content: string;
2307
+ }
2308
+ ]
2309
+ | [
2310
+ {
2311
+ /**
2312
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2313
+ */
2314
+ name: string;
2315
+ mediaType: string;
2316
+ content: string;
2317
+ },
2318
+ {
2319
+ /**
2320
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2321
+ */
2322
+ name: string;
2323
+ mediaType: string;
2324
+ content: string;
2325
+ },
2326
+ {
2327
+ /**
2328
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2329
+ */
2330
+ name: string;
2331
+ mediaType: string;
2332
+ content: string;
2333
+ },
2334
+ {
2335
+ /**
2336
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2337
+ */
2338
+ name: string;
2339
+ mediaType: string;
2340
+ content: string;
2341
+ },
2342
+ {
2343
+ /**
2344
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2345
+ */
2346
+ name: string;
2347
+ mediaType: string;
2348
+ content: string;
2349
+ },
2350
+ {
2351
+ /**
2352
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2353
+ */
2354
+ name: string;
2355
+ mediaType: string;
2356
+ content: string;
2357
+ },
2358
+ {
2359
+ /**
2360
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2361
+ */
2362
+ name: string;
2363
+ mediaType: string;
2364
+ content: string;
2365
+ }
2366
+ ]
2367
+ | [
2368
+ {
2369
+ /**
2370
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2371
+ */
2372
+ name: string;
2373
+ mediaType: string;
2374
+ content: string;
2375
+ },
2376
+ {
2377
+ /**
2378
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2379
+ */
2380
+ name: string;
2381
+ mediaType: string;
2382
+ content: string;
2383
+ },
2384
+ {
2385
+ /**
2386
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2387
+ */
2388
+ name: string;
2389
+ mediaType: string;
2390
+ content: string;
2391
+ },
2392
+ {
2393
+ /**
2394
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2395
+ */
2396
+ name: string;
2397
+ mediaType: string;
2398
+ content: string;
2399
+ },
2400
+ {
2401
+ /**
2402
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2403
+ */
2404
+ name: string;
2405
+ mediaType: string;
2406
+ content: string;
2407
+ },
2408
+ {
2409
+ /**
2410
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2411
+ */
2412
+ name: string;
2413
+ mediaType: string;
2414
+ content: string;
2415
+ },
2416
+ {
2417
+ /**
2418
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2419
+ */
2420
+ name: string;
2421
+ mediaType: string;
2422
+ content: string;
2423
+ },
2424
+ {
2425
+ /**
2426
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2427
+ */
2428
+ name: string;
2429
+ mediaType: string;
2430
+ content: string;
2431
+ }
2432
+ ]
2433
+ | [
2434
+ {
2435
+ /**
2436
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2437
+ */
2438
+ name: string;
2439
+ mediaType: string;
2440
+ content: string;
2441
+ },
2442
+ {
2443
+ /**
2444
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2445
+ */
2446
+ name: string;
2447
+ mediaType: string;
2448
+ content: string;
2449
+ },
2450
+ {
2451
+ /**
2452
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2453
+ */
2454
+ name: string;
2455
+ mediaType: string;
2456
+ content: string;
2457
+ },
2458
+ {
2459
+ /**
2460
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2461
+ */
2462
+ name: string;
2463
+ mediaType: string;
2464
+ content: string;
2465
+ },
2466
+ {
2467
+ /**
2468
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2469
+ */
2470
+ name: string;
2471
+ mediaType: string;
2472
+ content: string;
2473
+ },
2474
+ {
2475
+ /**
2476
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2477
+ */
2478
+ name: string;
2479
+ mediaType: string;
2480
+ content: string;
2481
+ },
2482
+ {
2483
+ /**
2484
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2485
+ */
2486
+ name: string;
2487
+ mediaType: string;
2488
+ content: string;
2489
+ },
2490
+ {
2491
+ /**
2492
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2493
+ */
2494
+ name: string;
2495
+ mediaType: string;
2496
+ content: string;
2497
+ },
2498
+ {
2499
+ /**
2500
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2501
+ */
2502
+ name: string;
2503
+ mediaType: string;
2504
+ content: string;
2505
+ }
2506
+ ]
2507
+ | [
2508
+ {
2509
+ /**
2510
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2511
+ */
2512
+ name: string;
2513
+ mediaType: string;
2514
+ content: string;
2515
+ },
2516
+ {
2517
+ /**
2518
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2519
+ */
2520
+ name: string;
2521
+ mediaType: string;
2522
+ content: string;
2523
+ },
2524
+ {
2525
+ /**
2526
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2527
+ */
2528
+ name: string;
2529
+ mediaType: string;
2530
+ content: string;
2531
+ },
2532
+ {
2533
+ /**
2534
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2535
+ */
2536
+ name: string;
2537
+ mediaType: string;
2538
+ content: string;
2539
+ },
2540
+ {
2541
+ /**
2542
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2543
+ */
2544
+ name: string;
2545
+ mediaType: string;
2546
+ content: string;
2547
+ },
2548
+ {
2549
+ /**
2550
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2551
+ */
2552
+ name: string;
2553
+ mediaType: string;
2554
+ content: string;
2555
+ },
2556
+ {
2557
+ /**
2558
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2559
+ */
2560
+ name: string;
2561
+ mediaType: string;
2562
+ content: string;
2563
+ },
2564
+ {
2565
+ /**
2566
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2567
+ */
2568
+ name: string;
2569
+ mediaType: string;
2570
+ content: string;
2571
+ },
2572
+ {
2573
+ /**
2574
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2575
+ */
2576
+ name: string;
2577
+ mediaType: string;
2578
+ content: string;
2579
+ },
2580
+ {
2581
+ /**
2582
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2583
+ */
2584
+ name: string;
2585
+ mediaType: string;
2586
+ content: string;
2587
+ }
2588
+ ]
2589
+ | [
2590
+ {
2591
+ /**
2592
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2593
+ */
2594
+ name: string;
2595
+ mediaType: string;
2596
+ content: string;
2597
+ },
2598
+ {
2599
+ /**
2600
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2601
+ */
2602
+ name: string;
2603
+ mediaType: string;
2604
+ content: string;
2605
+ },
2606
+ {
2607
+ /**
2608
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2609
+ */
2610
+ name: string;
2611
+ mediaType: string;
2612
+ content: string;
2613
+ },
2614
+ {
2615
+ /**
2616
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2617
+ */
2618
+ name: string;
2619
+ mediaType: string;
2620
+ content: string;
2621
+ },
2622
+ {
2623
+ /**
2624
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2625
+ */
2626
+ name: string;
2627
+ mediaType: string;
2628
+ content: string;
2629
+ },
2630
+ {
2631
+ /**
2632
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2633
+ */
2634
+ name: string;
2635
+ mediaType: string;
2636
+ content: string;
2637
+ },
2638
+ {
2639
+ /**
2640
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2641
+ */
2642
+ name: string;
2643
+ mediaType: string;
2644
+ content: string;
2645
+ },
2646
+ {
2647
+ /**
2648
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2649
+ */
2650
+ name: string;
2651
+ mediaType: string;
2652
+ content: string;
2653
+ },
2654
+ {
2655
+ /**
2656
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2657
+ */
2658
+ name: string;
2659
+ mediaType: string;
2660
+ content: string;
2661
+ },
2662
+ {
2663
+ /**
2664
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2665
+ */
2666
+ name: string;
2667
+ mediaType: string;
2668
+ content: string;
2669
+ },
2670
+ {
2671
+ /**
2672
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2673
+ */
2674
+ name: string;
2675
+ mediaType: string;
2676
+ content: string;
2677
+ }
2678
+ ]
2679
+ | [
2680
+ {
2681
+ /**
2682
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2683
+ */
2684
+ name: string;
2685
+ mediaType: string;
2686
+ content: string;
2687
+ },
2688
+ {
2689
+ /**
2690
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2691
+ */
2692
+ name: string;
2693
+ mediaType: string;
2694
+ content: string;
2695
+ },
2696
+ {
2697
+ /**
2698
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2699
+ */
2700
+ name: string;
2701
+ mediaType: string;
2702
+ content: string;
2703
+ },
2704
+ {
2705
+ /**
2706
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2707
+ */
2708
+ name: string;
2709
+ mediaType: string;
2710
+ content: string;
2711
+ },
2712
+ {
2713
+ /**
2714
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2715
+ */
2716
+ name: string;
2717
+ mediaType: string;
2718
+ content: string;
2719
+ },
2720
+ {
2721
+ /**
2722
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2723
+ */
2724
+ name: string;
2725
+ mediaType: string;
2726
+ content: string;
2727
+ },
2728
+ {
2729
+ /**
2730
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2731
+ */
2732
+ name: string;
2733
+ mediaType: string;
2734
+ content: string;
2735
+ },
2736
+ {
2737
+ /**
2738
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2739
+ */
2740
+ name: string;
2741
+ mediaType: string;
2742
+ content: string;
2743
+ },
2744
+ {
2745
+ /**
2746
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2747
+ */
2748
+ name: string;
2749
+ mediaType: string;
2750
+ content: string;
2751
+ },
2752
+ {
2753
+ /**
2754
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2755
+ */
2756
+ name: string;
2757
+ mediaType: string;
2758
+ content: string;
2759
+ },
2760
+ {
2761
+ /**
2762
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2763
+ */
2764
+ name: string;
2765
+ mediaType: string;
2766
+ content: string;
2767
+ },
2768
+ {
2769
+ /**
2770
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2771
+ */
2772
+ name: string;
2773
+ mediaType: string;
2774
+ content: string;
2775
+ }
2776
+ ]
2777
+ | [
2778
+ {
2779
+ /**
2780
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2781
+ */
2782
+ name: string;
2783
+ mediaType: string;
2784
+ content: string;
2785
+ },
2786
+ {
2787
+ /**
2788
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2789
+ */
2790
+ name: string;
2791
+ mediaType: string;
2792
+ content: string;
2793
+ },
2794
+ {
2795
+ /**
2796
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2797
+ */
2798
+ name: string;
2799
+ mediaType: string;
2800
+ content: string;
2801
+ },
2802
+ {
2803
+ /**
2804
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2805
+ */
2806
+ name: string;
2807
+ mediaType: string;
2808
+ content: string;
2809
+ },
2810
+ {
2811
+ /**
2812
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2813
+ */
2814
+ name: string;
2815
+ mediaType: string;
2816
+ content: string;
2817
+ },
2818
+ {
2819
+ /**
2820
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2821
+ */
2822
+ name: string;
2823
+ mediaType: string;
2824
+ content: string;
2825
+ },
2826
+ {
2827
+ /**
2828
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2829
+ */
2830
+ name: string;
2831
+ mediaType: string;
2832
+ content: string;
2833
+ },
2834
+ {
2835
+ /**
2836
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2837
+ */
2838
+ name: string;
2839
+ mediaType: string;
2840
+ content: string;
2841
+ },
2842
+ {
2843
+ /**
2844
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2845
+ */
2846
+ name: string;
2847
+ mediaType: string;
2848
+ content: string;
2849
+ },
2850
+ {
2851
+ /**
2852
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2853
+ */
2854
+ name: string;
2855
+ mediaType: string;
2856
+ content: string;
2857
+ },
2858
+ {
2859
+ /**
2860
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2861
+ */
2862
+ name: string;
2863
+ mediaType: string;
2864
+ content: string;
2865
+ },
2866
+ {
2867
+ /**
2868
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2869
+ */
2870
+ name: string;
2871
+ mediaType: string;
2872
+ content: string;
2873
+ },
2874
+ {
2875
+ /**
2876
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2877
+ */
2878
+ name: string;
2879
+ mediaType: string;
2880
+ content: string;
2881
+ }
2882
+ ]
2883
+ | [
2884
+ {
2885
+ /**
2886
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2887
+ */
2888
+ name: string;
2889
+ mediaType: string;
2890
+ content: string;
2891
+ },
2892
+ {
2893
+ /**
2894
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2895
+ */
2896
+ name: string;
2897
+ mediaType: string;
2898
+ content: string;
2899
+ },
2900
+ {
2901
+ /**
2902
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2903
+ */
2904
+ name: string;
2905
+ mediaType: string;
2906
+ content: string;
2907
+ },
2908
+ {
2909
+ /**
2910
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2911
+ */
2912
+ name: string;
2913
+ mediaType: string;
2914
+ content: string;
2915
+ },
2916
+ {
2917
+ /**
2918
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2919
+ */
2920
+ name: string;
2921
+ mediaType: string;
2922
+ content: string;
2923
+ },
2924
+ {
2925
+ /**
2926
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2927
+ */
2928
+ name: string;
2929
+ mediaType: string;
2930
+ content: string;
2931
+ },
2932
+ {
2933
+ /**
2934
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2935
+ */
2936
+ name: string;
2937
+ mediaType: string;
2938
+ content: string;
2939
+ },
2940
+ {
2941
+ /**
2942
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2943
+ */
2944
+ name: string;
2945
+ mediaType: string;
2946
+ content: string;
2947
+ },
2948
+ {
2949
+ /**
2950
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2951
+ */
2952
+ name: string;
2953
+ mediaType: string;
2954
+ content: string;
2955
+ },
2956
+ {
2957
+ /**
2958
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2959
+ */
2960
+ name: string;
2961
+ mediaType: string;
2962
+ content: string;
2963
+ },
2964
+ {
2965
+ /**
2966
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2967
+ */
2968
+ name: string;
2969
+ mediaType: string;
2970
+ content: string;
2971
+ },
2972
+ {
2973
+ /**
2974
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2975
+ */
2976
+ name: string;
2977
+ mediaType: string;
2978
+ content: string;
2979
+ },
2980
+ {
2981
+ /**
2982
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2983
+ */
2984
+ name: string;
2985
+ mediaType: string;
2986
+ content: string;
2987
+ },
2988
+ {
2989
+ /**
2990
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
2991
+ */
2992
+ name: string;
2993
+ mediaType: string;
2994
+ content: string;
2995
+ }
2996
+ ]
2997
+ | [
2998
+ {
2999
+ /**
3000
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3001
+ */
3002
+ name: string;
3003
+ mediaType: string;
3004
+ content: string;
3005
+ },
3006
+ {
3007
+ /**
3008
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3009
+ */
3010
+ name: string;
3011
+ mediaType: string;
3012
+ content: string;
3013
+ },
3014
+ {
3015
+ /**
3016
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3017
+ */
3018
+ name: string;
3019
+ mediaType: string;
3020
+ content: string;
3021
+ },
3022
+ {
3023
+ /**
3024
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3025
+ */
3026
+ name: string;
3027
+ mediaType: string;
3028
+ content: string;
3029
+ },
3030
+ {
3031
+ /**
3032
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3033
+ */
3034
+ name: string;
3035
+ mediaType: string;
3036
+ content: string;
3037
+ },
3038
+ {
3039
+ /**
3040
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3041
+ */
3042
+ name: string;
3043
+ mediaType: string;
3044
+ content: string;
3045
+ },
3046
+ {
3047
+ /**
3048
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3049
+ */
3050
+ name: string;
3051
+ mediaType: string;
3052
+ content: string;
3053
+ },
3054
+ {
3055
+ /**
3056
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3057
+ */
3058
+ name: string;
3059
+ mediaType: string;
3060
+ content: string;
3061
+ },
3062
+ {
3063
+ /**
3064
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3065
+ */
3066
+ name: string;
3067
+ mediaType: string;
3068
+ content: string;
3069
+ },
3070
+ {
3071
+ /**
3072
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3073
+ */
3074
+ name: string;
3075
+ mediaType: string;
3076
+ content: string;
3077
+ },
3078
+ {
3079
+ /**
3080
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3081
+ */
3082
+ name: string;
3083
+ mediaType: string;
3084
+ content: string;
3085
+ },
3086
+ {
3087
+ /**
3088
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3089
+ */
3090
+ name: string;
3091
+ mediaType: string;
3092
+ content: string;
3093
+ },
3094
+ {
3095
+ /**
3096
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3097
+ */
3098
+ name: string;
3099
+ mediaType: string;
3100
+ content: string;
3101
+ },
3102
+ {
3103
+ /**
3104
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3105
+ */
3106
+ name: string;
3107
+ mediaType: string;
3108
+ content: string;
3109
+ },
3110
+ {
3111
+ /**
3112
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3113
+ */
3114
+ name: string;
3115
+ mediaType: string;
3116
+ content: string;
3117
+ }
3118
+ ]
3119
+ | [
3120
+ {
3121
+ /**
3122
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3123
+ */
3124
+ name: string;
3125
+ mediaType: string;
3126
+ content: string;
3127
+ },
3128
+ {
3129
+ /**
3130
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3131
+ */
3132
+ name: string;
3133
+ mediaType: string;
3134
+ content: string;
3135
+ },
3136
+ {
3137
+ /**
3138
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3139
+ */
3140
+ name: string;
3141
+ mediaType: string;
3142
+ content: string;
3143
+ },
3144
+ {
3145
+ /**
3146
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3147
+ */
3148
+ name: string;
3149
+ mediaType: string;
3150
+ content: string;
3151
+ },
3152
+ {
3153
+ /**
3154
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3155
+ */
3156
+ name: string;
3157
+ mediaType: string;
3158
+ content: string;
3159
+ },
3160
+ {
3161
+ /**
3162
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3163
+ */
3164
+ name: string;
3165
+ mediaType: string;
3166
+ content: string;
3167
+ },
3168
+ {
3169
+ /**
3170
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3171
+ */
3172
+ name: string;
3173
+ mediaType: string;
3174
+ content: string;
3175
+ },
3176
+ {
3177
+ /**
3178
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3179
+ */
3180
+ name: string;
3181
+ mediaType: string;
3182
+ content: string;
3183
+ },
3184
+ {
3185
+ /**
3186
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3187
+ */
3188
+ name: string;
3189
+ mediaType: string;
3190
+ content: string;
3191
+ },
3192
+ {
3193
+ /**
3194
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3195
+ */
3196
+ name: string;
3197
+ mediaType: string;
3198
+ content: string;
3199
+ },
3200
+ {
3201
+ /**
3202
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3203
+ */
3204
+ name: string;
3205
+ mediaType: string;
3206
+ content: string;
3207
+ },
3208
+ {
3209
+ /**
3210
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3211
+ */
3212
+ name: string;
3213
+ mediaType: string;
3214
+ content: string;
3215
+ },
3216
+ {
3217
+ /**
3218
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3219
+ */
3220
+ name: string;
3221
+ mediaType: string;
3222
+ content: string;
3223
+ },
3224
+ {
3225
+ /**
3226
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3227
+ */
3228
+ name: string;
3229
+ mediaType: string;
3230
+ content: string;
3231
+ },
3232
+ {
3233
+ /**
3234
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3235
+ */
3236
+ name: string;
3237
+ mediaType: string;
3238
+ content: string;
3239
+ },
3240
+ {
3241
+ /**
3242
+ * File name to save it under: `trust-anchor.pem`, `jwks.json`, `permissions-policy.json`, `crl.pem`.
3243
+ */
3244
+ name: string;
3245
+ mediaType: string;
3246
+ content: string;
3247
+ }
3248
+ ];
3249
+ /**
3250
+ * @maxItems 32
1163
3251
  */
1164
- stats?: AccountStats;
3252
+ steps: {
3253
+ description: string;
3254
+ /**
3255
+ * A provider CLI command (`aws rolesanywhere create-trust-anchor …`, `gcloud iam workload-identity-pools providers create-oidc … --jwk-json-path`, `az ad app credential reset --cert …`), referring to artifacts by `name`.
3256
+ */
3257
+ command?: string;
3258
+ }[];
1165
3259
  }
1166
3260
  /**
1167
3261
  * What an account has sent and received over its lifetime, as the mediator counted it. Every member is optional: a mediator reports what it keeps, and a counter absent from a response was not kept rather than zero. Counters survive restarts and are not reset by reading them; removing an account discards them.
@@ -2056,6 +4150,24 @@ export interface BackupEnvelope {
2056
4150
  */
2057
4151
  ciphertext: string;
2058
4152
  }
4153
+ /**
4154
+ * The ciphertext manifest of one blob, committed by the uploader before any byte moves. Its digest is the BlobRef. Every chunk is checked against `chunks.chunkDigests` on arrival and the reassembled blob against `digest`, so a host can neither accept nor serve bytes the uploader did not commit to. The manifest also appears, by its BlobRef, inside the sealed FileManifest the author signs; a reader who opens the record therefore knows which ciphertext its author meant, and a host cannot substitute a different blob under the same record.
4155
+ *
4156
+ * Consistency rules JSON Schema cannot state: `chunks.chunkCount` MUST equal ceil(size / chunks.chunkSize), and `chunks.chunkDigests` MUST have exactly `chunkCount` items. A party receiving a manifest violating either MUST refuse it.
4157
+ *
4158
+ * Each transfer chunk is exactly one sealed STREAM segment (see FileManifest): every chunk but the last is `chunkSize` bytes, and `chunkSize` is the plaintext segment size plus the 16-byte AEAD tag. The 262144-byte ceiling of ChunkSize therefore puts the largest plaintext segment at 262128 bytes, and the 4096-chunk ceiling of ChunkCount puts the largest blob at 1 GiB of ciphertext.
4159
+ */
4160
+ export interface BlobManifest {
4161
+ /**
4162
+ * Ciphertext bytes, padding included. What the host stores, and what every limit and usage figure is stated in.
4163
+ */
4164
+ size: ExpectedSizeBytes;
4165
+ chunks: ChunkManifest;
4166
+ /**
4167
+ * Digest of the whole ciphertext, over its bytes. Checked after reassembly, so a correct set of chunks in the wrong order is still caught.
4168
+ */
4169
+ digest: DigestMultibase;
4170
+ }
2059
4171
  /**
2060
4172
  * Whether each step that turns commit trust on for a repository is in place, as last reported. A step that this forge's plan does not need reads `true`.
2061
4173
  */
@@ -2630,6 +4742,74 @@ export interface CredentialReference {
2630
4742
  export interface CredentialSchema {
2631
4743
  [k: string]: unknown | undefined;
2632
4744
  }
4745
+ /**
4746
+ * What one issuance may do. For storage models, `prefix` and `actions` (both required, a rule this schema leaves to the custodian because other models use neither); for `s3-static-presign`, also `objectKey`, since a presigned URL is one operation on one object; for `oauth2-private-key-jwt`, `scopes`.
4747
+ */
4748
+ export interface CredentialScope {
4749
+ prefix?: ProviderObjectPrefix;
4750
+ /**
4751
+ * @minItems 1
4752
+ * @maxItems 3
4753
+ */
4754
+ actions?:
4755
+ | [ProviderObjectAction]
4756
+ | [ProviderObjectAction, ProviderObjectAction]
4757
+ | [ProviderObjectAction, ProviderObjectAction, ProviderObjectAction];
4758
+ /**
4759
+ * `s3-static-presign` only: the object's name within `prefix`. The presigned URL names `prefix` + `objectKey` and nothing else, and `actions` must hold exactly one action.
4760
+ */
4761
+ objectKey?: string;
4762
+ /**
4763
+ * `oauth2-private-key-jwt` only: the OAuth scopes requested.
4764
+ *
4765
+ * @maxItems 64
4766
+ */
4767
+ scopes?: string[];
4768
+ }
4769
+ /**
4770
+ * The widest scope a binding's consumer may request. An issuance is inside the ceiling when its `prefix` begins with one of `prefixes`, every one of its `actions` is in `actions`, and every one of its `scopes` is in `scopes`. Absent members confer nothing: a ceiling with no `prefixes` permits no storage issuance.
4771
+ */
4772
+ export interface CredentialScopeCeiling {
4773
+ /**
4774
+ * @minItems 1
4775
+ * @maxItems 64
4776
+ */
4777
+ prefixes?: [ProviderObjectPrefix, ...ProviderObjectPrefix[]];
4778
+ /**
4779
+ * @minItems 1
4780
+ * @maxItems 3
4781
+ */
4782
+ actions?:
4783
+ | [ProviderObjectAction]
4784
+ | [ProviderObjectAction, ProviderObjectAction]
4785
+ | [ProviderObjectAction, ProviderObjectAction, ProviderObjectAction];
4786
+ /**
4787
+ * @maxItems 64
4788
+ */
4789
+ scopes?: string[];
4790
+ }
4791
+ /**
4792
+ * Whether a config can authenticate now, and how — never the credential. `status`: `vta-account`, `ambient` and `sealed` are usable; `required` means the config cannot store until a credential is provided (a `sealed` config never set, or set before a restore, which carries no credential); `none` is a `local` config.
4793
+ */
4794
+ export interface CredentialState {
4795
+ status: "vta-account" | "ambient" | "sealed" | "required" | "none";
4796
+ /**
4797
+ * Present with `vta-account`.
4798
+ */
4799
+ account?: ExternalAccountId;
4800
+ /**
4801
+ * Present with `sealed`: a digest identifying the stored credential, so an administrator can tell which one is set without anyone being able to read it. Computed over the credential with a community-held key, never a bare hash of a low-entropy secret.
4802
+ */
4803
+ fingerprint?: DigestMultibase;
4804
+ /**
4805
+ * Present with `sealed`: when the stored credential was last set.
4806
+ */
4807
+ setAt?: string;
4808
+ /**
4809
+ * Present with `vta-account`: how many rooms the community currently holds a live room-scoped credential for.
4810
+ */
4811
+ roomsHoldingCredentials?: number;
4812
+ }
2633
4813
  /**
2634
4814
  * A W3C Data Integrity proof by the card's publisher. Additional Data Integrity members (e.g. `created`) are permitted and are covered as the cryptosuite defines.
2635
4815
  */
@@ -3292,6 +5472,18 @@ export interface Effect_TaskConsentV0_1 {
3292
5472
  [k: string]: unknown | undefined;
3293
5473
  };
3294
5474
  }
5475
+ /**
5476
+ * The limits a room is enforced against now, with where each scope's came from.
5477
+ */
5478
+ export interface EffectiveLimits {
5479
+ limits: RoomLimits;
5480
+ roomSource: LimitSource;
5481
+ memberSource: LimitSource;
5482
+ /**
5483
+ * The host-wide largest-file ceiling, which no room or member limit can exceed.
5484
+ */
5485
+ hostCeilingBytes?: number;
5486
+ }
3295
5487
  export interface EncryptionParams {
3296
5488
  /**
3297
5489
  * AEAD identifier, e.g. `aes-256-gcm`.
@@ -3415,6 +5607,53 @@ export interface Exposure {
3415
5607
  export interface Ext {
3416
5608
  [k: string]: unknown | undefined;
3417
5609
  }
5610
+ /**
5611
+ * An account as every read returns it. Contains no private key, no secret and no issued credential, to any reader.
5612
+ */
5613
+ export interface ExternalAccount {
5614
+ id: AccountId;
5615
+ /**
5616
+ * Display name. Untrusted text: render it, never interpret it.
5617
+ */
5618
+ label: string;
5619
+ context: AccountContextId;
5620
+ settings: AccountSettings;
5621
+ state: AccountState;
5622
+ /**
5623
+ * Absent for the static models, which hold a secret rather than a key.
5624
+ */
5625
+ publicMaterial?: AccountPublicMaterial;
5626
+ /**
5627
+ * Static models only; absent until the secret is set.
5628
+ */
5629
+ secret?: AccountSecretInfo;
5630
+ /**
5631
+ * @maxItems 256
5632
+ */
5633
+ bindings: AccountBinding[];
5634
+ /**
5635
+ * The provider hosts the custodian connects to on this account's behalf, derived by the custodian from its settings: the token or session endpoints issuance uses, and the destinations external/accounts/probe dials (the object store's host, for a storage model). The custodian MUST NOT connect anywhere else on the account's behalf, so an egress proxy can allow exactly this set. Empty only for a model that neither exchanges nor probes over the network.
5636
+ *
5637
+ * @maxItems 8
5638
+ */
5639
+ egressHosts:
5640
+ | []
5641
+ | [string]
5642
+ | [string, string]
5643
+ | [string, string, string]
5644
+ | [string, string, string, string]
5645
+ | [string, string, string, string, string]
5646
+ | [string, string, string, string, string, string]
5647
+ | [string, string, string, string, string, string, string]
5648
+ | [string, string, string, string, string, string, string, string];
5649
+ /**
5650
+ * True when the account cannot be used until its provider-side setup is redone: after a restore that could not carry its key or secret (a wrapped RSA key, a static secret), or after a rotation awaiting confirmation.
5651
+ */
5652
+ providerSetupRequired: boolean;
5653
+ lastProbe?: AccountProbeReport;
5654
+ createdAt: string;
5655
+ updatedAt: string;
5656
+ }
3418
5657
  /**
3419
5658
  * One displayed value, with where it comes from and how to render it.
3420
5659
  */
@@ -3445,6 +5684,14 @@ export interface ForgeAccount {
3445
5684
  */
3446
5685
  login: string;
3447
5686
  }
5687
+ export interface GcsSettings {
5688
+ kind: "gcs";
5689
+ /**
5690
+ * The bucket name. Validated against GCS naming rules here, because it is placed in a Credential Access Boundary condition and must never carry anything but a name.
5691
+ */
5692
+ bucket: string;
5693
+ prefix?: ObjectPrefix;
5694
+ }
3448
5695
  /**
3449
5696
  * The VTC's binding to one owner on one forge.
3450
5697
  */
@@ -3505,6 +5752,22 @@ export interface HistogramBucket {
3505
5752
  */
3506
5753
  count: number;
3507
5754
  }
5755
+ /**
5756
+ * One room, as its host holds it — member for member the `HostedRoom` of vtc/rooms/list/0.1, which defines it inside its own payload schema. Nothing derived from the room's contents, and no member list: the host has none.
5757
+ */
5758
+ export interface HostedRoom {
5759
+ roomId: string;
5760
+ ownerDid: string;
5761
+ visibility: Visibility;
5762
+ retentionPolicy: RetentionPolicy;
5763
+ epoch: number;
5764
+ lifecycle: "live" | "lapsed" | "dormant" | "reclaimable";
5765
+ epochExpiresAt?: number;
5766
+ retentionDays: number;
5767
+ mirrorOf?: string;
5768
+ createdAt: number;
5769
+ updatedAt: number;
5770
+ }
3508
5771
  /**
3509
5772
  * OpenPGP-style ASCII-armored HPKE bundle — the existing OpenVTC sealed-transfer wire form (X25519-HKDF-SHA256 KEM + ChaCha20-Poly1305 AEAD, framed in armor with Bundle-Id / Digest-Algo headers and a CRC24 checksum). Producer assertion (`did-signed` / `attested` / `pinned-only`) is the integrity / authenticity anchor.
3510
5773
  *
@@ -3884,6 +6147,23 @@ export interface KeyScopeListed {
3884
6147
  export interface KeyScopeNone {
3885
6148
  scope: "none";
3886
6149
  }
6150
+ /**
6151
+ * Which limits an override applies to. `room`: the room as a whole. `memberDefault`: every member of the room who has no override of their own. `member`: one named member — `member` is REQUIRED with this kind and forbidden with the others, a rule this schema does not express; a community refuses a violation with `malformedRequest`.
6152
+ */
6153
+ export interface LimitTarget {
6154
+ kind: "room" | "memberDefault" | "member";
6155
+ /**
6156
+ * The member's DID: the subject at the root of the authority chains they present, which is what their uploads are charged to.
6157
+ */
6158
+ member?: string;
6159
+ }
6160
+ export interface LocalSettings {
6161
+ kind: "local";
6162
+ /**
6163
+ * Absolute path of the directory the community writes blobs under, on its own host. Created owner-only. Not carried by the community's backup: back it up beside it.
6164
+ */
6165
+ root: string;
6166
+ }
3887
6167
  /**
3888
6168
  * The mediator's per-account access-control capability set, expressed as named booleans (the transport-agnostic form of the mediator's internal capability flags). On a set request, members omitted are left unchanged; a get/response carries the full realized set.
3889
6169
  */
@@ -4897,6 +7177,47 @@ export interface RecordMetadata {
4897
7177
  */
4898
7178
  author?: string;
4899
7179
  }
7180
+ /**
7181
+ * What `rooms/records/list/0.2` returns: `RecordMetadata` plus `blobs`. A separate definition, not a change to `RecordMetadata`, so that `rooms/records/list/0.1` keeps the exact shape it published. Never the body.
7182
+ */
7183
+ export interface RecordMetadataV2 {
7184
+ /**
7185
+ * The record's key within the room. On `attributed` and `private` rooms this MUST be opaque — a random identifier, never a descriptive slug. A key reading `decision/acquire-northwind` defeats the encryption sitting beside it; structured naming belongs inside the sealed body.
7186
+ */
7187
+ key: string;
7188
+ /**
7189
+ * Server-assigned, monotonic per room.
7190
+ */
7191
+ version: number;
7192
+ /**
7193
+ * The epoch the record was sealed under. Absent on an `open` room.
7194
+ */
7195
+ epoch?: number;
7196
+ /**
7197
+ * Curation state. `retracted` is a tombstone: the body is gone, the key and version remain so incremental sync converges and the audit chain stays intact.
7198
+ */
7199
+ status?: "active" | "deprecated" | "retracted";
7200
+ updatedAt: string;
7201
+ /**
7202
+ * Present only on an `open` room; sealed with the body otherwise.
7203
+ */
7204
+ title?: string;
7205
+ /**
7206
+ * Present only on an `open` room; sealed with the body otherwise.
7207
+ */
7208
+ description?: string;
7209
+ /**
7210
+ * The member who wrote it. Present on `open` and `attributed`; on `private` the author is inside the sealed body, where only members can read it.
7211
+ */
7212
+ author?: string;
7213
+ /**
7214
+ * The stored blobs this record names, as rooms/records/put/0.2 wrote them. Absent when it names none, when it is retracted, and on records written by put 0.1. Cleartext on every tier, as on the write, so a listing discloses which records carry files, never anything about the files beyond the blobs' sizes.
7215
+ *
7216
+ * @minItems 1
7217
+ * @maxItems 1
7218
+ */
7219
+ blobs?: [BlobRef];
7220
+ }
4900
7221
  /**
4901
7222
  * A passkey already bound to a subject, as listed by `auth/passkey/list` and targeted by `auth/passkey/revoke/*`. This is the auth service's own management view of a credential — not a WebAuthn dictionary — so its members are camelCase per SPEC.md §4.10. The exception is `transports`, whose values are the externally-owned WebAuthn transport tokens and are carried verbatim.
4902
7223
  */
@@ -5005,6 +7326,28 @@ export interface RequestedCredential {
5005
7326
  */
5006
7327
  claims: string[];
5007
7328
  }
7329
+ /**
7330
+ * What the service reports about where the request came from. Revealed only in the step 2 response, to the lock holder, after a membership and number proof. Reported by the service, signed by it, and a heuristic: a relaying attacker controls what is observed.
7331
+ */
7332
+ export interface Requester {
7333
+ /**
7334
+ * City and country of the starter's connection, from a local lookup with no third-party call, or the literal `unknown`. Never an IP address.
7335
+ */
7336
+ location: string;
7337
+ /**
7338
+ * Browser family of the starter (e.g. `Chrome`), never the full User-Agent; `unknown` when it cannot be told.
7339
+ */
7340
+ browser: string;
7341
+ /**
7342
+ * Operating system family of the starter (e.g. `macOS`); `unknown` when it cannot be told.
7343
+ */
7344
+ os: string;
7345
+ /**
7346
+ * When the service accepted the starter's auth/oob/request.
7347
+ */
7348
+ createdAt: string;
7349
+ sameNetwork: SameNetwork;
7350
+ }
5008
7351
  /**
5009
7352
  * One line of a profile AFTER resolution: what the profile would present at this entry, rather than how the entry is written.
5010
7353
  *
@@ -5319,6 +7662,23 @@ export interface RollbackResult {
5319
7662
  serverless?: boolean;
5320
7663
  ext?: Ext;
5321
7664
  }
7665
+ /**
7666
+ * How much a host is willing to store for one room, at the room and per member. A hosting decision, set by the host and never by anything in the room's credentials. An upload must fit every scope at once: the object against the smallest `maxFileBytes` that applies, and the member and the room with the file added.
7667
+ */
7668
+ export interface RoomLimits {
7669
+ /**
7670
+ * False refuses every rooms/blobs/* upload for the room. Reads of blobs already stored continue.
7671
+ */
7672
+ filesEnabled: boolean;
7673
+ /**
7674
+ * Limits on the room as a whole.
7675
+ */
7676
+ room?: ScopeLimits;
7677
+ /**
7678
+ * Limits on each member's own uploads in this room, unless that member has an override. A member is the subject at the root of the authority chain they present, never the key that signed, so an agent acting on an attenuated chain spends its member's allowance. Not applied on a `private` room, where the host cannot tell members apart; the room and object limits still hold there.
7679
+ */
7680
+ member?: ScopeLimits;
7681
+ }
5322
7682
  /**
5323
7683
  * One change to a role's key set, from preview to completion. The rotation history of a DID is the list of these; the log is the authority for what was published, and this record adds what the log cannot say — which change was which, and (custody projection only) who asked, who approved, and why.
5324
7684
  */
@@ -5369,6 +7729,26 @@ export interface RotationRecord {
5369
7729
  */
5370
7730
  cacheHorizonAt?: string;
5371
7731
  }
7732
+ export interface S3Settings {
7733
+ kind: "s3";
7734
+ /**
7735
+ * The S3 API endpoint, for a store other than AWS (R2, B2, MinIO). Absent means AWS S3 in `region`. HTTPS only.
7736
+ */
7737
+ endpoint?: string;
7738
+ /**
7739
+ * The bucket's region, as the store names it (`eu-west-1`; `auto` for R2).
7740
+ */
7741
+ region: string;
7742
+ /**
7743
+ * The bucket name. Validated against S3 naming rules here, because it is placed in downscoped session policies and must never carry anything but a name.
7744
+ */
7745
+ bucket: string;
7746
+ prefix?: ObjectPrefix;
7747
+ /**
7748
+ * Address the bucket in the path rather than the host name, as MinIO usually needs. Absent means virtual-hosted style.
7749
+ */
7750
+ pathStyle?: boolean;
7751
+ }
5372
7752
  /**
5373
7753
  * One registered credential type, as the community stores it.
5374
7754
  */
@@ -5408,6 +7788,23 @@ export interface SchemaSummary {
5408
7788
  */
5409
7789
  createdByDid: string;
5410
7790
  }
7791
+ /**
7792
+ * Limits at one scope. Every member is optional: an absent member means the scope sets no limit of that kind, and the next wider scope's limit, or the host's ceiling, governs. All sizes are ciphertext bytes.
7793
+ */
7794
+ export interface ScopeLimits {
7795
+ /**
7796
+ * The number of committed blobs the scope may hold. 0 refuses every upload at this scope.
7797
+ */
7798
+ maxFiles?: number;
7799
+ /**
7800
+ * The largest single blob the scope accepts. Never above 1 GiB, the transfer ceiling (BlobManifest).
7801
+ */
7802
+ maxFileBytes?: number;
7803
+ /**
7804
+ * The total size of the committed and reserved blobs the scope may hold.
7805
+ */
7806
+ maxBytes?: number;
7807
+ }
5411
7808
  export interface Builtin_VtaV0_1 {
5412
7809
  type: "builtin";
5413
7810
  }
@@ -5435,6 +7832,19 @@ export interface SealedRecord {
5435
7832
  */
5436
7833
  epoch: number;
5437
7834
  }
7835
+ /**
7836
+ * Who the service says it is.
7837
+ */
7838
+ export interface Service {
7839
+ /**
7840
+ * The service's DID: the `recipient` of every request in the family, and the `_from` of the trigger link.
7841
+ */
7842
+ did: string;
7843
+ /**
7844
+ * The name the service calls itself. Supplied by the service: an approver shows the name from its OWN records and flags a difference from this one (VTI-LNK-104); it never shows this value as the community's name on its own authority.
7845
+ */
7846
+ name: string;
7847
+ }
5438
7848
  export interface ServiceInstance_DidManagementV0_1 {
5439
7849
  /**
5440
7850
  * Stable identifier the control plane uses for this instance. SHOULD be derived from the instance's DID (e.g. `did:web:host.example` → `did_web_host_example`) so it survives restarts.
@@ -5826,6 +8236,83 @@ export interface StepUpProof_VaultV0_2 {
5826
8236
  */
5827
8237
  challengeId: string;
5828
8238
  }
8239
+ /**
8240
+ * One storage config as the community holds it. Carries no secret.
8241
+ */
8242
+ export interface StorageConfig {
8243
+ id: StorageConfigId;
8244
+ /**
8245
+ * A display name for administrators (`EU — S3 (main account)`). Shown to a room's creator with the config's kind when the community lets them choose.
8246
+ */
8247
+ label: string;
8248
+ settings: StorageSettings;
8249
+ auth?: StorageAuth;
8250
+ /**
8251
+ * Total ciphertext bytes the community will store on this config, across every room assigned to it. A capacity, not a policy: an upload that would cross it is refused with scope `storage`. Absent means no capacity set.
8252
+ */
8253
+ capacityBytes?: number;
8254
+ state: ConfigState;
8255
+ /**
8256
+ * True for the config a room is assigned to when neither the community's policy nor its creator names one.
8257
+ */
8258
+ isDefault?: boolean;
8259
+ createdBy: string;
8260
+ createdAt: string;
8261
+ updatedBy?: string;
8262
+ updatedAt?: string;
8263
+ }
8264
+ /**
8265
+ * What a config holds and whether it works, computed at the time of the read. Ciphertext bytes throughout.
8266
+ */
8267
+ export interface StorageConfigFacts {
8268
+ /**
8269
+ * Rooms assigned to this config.
8270
+ */
8271
+ rooms: number;
8272
+ /**
8273
+ * Blobs stored on this config that are not yet deleted, wherever their rooms are now assigned.
8274
+ */
8275
+ files: number;
8276
+ /**
8277
+ * Their total size. Counts against `capacityBytes` until the backend deletion has actually happened, unlike room and member usage, which stop counting an orphaned blob at once.
8278
+ */
8279
+ bytes: number;
8280
+ /**
8281
+ * Bytes of orphaned blobs awaiting deletion after their grace window.
8282
+ */
8283
+ pendingDeleteBytes: number;
8284
+ credential: CredentialState;
8285
+ health: StorageHealth;
8286
+ /**
8287
+ * Present on a `walrus` config.
8288
+ */
8289
+ walrus?: {
8290
+ /**
8291
+ * The Sui address that pays for storage, derived from the VTA account's key.
8292
+ */
8293
+ signerAddress?: string;
8294
+ nextExtensionDueAt?: string;
8295
+ };
8296
+ }
8297
+ /**
8298
+ * The last evidence the community has that a config works. Every member is optional: a config never probed and never used has none.
8299
+ */
8300
+ export interface StorageHealth {
8301
+ lastProbeAt?: string;
8302
+ lastProbeOk?: boolean;
8303
+ /**
8304
+ * The last successful blob write.
8305
+ */
8306
+ lastPutAt?: string;
8307
+ /**
8308
+ * The last successful chunk read.
8309
+ */
8310
+ lastGetAt?: string;
8311
+ /**
8312
+ * The last successful deletion (on `walrus`, the last lapse the community observed).
8313
+ */
8314
+ lastDeleteAt?: string;
8315
+ }
5829
8316
  /**
5830
8317
  * A descriptor for a transfer that happens outside Trust Task documents, at an address the recipient publishes — the `stream` algorithm, and any other algorithm a recipient offers that is shaped as an address plus a bearer credential. Identical in members to the `vta/backup/* /1.0` descriptor.
5831
8318
  */
@@ -5847,6 +8334,14 @@ export interface StreamDescriptor {
5847
8334
  expectedSizeBytes: ExpectedSizeBytes;
5848
8335
  expiresAt: ExpiresAt;
5849
8336
  }
8337
+ /**
8338
+ * One Move function an account's transactions may call.
8339
+ */
8340
+ export interface SuiMoveCall {
8341
+ package: string;
8342
+ module: string;
8343
+ function: string;
8344
+ }
5850
8345
  /**
5851
8346
  * What an approver is shown, rendered from the summary template for the action's `kind`. Title and effect are the template's prose; the fields are the payload values that prose is about, each located by pointer so a renderer can verify it.
5852
8347
  */
@@ -6016,6 +8511,27 @@ export interface UploadTarget {
6016
8511
  path?: WebsitePath;
6017
8512
  ifMatch?: WebsiteEtag;
6018
8513
  }
8514
+ /**
8515
+ * What one scope holds now. Ciphertext bytes throughout.
8516
+ */
8517
+ export interface Usage {
8518
+ /**
8519
+ * Committed blobs that are not orphaned.
8520
+ */
8521
+ files: number;
8522
+ /**
8523
+ * Their total size. A blob stops counting the moment it is orphaned (its last record dropped it or was retracted), not when the host finally deletes it, so a member who deletes a file has the room back at once.
8524
+ */
8525
+ bytes: number;
8526
+ /**
8527
+ * Bytes reserved by uploads begun and not yet committed, aborted or expired. Counted against `maxBytes`, so two concurrent uploads cannot both fit under a limit only one of them fits.
8528
+ */
8529
+ reservedBytes: number;
8530
+ /**
8531
+ * Uploads begun and not yet committed, aborted or expired. Counted against `maxFiles`.
8532
+ */
8533
+ reservedFiles?: number;
8534
+ }
6019
8535
  export interface VaultDeletedEvent_SyncV0_1 {
6020
8536
  kind: "vault.deleted";
6021
8537
  seq: number;
@@ -6563,6 +9079,25 @@ export interface WakeTriggerPolicy {
6563
9079
  */
6564
9080
  allowedTriggers: string[];
6565
9081
  }
9082
+ export interface WalrusSettings {
9083
+ kind: "walrus";
9084
+ /**
9085
+ * The Walrus upload relay the community writes through. The community never runs a publisher: a publisher holds a hot wallet in its own configuration, which is the long-lived secret these tasks exist to avoid.
9086
+ */
9087
+ relayUrl: string;
9088
+ /**
9089
+ * The Walrus aggregator the community reads through.
9090
+ */
9091
+ aggregatorUrl: string;
9092
+ /**
9093
+ * Storage epochs to buy when a blob is registered. Walrus sells storage in epochs (two weeks on mainnet) and caps one purchase at 53.
9094
+ */
9095
+ epochs: number;
9096
+ /**
9097
+ * How many epochs before a live blob's end epoch the community extends it. A blob that has become an orphan is not extended, and lapses: the Walrus form of deletion.
9098
+ */
9099
+ extendBeforeEpochs: number;
9100
+ }
6566
9101
  /**
6567
9102
  * A did:webvh DID as the VTA holds it. The DID document itself is not here — it lives in the log, which `vta/webvh/dids/get` returns on request.
6568
9103
  */