@openvtc/trust-tasks 0.28.6 → 0.28.8

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 (328) hide show
  1. package/CHANGELOG.md +73 -0
  2. package/dist/_extends.d.ts.map +1 -1
  3. package/dist/_extends.js +1 -0
  4. package/dist/_extends.js.map +1 -1
  5. package/dist/_shared/components.d.ts +249 -0
  6. package/dist/_shared/components.d.ts.map +1 -1
  7. package/dist/index.d.ts +75 -0
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +75 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/rooms/keys/act/0.1/payload.d.ts +4 -4
  12. package/dist/rooms/keys/act/0.1/payload.d.ts.map +1 -1
  13. package/dist/rooms/keys/act/0.1/payload.js +1 -1
  14. package/dist/rooms/keys/act/0.1/payload.js.map +1 -1
  15. package/dist/rooms/keys/act/0.10/payload.d.ts +560 -0
  16. package/dist/rooms/keys/act/0.10/payload.d.ts.map +1 -0
  17. package/dist/rooms/keys/act/0.10/payload.js +319 -0
  18. package/dist/rooms/keys/act/0.10/payload.js.map +1 -0
  19. package/dist/rooms/keys/act/0.2/payload.d.ts +4 -4
  20. package/dist/rooms/keys/act/0.2/payload.d.ts.map +1 -1
  21. package/dist/rooms/keys/act/0.2/payload.js +1 -1
  22. package/dist/rooms/keys/act/0.2/payload.js.map +1 -1
  23. package/dist/rooms/keys/act/0.3/payload.d.ts +4 -4
  24. package/dist/rooms/keys/act/0.3/payload.d.ts.map +1 -1
  25. package/dist/rooms/keys/act/0.3/payload.js +1 -1
  26. package/dist/rooms/keys/act/0.3/payload.js.map +1 -1
  27. package/dist/rooms/keys/act/0.4/payload.d.ts +4 -4
  28. package/dist/rooms/keys/act/0.4/payload.d.ts.map +1 -1
  29. package/dist/rooms/keys/act/0.4/payload.js +1 -1
  30. package/dist/rooms/keys/act/0.4/payload.js.map +1 -1
  31. package/dist/rooms/keys/act/0.5/payload.d.ts +4 -4
  32. package/dist/rooms/keys/act/0.5/payload.d.ts.map +1 -1
  33. package/dist/rooms/keys/act/0.5/payload.js +1 -1
  34. package/dist/rooms/keys/act/0.5/payload.js.map +1 -1
  35. package/dist/rooms/keys/act/0.6/payload.d.ts +4 -4
  36. package/dist/rooms/keys/act/0.6/payload.d.ts.map +1 -1
  37. package/dist/rooms/keys/act/0.6/payload.js +1 -1
  38. package/dist/rooms/keys/act/0.6/payload.js.map +1 -1
  39. package/dist/rooms/keys/act/0.7/payload.d.ts +4 -4
  40. package/dist/rooms/keys/act/0.7/payload.d.ts.map +1 -1
  41. package/dist/rooms/keys/act/0.7/payload.js +1 -1
  42. package/dist/rooms/keys/act/0.7/payload.js.map +1 -1
  43. package/dist/rooms/keys/act/0.8/payload.d.ts +4 -4
  44. package/dist/rooms/keys/act/0.8/payload.d.ts.map +1 -1
  45. package/dist/rooms/keys/act/0.8/payload.js +1 -1
  46. package/dist/rooms/keys/act/0.8/payload.js.map +1 -1
  47. package/dist/rooms/keys/act/0.9/payload.d.ts +14 -2
  48. package/dist/rooms/keys/act/0.9/payload.d.ts.map +1 -1
  49. package/dist/rooms/keys/act/0.9/payload.js +1 -1
  50. package/dist/rooms/keys/act/0.9/payload.js.map +1 -1
  51. package/dist/voting/_shared/0.3/voting.d.ts +16 -0
  52. package/dist/voting/_shared/0.3/voting.d.ts.map +1 -0
  53. package/dist/voting/_shared/0.3/voting.js +6 -0
  54. package/dist/voting/_shared/0.3/voting.js.map +1 -0
  55. package/dist/voting/election/register/0.1/payload.d.ts +4 -4
  56. package/dist/voting/election/register/0.1/payload.js +1 -1
  57. package/dist/voting/election/register/0.2/payload.d.ts +13 -2
  58. package/dist/voting/election/register/0.2/payload.d.ts.map +1 -1
  59. package/dist/voting/election/register/0.2/payload.js +1 -1
  60. package/dist/voting/election/register/0.2/payload.js.map +1 -1
  61. package/dist/voting/election/register/0.3/payload.d.ts +1934 -0
  62. package/dist/voting/election/register/0.3/payload.d.ts.map +1 -0
  63. package/dist/voting/election/register/0.3/payload.js +1180 -0
  64. package/dist/voting/election/register/0.3/payload.js.map +1 -0
  65. package/dist/voting/election/show/0.1/payload.d.ts +4 -4
  66. package/dist/voting/election/show/0.1/payload.js +1 -1
  67. package/dist/voting/election/show/0.2/payload.d.ts +13 -2
  68. package/dist/voting/election/show/0.2/payload.d.ts.map +1 -1
  69. package/dist/voting/election/show/0.2/payload.js +1 -1
  70. package/dist/voting/election/show/0.2/payload.js.map +1 -1
  71. package/dist/voting/election/show/0.3/payload.d.ts +1838 -0
  72. package/dist/voting/election/show/0.3/payload.d.ts.map +1 -0
  73. package/dist/voting/election/show/0.3/payload.js +1126 -0
  74. package/dist/voting/election/show/0.3/payload.js.map +1 -0
  75. package/dist/vta/pcs/trustee/deal/0.2/payload.d.ts +4 -4
  76. package/dist/vta/pcs/trustee/deal/0.2/payload.js +1 -1
  77. package/dist/vta/pcs/trustee/deal/0.3/payload.d.ts +13 -2
  78. package/dist/vta/pcs/trustee/deal/0.3/payload.d.ts.map +1 -1
  79. package/dist/vta/pcs/trustee/deal/0.3/payload.js +1 -1
  80. package/dist/vta/pcs/trustee/deal/0.3/payload.js.map +1 -1
  81. package/dist/vta/pcs/trustee/deal/0.4/payload.d.ts +1846 -0
  82. package/dist/vta/pcs/trustee/deal/0.4/payload.d.ts.map +1 -0
  83. package/dist/vta/pcs/trustee/deal/0.4/payload.js +1091 -0
  84. package/dist/vta/pcs/trustee/deal/0.4/payload.js.map +1 -0
  85. package/dist/vta/pcs/trustee/enrol/0.1/payload.d.ts +4 -4
  86. package/dist/vta/pcs/trustee/enrol/0.1/payload.js +1 -1
  87. package/dist/vta/pcs/trustee/enrol/0.2/payload.d.ts +13 -2
  88. package/dist/vta/pcs/trustee/enrol/0.2/payload.d.ts.map +1 -1
  89. package/dist/vta/pcs/trustee/enrol/0.2/payload.js +1 -1
  90. package/dist/vta/pcs/trustee/enrol/0.2/payload.js.map +1 -1
  91. package/dist/vta/pcs/trustee/enrol/0.3/payload.d.ts +1770 -0
  92. package/dist/vta/pcs/trustee/enrol/0.3/payload.d.ts.map +1 -0
  93. package/dist/vta/pcs/trustee/enrol/0.3/payload.js +1054 -0
  94. package/dist/vta/pcs/trustee/enrol/0.3/payload.js.map +1 -0
  95. package/dist/vta/pcs/trustee/justify/0.2/payload.d.ts +4 -4
  96. package/dist/vta/pcs/trustee/justify/0.2/payload.js +1 -1
  97. package/dist/vta/pcs/trustee/justify/0.3/payload.d.ts +13 -2
  98. package/dist/vta/pcs/trustee/justify/0.3/payload.d.ts.map +1 -1
  99. package/dist/vta/pcs/trustee/justify/0.3/payload.js +1 -1
  100. package/dist/vta/pcs/trustee/justify/0.3/payload.js.map +1 -1
  101. package/dist/vta/pcs/trustee/justify/0.4/payload.d.ts +1881 -0
  102. package/dist/vta/pcs/trustee/justify/0.4/payload.d.ts.map +1 -0
  103. package/dist/vta/pcs/trustee/justify/0.4/payload.js +1109 -0
  104. package/dist/vta/pcs/trustee/justify/0.4/payload.js.map +1 -0
  105. package/dist/vta/pcs/trustee/keys/0.2/payload.d.ts +4 -4
  106. package/dist/vta/pcs/trustee/keys/0.2/payload.js +1 -1
  107. package/dist/vta/pcs/trustee/keys/0.3/payload.d.ts +13 -2
  108. package/dist/vta/pcs/trustee/keys/0.3/payload.d.ts.map +1 -1
  109. package/dist/vta/pcs/trustee/keys/0.3/payload.js +1 -1
  110. package/dist/vta/pcs/trustee/keys/0.3/payload.js.map +1 -1
  111. package/dist/vta/pcs/trustee/keys/0.4/payload.d.ts +1926 -0
  112. package/dist/vta/pcs/trustee/keys/0.4/payload.d.ts.map +1 -0
  113. package/dist/vta/pcs/trustee/keys/0.4/payload.js +1129 -0
  114. package/dist/vta/pcs/trustee/keys/0.4/payload.js.map +1 -0
  115. package/dist/vta/pcs/trustee/read/0.1/payload.d.ts +4 -4
  116. package/dist/vta/pcs/trustee/read/0.1/payload.js +1 -1
  117. package/dist/vta/pcs/trustee/read/0.2/payload.d.ts +14 -2
  118. package/dist/vta/pcs/trustee/read/0.2/payload.d.ts.map +1 -1
  119. package/dist/vta/pcs/trustee/read/0.2/payload.js +1 -1
  120. package/dist/vta/pcs/trustee/read/0.2/payload.js.map +1 -1
  121. package/dist/vta/pcs/trustee/read/0.3/payload.d.ts +540 -0
  122. package/dist/vta/pcs/trustee/read/0.3/payload.d.ts.map +1 -0
  123. package/dist/vta/pcs/trustee/read/0.3/payload.js +304 -0
  124. package/dist/vta/pcs/trustee/read/0.3/payload.js.map +1 -0
  125. package/dist/vta/pcs/vote/0.1/payload.d.ts +4 -4
  126. package/dist/vta/pcs/vote/0.1/payload.js +1 -1
  127. package/dist/vta/pcs/vote/0.2/payload.d.ts +13 -2
  128. package/dist/vta/pcs/vote/0.2/payload.d.ts.map +1 -1
  129. package/dist/vta/pcs/vote/0.2/payload.js +1 -1
  130. package/dist/vta/pcs/vote/0.2/payload.js.map +1 -1
  131. package/dist/vta/pcs/vote/0.3/payload.d.ts +2222 -0
  132. package/dist/vta/pcs/vote/0.3/payload.d.ts.map +1 -0
  133. package/dist/vta/pcs/vote/0.3/payload.js +1296 -0
  134. package/dist/vta/pcs/vote/0.3/payload.js.map +1 -0
  135. package/dist/vta/pcs/vote-encrypted/0.2/payload.d.ts +4 -4
  136. package/dist/vta/pcs/vote-encrypted/0.2/payload.js +1 -1
  137. package/dist/vta/pcs/vote-encrypted/0.3/payload.d.ts +13 -2
  138. package/dist/vta/pcs/vote-encrypted/0.3/payload.d.ts.map +1 -1
  139. package/dist/vta/pcs/vote-encrypted/0.3/payload.js +1 -1
  140. package/dist/vta/pcs/vote-encrypted/0.3/payload.js.map +1 -1
  141. package/dist/vta/pcs/vote-encrypted/0.4/payload.d.ts +2242 -0
  142. package/dist/vta/pcs/vote-encrypted/0.4/payload.d.ts.map +1 -0
  143. package/dist/vta/pcs/vote-encrypted/0.4/payload.js +1314 -0
  144. package/dist/vta/pcs/vote-encrypted/0.4/payload.js.map +1 -0
  145. package/dist/vta/pcs/voter/read/0.1/payload.d.ts +4 -4
  146. package/dist/vta/pcs/voter/read/0.1/payload.js +1 -1
  147. package/dist/vta/pcs/voter/read/0.2/payload.d.ts +14 -2
  148. package/dist/vta/pcs/voter/read/0.2/payload.d.ts.map +1 -1
  149. package/dist/vta/pcs/voter/read/0.2/payload.js +1 -1
  150. package/dist/vta/pcs/voter/read/0.2/payload.js.map +1 -1
  151. package/dist/vta/pcs/voter/read/0.3/payload.d.ts +503 -0
  152. package/dist/vta/pcs/voter/read/0.3/payload.d.ts.map +1 -0
  153. package/dist/vta/pcs/voter/read/0.3/payload.js +285 -0
  154. package/dist/vta/pcs/voter/read/0.3/payload.js.map +1 -0
  155. package/dist/vta/pcs/voter/register/0.1/payload.d.ts +4 -4
  156. package/dist/vta/pcs/voter/register/0.1/payload.js +1 -1
  157. package/dist/vta/pcs/voter/register/0.2/payload.d.ts +14 -2
  158. package/dist/vta/pcs/voter/register/0.2/payload.d.ts.map +1 -1
  159. package/dist/vta/pcs/voter/register/0.2/payload.js +1 -1
  160. package/dist/vta/pcs/voter/register/0.2/payload.js.map +1 -1
  161. package/dist/vta/pcs/voter/register/0.3/payload.d.ts +2176 -0
  162. package/dist/vta/pcs/voter/register/0.3/payload.d.ts.map +1 -0
  163. package/dist/vta/pcs/voter/register/0.3/payload.js +1262 -0
  164. package/dist/vta/pcs/voter/register/0.3/payload.js.map +1 -0
  165. package/dist/vtc/_shared/0.5/community-room.d.ts +16 -0
  166. package/dist/vtc/_shared/0.5/community-room.d.ts.map +1 -0
  167. package/dist/vtc/_shared/0.5/community-room.js +6 -0
  168. package/dist/vtc/_shared/0.5/community-room.js.map +1 -0
  169. package/dist/vtc/elections/create/0.1/payload.d.ts +4 -4
  170. package/dist/vtc/elections/create/0.1/payload.js +1 -1
  171. package/dist/vtc/elections/create/0.2/payload.d.ts +4 -4
  172. package/dist/vtc/elections/create/0.2/payload.js +1 -1
  173. package/dist/vtc/elections/create/0.3/payload.d.ts +14 -2
  174. package/dist/vtc/elections/create/0.3/payload.d.ts.map +1 -1
  175. package/dist/vtc/elections/create/0.3/payload.js +1 -1
  176. package/dist/vtc/elections/create/0.3/payload.js.map +1 -1
  177. package/dist/vtc/elections/create/0.4/payload.d.ts +1670 -0
  178. package/dist/vtc/elections/create/0.4/payload.d.ts.map +1 -0
  179. package/dist/vtc/elections/create/0.4/payload.js +1008 -0
  180. package/dist/vtc/elections/create/0.4/payload.js.map +1 -0
  181. package/dist/vtc/elections/show/0.1/payload.d.ts +4 -4
  182. package/dist/vtc/elections/show/0.1/payload.js +1 -1
  183. package/dist/vtc/elections/show/0.2/payload.d.ts +14 -2
  184. package/dist/vtc/elections/show/0.2/payload.d.ts.map +1 -1
  185. package/dist/vtc/elections/show/0.2/payload.js +1 -1
  186. package/dist/vtc/elections/show/0.2/payload.js.map +1 -1
  187. package/dist/vtc/elections/show/0.3/payload.d.ts +3022 -0
  188. package/dist/vtc/elections/show/0.3/payload.d.ts.map +1 -0
  189. package/dist/vtc/elections/show/0.3/payload.js +1765 -0
  190. package/dist/vtc/elections/show/0.3/payload.js.map +1 -0
  191. package/dist/vtc/rooms/community/archive/0.1/payload.d.ts +1644 -0
  192. package/dist/vtc/rooms/community/archive/0.1/payload.d.ts.map +1 -0
  193. package/dist/vtc/rooms/community/archive/0.1/payload.js +940 -0
  194. package/dist/vtc/rooms/community/archive/0.1/payload.js.map +1 -0
  195. package/dist/vtc/rooms/community/get/0.1/payload.d.ts +4 -4
  196. package/dist/vtc/rooms/community/get/0.1/payload.js +1 -1
  197. package/dist/vtc/rooms/community/get/0.2/payload.d.ts +4 -4
  198. package/dist/vtc/rooms/community/get/0.2/payload.js +1 -1
  199. package/dist/vtc/rooms/community/get/0.3/payload.d.ts +13 -2
  200. package/dist/vtc/rooms/community/get/0.3/payload.d.ts.map +1 -1
  201. package/dist/vtc/rooms/community/get/0.3/payload.js +1 -1
  202. package/dist/vtc/rooms/community/get/0.3/payload.js.map +1 -1
  203. package/dist/vtc/rooms/community/get/0.4/payload.d.ts +1405 -0
  204. package/dist/vtc/rooms/community/get/0.4/payload.d.ts.map +1 -0
  205. package/dist/vtc/rooms/community/get/0.4/payload.js +817 -0
  206. package/dist/vtc/rooms/community/get/0.4/payload.js.map +1 -0
  207. package/dist/vtc/rooms/community/list/0.1/payload.d.ts +4 -4
  208. package/dist/vtc/rooms/community/list/0.1/payload.js +1 -1
  209. package/dist/vtc/rooms/community/list/0.2/payload.d.ts +4 -4
  210. package/dist/vtc/rooms/community/list/0.2/payload.js +1 -1
  211. package/dist/vtc/rooms/community/list/0.3/payload.d.ts +13 -2
  212. package/dist/vtc/rooms/community/list/0.3/payload.d.ts.map +1 -1
  213. package/dist/vtc/rooms/community/list/0.3/payload.js +1 -1
  214. package/dist/vtc/rooms/community/list/0.3/payload.js.map +1 -1
  215. package/dist/vtc/rooms/community/list/0.4/payload.d.ts +1505 -0
  216. package/dist/vtc/rooms/community/list/0.4/payload.d.ts.map +1 -0
  217. package/dist/vtc/rooms/community/list/0.4/payload.js +854 -0
  218. package/dist/vtc/rooms/community/list/0.4/payload.js.map +1 -0
  219. package/dist/vtc/rooms/community/members/add/0.1/payload.d.ts +13 -2
  220. package/dist/vtc/rooms/community/members/add/0.1/payload.d.ts.map +1 -1
  221. package/dist/vtc/rooms/community/members/add/0.1/payload.js +1 -1
  222. package/dist/vtc/rooms/community/members/add/0.1/payload.js.map +1 -1
  223. package/dist/vtc/rooms/community/members/add/0.2/payload.d.ts +569 -0
  224. package/dist/vtc/rooms/community/members/add/0.2/payload.d.ts.map +1 -0
  225. package/dist/vtc/rooms/community/members/add/0.2/payload.js +340 -0
  226. package/dist/vtc/rooms/community/members/add/0.2/payload.js.map +1 -0
  227. package/dist/vtc/rooms/community/members/list/0.1/payload.d.ts +13 -2
  228. package/dist/vtc/rooms/community/members/list/0.1/payload.d.ts.map +1 -1
  229. package/dist/vtc/rooms/community/members/list/0.1/payload.js +1 -1
  230. package/dist/vtc/rooms/community/members/list/0.1/payload.js.map +1 -1
  231. package/dist/vtc/rooms/community/members/list/0.2/payload.d.ts +588 -0
  232. package/dist/vtc/rooms/community/members/list/0.2/payload.d.ts.map +1 -0
  233. package/dist/vtc/rooms/community/members/list/0.2/payload.js +341 -0
  234. package/dist/vtc/rooms/community/members/list/0.2/payload.js.map +1 -0
  235. package/dist/vtc/rooms/community/removal/cancel/0.1/payload.d.ts +1440 -0
  236. package/dist/vtc/rooms/community/removal/cancel/0.1/payload.d.ts.map +1 -0
  237. package/dist/vtc/rooms/community/removal/cancel/0.1/payload.js +835 -0
  238. package/dist/vtc/rooms/community/removal/cancel/0.1/payload.js.map +1 -0
  239. package/dist/vtc/rooms/community/remove/0.1/payload.d.ts +1604 -0
  240. package/dist/vtc/rooms/community/remove/0.1/payload.d.ts.map +1 -0
  241. package/dist/vtc/rooms/community/remove/0.1/payload.js +921 -0
  242. package/dist/vtc/rooms/community/remove/0.1/payload.js.map +1 -0
  243. package/dist/vtc/rooms/community/unarchive/0.1/payload.d.ts +1460 -0
  244. package/dist/vtc/rooms/community/unarchive/0.1/payload.d.ts.map +1 -0
  245. package/dist/vtc/rooms/community/unarchive/0.1/payload.js +845 -0
  246. package/dist/vtc/rooms/community/unarchive/0.1/payload.js.map +1 -0
  247. package/dist/vtc/rooms/memberships/list/0.1/payload.d.ts +13 -2
  248. package/dist/vtc/rooms/memberships/list/0.1/payload.d.ts.map +1 -1
  249. package/dist/vtc/rooms/memberships/list/0.1/payload.js +1 -1
  250. package/dist/vtc/rooms/memberships/list/0.1/payload.js.map +1 -1
  251. package/dist/vtc/rooms/memberships/list/0.2/payload.d.ts +830 -0
  252. package/dist/vtc/rooms/memberships/list/0.2/payload.d.ts.map +1 -0
  253. package/dist/vtc/rooms/memberships/list/0.2/payload.js +498 -0
  254. package/dist/vtc/rooms/memberships/list/0.2/payload.js.map +1 -0
  255. package/package.json +1 -1
  256. package/src/_extends.ts +1 -0
  257. package/src/_shared/components.ts +249 -0
  258. package/src/index.ts +75 -0
  259. package/src/rooms/keys/act/0.1/payload.ts +5 -5
  260. package/src/rooms/keys/act/0.10/payload.ts +396 -0
  261. package/src/rooms/keys/act/0.2/payload.ts +5 -5
  262. package/src/rooms/keys/act/0.3/payload.ts +5 -5
  263. package/src/rooms/keys/act/0.4/payload.ts +5 -5
  264. package/src/rooms/keys/act/0.5/payload.ts +5 -5
  265. package/src/rooms/keys/act/0.6/payload.ts +5 -5
  266. package/src/rooms/keys/act/0.7/payload.ts +5 -5
  267. package/src/rooms/keys/act/0.8/payload.ts +5 -5
  268. package/src/rooms/keys/act/0.9/payload.ts +15 -3
  269. package/src/voting/_shared/0.3/voting.ts +17 -0
  270. package/src/voting/election/register/0.1/payload.ts +5 -5
  271. package/src/voting/election/register/0.2/payload.ts +14 -3
  272. package/src/voting/election/register/0.3/payload.ts +1223 -0
  273. package/src/voting/election/show/0.1/payload.ts +5 -5
  274. package/src/voting/election/show/0.2/payload.ts +14 -3
  275. package/src/voting/election/show/0.3/payload.ts +1165 -0
  276. package/src/vta/pcs/trustee/deal/0.2/payload.ts +5 -5
  277. package/src/vta/pcs/trustee/deal/0.3/payload.ts +14 -3
  278. package/src/vta/pcs/trustee/deal/0.4/payload.ts +1164 -0
  279. package/src/vta/pcs/trustee/enrol/0.1/payload.ts +5 -5
  280. package/src/vta/pcs/trustee/enrol/0.2/payload.ts +14 -3
  281. package/src/vta/pcs/trustee/enrol/0.3/payload.ts +1123 -0
  282. package/src/vta/pcs/trustee/justify/0.2/payload.ts +5 -5
  283. package/src/vta/pcs/trustee/justify/0.3/payload.ts +14 -3
  284. package/src/vta/pcs/trustee/justify/0.4/payload.ts +1183 -0
  285. package/src/vta/pcs/trustee/keys/0.2/payload.ts +5 -5
  286. package/src/vta/pcs/trustee/keys/0.3/payload.ts +14 -3
  287. package/src/vta/pcs/trustee/keys/0.4/payload.ts +1210 -0
  288. package/src/vta/pcs/trustee/read/0.1/payload.ts +5 -5
  289. package/src/vta/pcs/trustee/read/0.2/payload.ts +15 -3
  290. package/src/vta/pcs/trustee/read/0.3/payload.ts +385 -0
  291. package/src/vta/pcs/vote/0.1/payload.ts +5 -5
  292. package/src/vta/pcs/vote/0.2/payload.ts +14 -3
  293. package/src/vta/pcs/vote/0.3/payload.ts +1381 -0
  294. package/src/vta/pcs/vote-encrypted/0.2/payload.ts +5 -5
  295. package/src/vta/pcs/vote-encrypted/0.3/payload.ts +14 -3
  296. package/src/vta/pcs/vote-encrypted/0.4/payload.ts +1385 -0
  297. package/src/vta/pcs/voter/read/0.1/payload.ts +5 -5
  298. package/src/vta/pcs/voter/read/0.2/payload.ts +15 -3
  299. package/src/vta/pcs/voter/read/0.3/payload.ts +363 -0
  300. package/src/vta/pcs/voter/register/0.1/payload.ts +5 -5
  301. package/src/vta/pcs/voter/register/0.2/payload.ts +15 -3
  302. package/src/vta/pcs/voter/register/0.3/payload.ts +1372 -0
  303. package/src/vtc/_shared/0.5/community-room.ts +17 -0
  304. package/src/vtc/elections/create/0.1/payload.ts +5 -5
  305. package/src/vtc/elections/create/0.2/payload.ts +5 -5
  306. package/src/vtc/elections/create/0.3/payload.ts +15 -3
  307. package/src/vtc/elections/create/0.4/payload.ts +1057 -0
  308. package/src/vtc/elections/show/0.1/payload.ts +5 -5
  309. package/src/vtc/elections/show/0.2/payload.ts +15 -3
  310. package/src/vtc/elections/show/0.3/payload.ts +1865 -0
  311. package/src/vtc/rooms/community/archive/0.1/payload.ts +995 -0
  312. package/src/vtc/rooms/community/get/0.1/payload.ts +5 -5
  313. package/src/vtc/rooms/community/get/0.2/payload.ts +5 -5
  314. package/src/vtc/rooms/community/get/0.3/payload.ts +14 -3
  315. package/src/vtc/rooms/community/get/0.4/payload.ts +851 -0
  316. package/src/vtc/rooms/community/list/0.1/payload.ts +5 -5
  317. package/src/vtc/rooms/community/list/0.2/payload.ts +5 -5
  318. package/src/vtc/rooms/community/list/0.3/payload.ts +14 -3
  319. package/src/vtc/rooms/community/list/0.4/payload.ts +915 -0
  320. package/src/vtc/rooms/community/members/add/0.1/payload.ts +14 -3
  321. package/src/vtc/rooms/community/members/add/0.2/payload.ts +384 -0
  322. package/src/vtc/rooms/community/members/list/0.1/payload.ts +14 -3
  323. package/src/vtc/rooms/community/members/list/0.2/payload.ts +394 -0
  324. package/src/vtc/rooms/community/removal/cancel/0.1/payload.ts +870 -0
  325. package/src/vtc/rooms/community/remove/0.1/payload.ts +968 -0
  326. package/src/vtc/rooms/community/unarchive/0.1/payload.ts +884 -0
  327. package/src/vtc/rooms/memberships/list/0.1/payload.ts +14 -3
  328. package/src/vtc/rooms/memberships/list/0.2/payload.ts +543 -0
@@ -0,0 +1,830 @@
1
+ /**
2
+ * Generated by scripts/build-ts-bindings.mjs — DO NOT EDIT BY HAND.
3
+ * Source: specs/vtc/rooms/memberships/list/0.2/payload.schema.json
4
+ */
5
+ import type { ArchiveAccess, Ext, MemberAction, MemberActions, MemberStateV2, RoomDescription, RoomLabel, RoomMembershipV2, RoomState, Visibility } from "../../../../../_shared/components.js";
6
+ export interface VTCRoomsMembershipsListPayload {
7
+ /**
8
+ * Opaque continuation token from a previous page's `nextCursor`.
9
+ */
10
+ cursor?: string;
11
+ /**
12
+ * Page size. The community chooses when absent (50 in the reference implementation).
13
+ */
14
+ limit?: number;
15
+ ext?: Ext;
16
+ }
17
+ /**
18
+ * Success response to vtc/rooms/memberships/list. Type https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2#response. The community's record of the caller's admissions to the rooms it owns, in every state, each with the room's own state, and no one else's.
19
+ */
20
+ export interface VTCRoomsMembershipsListResponsePayload {
21
+ /**
22
+ * @maxItems 100
23
+ */
24
+ items: RoomMembershipV2[];
25
+ /**
26
+ * Present when more remain; pass it as `cursor`.
27
+ */
28
+ nextCursor?: string;
29
+ ext?: Ext;
30
+ }
31
+ /** Shared definitions this specification references, re-exported under the names it used to declare them with. */
32
+ export type { ArchiveAccess, Ext, MemberAction, MemberActions, MemberStateV2, RoomDescription, RoomLabel, RoomMembershipV2, RoomState, Visibility };
33
+ /** Trust Task type URI. */
34
+ export declare const TYPE_URI: "https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2";
35
+ /**
36
+ * The earlier version of this specification that this one declares it
37
+ * extends (front matter `extends`, SPEC §5.2 "Declared extension"), or
38
+ * `null`. Only the direct declaration — follow the chain with
39
+ * `extendsChain` / `readForSpec`.
40
+ */
41
+ export declare const EXTENDS: string | null;
42
+ /**
43
+ * Why this version is deprecated, or `null` while it is current. A
44
+ * superseded or retired version is still supported, and is withdrawn from
45
+ * this package in a later scheduled batch (SPEC "Superseded and Withdrawn
46
+ * Versions").
47
+ */
48
+ export declare const DEPRECATION: string | null;
49
+ /** Stable alias for this specification's request payload shape. */
50
+ export type Payload = VTCRoomsMembershipsListPayload;
51
+ /** Trust Task response type URI (request type URI + "#response"). */
52
+ export declare const RESPONSE_TYPE_URI: "https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2#response";
53
+ /** Stable alias for this specification's success-response payload shape. */
54
+ export type Response = VTCRoomsMembershipsListResponsePayload;
55
+ /**
56
+ * This specification's payload schema, as a value.
57
+ *
58
+ * SPEC.md §7.2 item 2 is performed against this. It is shipped as data
59
+ * rather than only as a `.json` file because TypeScript types are erased
60
+ * at runtime: without a schema a consumer has nothing to validate, and
61
+ * every REQUIRED payload member is optional in practice. Cross-file
62
+ * `$ref`s are already inlined, so it needs no resolver.
63
+ */
64
+ export declare const PAYLOAD_SCHEMA: {
65
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
66
+ readonly $id: "https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2";
67
+ readonly title: "VTC Rooms Memberships List — payload";
68
+ readonly type: "object";
69
+ readonly additionalProperties: false;
70
+ readonly properties: {
71
+ readonly cursor: {
72
+ readonly type: "string";
73
+ readonly minLength: 1;
74
+ readonly maxLength: 1024;
75
+ readonly description: "Opaque continuation token from a previous page's `nextCursor`.";
76
+ };
77
+ readonly limit: {
78
+ readonly type: "integer";
79
+ readonly minimum: 1;
80
+ readonly maximum: 100;
81
+ readonly description: "Page size. The community chooses when absent (50 in the reference implementation).";
82
+ };
83
+ readonly ext: {
84
+ readonly $ref: "#/$defs/Ext";
85
+ };
86
+ };
87
+ readonly $defs: {
88
+ readonly Response: {
89
+ readonly $anchor: "response";
90
+ readonly title: "VTC Rooms Memberships List — response payload";
91
+ readonly description: "Success response to vtc/rooms/memberships/list. Type https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2#response. The community's record of the caller's admissions to the rooms it owns, in every state, each with the room's own state, and no one else's.";
92
+ readonly type: "object";
93
+ readonly additionalProperties: false;
94
+ readonly required: readonly ["items"];
95
+ readonly properties: {
96
+ readonly items: {
97
+ readonly type: "array";
98
+ readonly maxItems: 100;
99
+ readonly items: {
100
+ readonly $ref: "#/$defs/RoomMembershipV2";
101
+ };
102
+ };
103
+ readonly nextCursor: {
104
+ readonly type: "string";
105
+ readonly minLength: 1;
106
+ readonly maxLength: 1024;
107
+ readonly description: "Present when more remain; pass it as `cursor`.";
108
+ };
109
+ readonly ext: {
110
+ readonly $ref: "#/$defs/Ext";
111
+ };
112
+ };
113
+ };
114
+ readonly Ext: {
115
+ readonly title: "Ext";
116
+ readonly description: "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.";
117
+ readonly type: "object";
118
+ readonly minProperties: 1;
119
+ readonly additionalProperties: true;
120
+ readonly propertyNames: {
121
+ readonly pattern: "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$";
122
+ };
123
+ };
124
+ readonly RoomMembershipV2: {
125
+ readonly title: "RoomMembershipV2";
126
+ readonly type: "object";
127
+ readonly additionalProperties: false;
128
+ readonly required: readonly ["roomId", "host", "label", "visibility", "actions", "validUntil", "state", "offeredAt", "roomState"];
129
+ readonly description: "What vtc/rooms/memberships/list/0.2 returns: `RoomMembership` with `MemberStateV2`, `suspendedAt`, and the room's own state, so that a member can tell a room that is read-only, closed or going away from one they were removed from.";
130
+ readonly properties: {
131
+ readonly roomId: {
132
+ readonly type: "string";
133
+ readonly minLength: 1;
134
+ readonly maxLength: 512;
135
+ };
136
+ readonly host: {
137
+ readonly type: "string";
138
+ readonly pattern: "^did:";
139
+ readonly maxLength: 2048;
140
+ readonly description: "The room's host: this community.";
141
+ };
142
+ readonly label: {
143
+ readonly $ref: "#/$defs/RoomLabel";
144
+ };
145
+ readonly description: {
146
+ readonly $ref: "#/$defs/RoomDescription";
147
+ readonly description: "Absent when the room has none.";
148
+ };
149
+ readonly visibility: {
150
+ readonly $ref: "#/$defs/Visibility";
151
+ };
152
+ readonly actions: {
153
+ readonly $ref: "#/$defs/MemberActions";
154
+ };
155
+ readonly validUntil: {
156
+ readonly type: "string";
157
+ readonly format: "date-time";
158
+ readonly description: "When the member's authority credential expires.";
159
+ };
160
+ readonly state: {
161
+ readonly $ref: "#/$defs/MemberStateV2";
162
+ };
163
+ readonly offeredAt: {
164
+ readonly type: "string";
165
+ readonly format: "date-time";
166
+ };
167
+ readonly admittedAt: {
168
+ readonly type: "string";
169
+ readonly format: "date-time";
170
+ readonly description: "When the community recorded the admission. Present when `state` is `admitted`, and kept when it becomes `removed`.";
171
+ };
172
+ readonly removedAt: {
173
+ readonly type: "string";
174
+ readonly format: "date-time";
175
+ readonly description: "Present exactly when `state` is `removed`.";
176
+ };
177
+ readonly repeatAcceptUntil: {
178
+ readonly type: "string";
179
+ readonly format: "date-time";
180
+ readonly description: "On an `attributed` or `private` room in state `admitted`: until when the community keeps the Welcome, so that a repeated vtc/rooms/offers/accept carrying the same KeyPackage is answered with it. Absent on an `open` room, in any other state, and once the community no longer keeps it. A surface finding the member admitted but the room absent from its key holder's rooms/keys/list finishes the acceptance before this time, and asks an administrator to re-admit the member after it.";
181
+ };
182
+ readonly suspendedAt: {
183
+ readonly type: "string";
184
+ readonly format: "date-time";
185
+ readonly description: "Present exactly when `state` is `suspended`.";
186
+ };
187
+ readonly roomState: {
188
+ readonly $ref: "#/$defs/RoomState";
189
+ readonly description: "The room's state in its owner's lifecycle. `purging` is shown to members as `removalScheduled`: to them, the room is going away either way.";
190
+ };
191
+ readonly roomAccess: {
192
+ readonly $ref: "#/$defs/ArchiveAccess";
193
+ readonly description: "Present exactly when `roomState` is `archived` or `removalScheduled`.";
194
+ };
195
+ readonly purgeAt: {
196
+ readonly type: "string";
197
+ readonly format: "date-time";
198
+ readonly description: "Present when `roomState` is `removalScheduled`: when the room's content is to be deleted.";
199
+ };
200
+ };
201
+ };
202
+ readonly ArchiveAccess: {
203
+ readonly title: "ArchiveAccess";
204
+ readonly type: "string";
205
+ readonly enum: readonly ["readOnly", "noAccess"];
206
+ readonly description: "What an archived room's members may still do. `readOnly`: their credentials stand and they keep reading what the room holds; the room's host refuses every write, upload and curation from a member. `noAccess`: every credential the room issued before the archival is withdrawn at its host — a room reset — so the host refuses every member's every task; the content is kept intact, and each withdrawn admission is `suspended`, restored when the room is unarchived or made `readOnly`. Neither recalls what a member already read or saved, and on a sealed tier neither removes anyone from the room's group.";
207
+ };
208
+ readonly RoomState: {
209
+ readonly title: "RoomState";
210
+ readonly type: "string";
211
+ readonly enum: readonly ["active", "archived", "removalScheduled", "purging", "removed"];
212
+ readonly description: "Where a room the community owns stands in its owner's lifecycle — distinct from `HostedRoom.lifecycle`, which is the host's clock (`live`, `lapsed`, `dormant`, `reclaimable`) and is computed from the room's epoch, never set. `active`: open to change. `archived`: closed to change by an administrator — no admissions, and the room's host accepts no writes from its members; what members may still do is `ArchiveAccess`. Reversible with vtc/rooms/community/unarchive. `removalScheduled`: an administrator removed the room with a grace period; it admits nobody and its content is kept until `purgeAt`, and vtc/rooms/community/removal/cancel returns it to `archived`. `purging`: the grace period ended (or there was none) and the community is deleting the room's content from its host and storage; not reversible. `removed`: the content is gone; the community keeps only this record of the room, for its history.";
213
+ };
214
+ readonly MemberStateV2: {
215
+ readonly title: "MemberStateV2";
216
+ readonly type: "string";
217
+ readonly enum: readonly ["offered", "admitted", "suspended", "removed"];
218
+ readonly description: "`MemberState` plus `suspended`. `offered`: credentials issued and waiting for the member to collect and accept them. `admitted`: accepted — on a sealed tier, the member is in the room's group. `suspended`: admitted, but the room was archived with `noAccess` (or scheduled for removal), so the room's host refuses the member's credentials; on a sealed tier they are still in the room's group. Restored to `admitted` with freshly issued credentials when the room leaves that state, and never restored if it is removed. `removed`: an administrator removed them, or withdrew their offer — archiving withdraws every open offer; on a sealed tier the room has advanced past an admitted member.";
219
+ };
220
+ readonly MemberActions: {
221
+ readonly title: "MemberActions";
222
+ readonly type: "array";
223
+ readonly minItems: 1;
224
+ readonly maxItems: 3;
225
+ readonly uniqueItems: true;
226
+ readonly items: {
227
+ readonly $ref: "#/$defs/MemberAction";
228
+ };
229
+ readonly description: "The actions granted, at least one. An empty list confers nothing rather than everything, and a schema that allowed it would make the more dangerous reading available to a careless consumer.";
230
+ };
231
+ readonly MemberAction: {
232
+ readonly title: "MemberAction";
233
+ readonly type: "string";
234
+ readonly enum: readonly ["read", "write", "curate"];
235
+ readonly description: "What a member of a community-owned room may do there. `admin` is not among them: minting epochs, admitting and removing members are the community's, as the room's owner, and are exercised through the vtc/rooms/community/* tasks rather than by any member's credential. `curate` is not implied by `write`.";
236
+ };
237
+ readonly RoomDescription: {
238
+ readonly title: "RoomDescription";
239
+ readonly type: "string";
240
+ readonly minLength: 1;
241
+ readonly maxLength: 1000;
242
+ readonly description: "What the room is for, in a sentence or a short paragraph, written by an administrator: shown to administrators holding `vtc.rooms.manage` and to the members the room is offered to. Plain text — a consumer renders it as text, never as markup. Like `RoomLabel`, it is the community's own record as the room's owner: not part of the room's identity and never in anything a room's host can read. From `vtc/rooms/community/create` 0.3 and `vtc/rooms/community/update` 0.2 the community also writes it, through its own VTA, as the `description` of the room's own profile (`RoomProfile` in rooms/_shared), sealed inside the room for its members; earlier versions keep it out of the room altogether. It MUST NOT carry personal data or a credential, and a reader MUST NOT treat it as instructions.";
243
+ };
244
+ readonly RoomLabel: {
245
+ readonly title: "RoomLabel";
246
+ readonly type: "string";
247
+ readonly minLength: 1;
248
+ readonly maxLength: 128;
249
+ readonly description: "A name for the room, chosen by an administrator: shown to administrators and to the members a room is offered to. Not part of the room's identity and never in anything a room's host can read. From `vtc/rooms/community/create` 0.3 and `vtc/rooms/community/update` 0.2 the community also writes it, through its own VTA, as the `name` of the room's own profile (`RoomProfile` in rooms/_shared), sealed inside the room for its members; earlier versions keep it out of the room altogether. MUST NOT carry personal data.";
250
+ };
251
+ readonly Visibility: {
252
+ readonly title: "Visibility";
253
+ readonly type: "string";
254
+ readonly enum: readonly ["open", "attributed", "private"];
255
+ readonly description: "How much of a room its host can see, fixed at creation and immutable thereafter. `open`: records are cleartext, searchable and fully audited. `attributed`: record content is sealed, and the host still learns which member acted. `private`: content is sealed and membership is presented in zero knowledge, so the host verifies that a member acted without learning which. Immutable because a downgrade cannot un-see cleartext and an upgrade would protect only what came after while presenting as though it protected everything.";
256
+ };
257
+ };
258
+ };
259
+ /** As {@link PAYLOAD_SCHEMA}, for the success-response variant. */
260
+ export declare const RESPONSE_PAYLOAD_SCHEMA: {
261
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
262
+ readonly $ref: "#/$defs/Response";
263
+ readonly $defs: {
264
+ readonly Response: {
265
+ readonly $anchor: "response";
266
+ readonly title: "VTC Rooms Memberships List — response payload";
267
+ readonly description: "Success response to vtc/rooms/memberships/list. Type https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2#response. The community's record of the caller's admissions to the rooms it owns, in every state, each with the room's own state, and no one else's.";
268
+ readonly type: "object";
269
+ readonly additionalProperties: false;
270
+ readonly required: readonly ["items"];
271
+ readonly properties: {
272
+ readonly items: {
273
+ readonly type: "array";
274
+ readonly maxItems: 100;
275
+ readonly items: {
276
+ readonly $ref: "#/$defs/RoomMembershipV2";
277
+ };
278
+ };
279
+ readonly nextCursor: {
280
+ readonly type: "string";
281
+ readonly minLength: 1;
282
+ readonly maxLength: 1024;
283
+ readonly description: "Present when more remain; pass it as `cursor`.";
284
+ };
285
+ readonly ext: {
286
+ readonly $ref: "#/$defs/Ext";
287
+ };
288
+ };
289
+ };
290
+ readonly Ext: {
291
+ readonly title: "Ext";
292
+ readonly description: "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.";
293
+ readonly type: "object";
294
+ readonly minProperties: 1;
295
+ readonly additionalProperties: true;
296
+ readonly propertyNames: {
297
+ readonly pattern: "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$";
298
+ };
299
+ };
300
+ readonly RoomMembershipV2: {
301
+ readonly title: "RoomMembershipV2";
302
+ readonly type: "object";
303
+ readonly additionalProperties: false;
304
+ readonly required: readonly ["roomId", "host", "label", "visibility", "actions", "validUntil", "state", "offeredAt", "roomState"];
305
+ readonly description: "What vtc/rooms/memberships/list/0.2 returns: `RoomMembership` with `MemberStateV2`, `suspendedAt`, and the room's own state, so that a member can tell a room that is read-only, closed or going away from one they were removed from.";
306
+ readonly properties: {
307
+ readonly roomId: {
308
+ readonly type: "string";
309
+ readonly minLength: 1;
310
+ readonly maxLength: 512;
311
+ };
312
+ readonly host: {
313
+ readonly type: "string";
314
+ readonly pattern: "^did:";
315
+ readonly maxLength: 2048;
316
+ readonly description: "The room's host: this community.";
317
+ };
318
+ readonly label: {
319
+ readonly $ref: "#/$defs/RoomLabel";
320
+ };
321
+ readonly description: {
322
+ readonly $ref: "#/$defs/RoomDescription";
323
+ readonly description: "Absent when the room has none.";
324
+ };
325
+ readonly visibility: {
326
+ readonly $ref: "#/$defs/Visibility";
327
+ };
328
+ readonly actions: {
329
+ readonly $ref: "#/$defs/MemberActions";
330
+ };
331
+ readonly validUntil: {
332
+ readonly type: "string";
333
+ readonly format: "date-time";
334
+ readonly description: "When the member's authority credential expires.";
335
+ };
336
+ readonly state: {
337
+ readonly $ref: "#/$defs/MemberStateV2";
338
+ };
339
+ readonly offeredAt: {
340
+ readonly type: "string";
341
+ readonly format: "date-time";
342
+ };
343
+ readonly admittedAt: {
344
+ readonly type: "string";
345
+ readonly format: "date-time";
346
+ readonly description: "When the community recorded the admission. Present when `state` is `admitted`, and kept when it becomes `removed`.";
347
+ };
348
+ readonly removedAt: {
349
+ readonly type: "string";
350
+ readonly format: "date-time";
351
+ readonly description: "Present exactly when `state` is `removed`.";
352
+ };
353
+ readonly repeatAcceptUntil: {
354
+ readonly type: "string";
355
+ readonly format: "date-time";
356
+ readonly description: "On an `attributed` or `private` room in state `admitted`: until when the community keeps the Welcome, so that a repeated vtc/rooms/offers/accept carrying the same KeyPackage is answered with it. Absent on an `open` room, in any other state, and once the community no longer keeps it. A surface finding the member admitted but the room absent from its key holder's rooms/keys/list finishes the acceptance before this time, and asks an administrator to re-admit the member after it.";
357
+ };
358
+ readonly suspendedAt: {
359
+ readonly type: "string";
360
+ readonly format: "date-time";
361
+ readonly description: "Present exactly when `state` is `suspended`.";
362
+ };
363
+ readonly roomState: {
364
+ readonly $ref: "#/$defs/RoomState";
365
+ readonly description: "The room's state in its owner's lifecycle. `purging` is shown to members as `removalScheduled`: to them, the room is going away either way.";
366
+ };
367
+ readonly roomAccess: {
368
+ readonly $ref: "#/$defs/ArchiveAccess";
369
+ readonly description: "Present exactly when `roomState` is `archived` or `removalScheduled`.";
370
+ };
371
+ readonly purgeAt: {
372
+ readonly type: "string";
373
+ readonly format: "date-time";
374
+ readonly description: "Present when `roomState` is `removalScheduled`: when the room's content is to be deleted.";
375
+ };
376
+ };
377
+ };
378
+ readonly ArchiveAccess: {
379
+ readonly title: "ArchiveAccess";
380
+ readonly type: "string";
381
+ readonly enum: readonly ["readOnly", "noAccess"];
382
+ readonly description: "What an archived room's members may still do. `readOnly`: their credentials stand and they keep reading what the room holds; the room's host refuses every write, upload and curation from a member. `noAccess`: every credential the room issued before the archival is withdrawn at its host — a room reset — so the host refuses every member's every task; the content is kept intact, and each withdrawn admission is `suspended`, restored when the room is unarchived or made `readOnly`. Neither recalls what a member already read or saved, and on a sealed tier neither removes anyone from the room's group.";
383
+ };
384
+ readonly RoomState: {
385
+ readonly title: "RoomState";
386
+ readonly type: "string";
387
+ readonly enum: readonly ["active", "archived", "removalScheduled", "purging", "removed"];
388
+ readonly description: "Where a room the community owns stands in its owner's lifecycle — distinct from `HostedRoom.lifecycle`, which is the host's clock (`live`, `lapsed`, `dormant`, `reclaimable`) and is computed from the room's epoch, never set. `active`: open to change. `archived`: closed to change by an administrator — no admissions, and the room's host accepts no writes from its members; what members may still do is `ArchiveAccess`. Reversible with vtc/rooms/community/unarchive. `removalScheduled`: an administrator removed the room with a grace period; it admits nobody and its content is kept until `purgeAt`, and vtc/rooms/community/removal/cancel returns it to `archived`. `purging`: the grace period ended (or there was none) and the community is deleting the room's content from its host and storage; not reversible. `removed`: the content is gone; the community keeps only this record of the room, for its history.";
389
+ };
390
+ readonly MemberStateV2: {
391
+ readonly title: "MemberStateV2";
392
+ readonly type: "string";
393
+ readonly enum: readonly ["offered", "admitted", "suspended", "removed"];
394
+ readonly description: "`MemberState` plus `suspended`. `offered`: credentials issued and waiting for the member to collect and accept them. `admitted`: accepted — on a sealed tier, the member is in the room's group. `suspended`: admitted, but the room was archived with `noAccess` (or scheduled for removal), so the room's host refuses the member's credentials; on a sealed tier they are still in the room's group. Restored to `admitted` with freshly issued credentials when the room leaves that state, and never restored if it is removed. `removed`: an administrator removed them, or withdrew their offer — archiving withdraws every open offer; on a sealed tier the room has advanced past an admitted member.";
395
+ };
396
+ readonly MemberActions: {
397
+ readonly title: "MemberActions";
398
+ readonly type: "array";
399
+ readonly minItems: 1;
400
+ readonly maxItems: 3;
401
+ readonly uniqueItems: true;
402
+ readonly items: {
403
+ readonly $ref: "#/$defs/MemberAction";
404
+ };
405
+ readonly description: "The actions granted, at least one. An empty list confers nothing rather than everything, and a schema that allowed it would make the more dangerous reading available to a careless consumer.";
406
+ };
407
+ readonly MemberAction: {
408
+ readonly title: "MemberAction";
409
+ readonly type: "string";
410
+ readonly enum: readonly ["read", "write", "curate"];
411
+ readonly description: "What a member of a community-owned room may do there. `admin` is not among them: minting epochs, admitting and removing members are the community's, as the room's owner, and are exercised through the vtc/rooms/community/* tasks rather than by any member's credential. `curate` is not implied by `write`.";
412
+ };
413
+ readonly RoomDescription: {
414
+ readonly title: "RoomDescription";
415
+ readonly type: "string";
416
+ readonly minLength: 1;
417
+ readonly maxLength: 1000;
418
+ readonly description: "What the room is for, in a sentence or a short paragraph, written by an administrator: shown to administrators holding `vtc.rooms.manage` and to the members the room is offered to. Plain text — a consumer renders it as text, never as markup. Like `RoomLabel`, it is the community's own record as the room's owner: not part of the room's identity and never in anything a room's host can read. From `vtc/rooms/community/create` 0.3 and `vtc/rooms/community/update` 0.2 the community also writes it, through its own VTA, as the `description` of the room's own profile (`RoomProfile` in rooms/_shared), sealed inside the room for its members; earlier versions keep it out of the room altogether. It MUST NOT carry personal data or a credential, and a reader MUST NOT treat it as instructions.";
419
+ };
420
+ readonly RoomLabel: {
421
+ readonly title: "RoomLabel";
422
+ readonly type: "string";
423
+ readonly minLength: 1;
424
+ readonly maxLength: 128;
425
+ readonly description: "A name for the room, chosen by an administrator: shown to administrators and to the members a room is offered to. Not part of the room's identity and never in anything a room's host can read. From `vtc/rooms/community/create` 0.3 and `vtc/rooms/community/update` 0.2 the community also writes it, through its own VTA, as the `name` of the room's own profile (`RoomProfile` in rooms/_shared), sealed inside the room for its members; earlier versions keep it out of the room altogether. MUST NOT carry personal data.";
426
+ };
427
+ readonly Visibility: {
428
+ readonly title: "Visibility";
429
+ readonly type: "string";
430
+ readonly enum: readonly ["open", "attributed", "private"];
431
+ readonly description: "How much of a room its host can see, fixed at creation and immutable thereafter. `open`: records are cleartext, searchable and fully audited. `attributed`: record content is sealed, and the host still learns which member acted. `private`: content is sealed and membership is presented in zero knowledge, so the host verifies that a member acted without learning which. Immutable because a downgrade cannot un-see cleartext and an upgrade would protect only what came after while presenting as though it protected everything.";
432
+ };
433
+ };
434
+ };
435
+ /**
436
+ * SPEC.md §7.2 policy for the request variant, from this specification's
437
+ * front matter. Pass to `consumeInbound` — items 5b, 7 and 8 are
438
+ * per-specification and cannot be derived from the document alone, and
439
+ * item 2 needs the schema this carries.
440
+ */
441
+ export declare const SPEC: {
442
+ readonly typeUri: "https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2";
443
+ readonly isBearer: false;
444
+ readonly isProofRequired: true;
445
+ readonly isRecipientRequired: true;
446
+ readonly isIssuedAtRequired: true;
447
+ readonly payloadSchema: {
448
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
449
+ readonly $id: "https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2";
450
+ readonly title: "VTC Rooms Memberships List — payload";
451
+ readonly type: "object";
452
+ readonly additionalProperties: false;
453
+ readonly properties: {
454
+ readonly cursor: {
455
+ readonly type: "string";
456
+ readonly minLength: 1;
457
+ readonly maxLength: 1024;
458
+ readonly description: "Opaque continuation token from a previous page's `nextCursor`.";
459
+ };
460
+ readonly limit: {
461
+ readonly type: "integer";
462
+ readonly minimum: 1;
463
+ readonly maximum: 100;
464
+ readonly description: "Page size. The community chooses when absent (50 in the reference implementation).";
465
+ };
466
+ readonly ext: {
467
+ readonly $ref: "#/$defs/Ext";
468
+ };
469
+ };
470
+ readonly $defs: {
471
+ readonly Response: {
472
+ readonly $anchor: "response";
473
+ readonly title: "VTC Rooms Memberships List — response payload";
474
+ readonly description: "Success response to vtc/rooms/memberships/list. Type https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2#response. The community's record of the caller's admissions to the rooms it owns, in every state, each with the room's own state, and no one else's.";
475
+ readonly type: "object";
476
+ readonly additionalProperties: false;
477
+ readonly required: readonly ["items"];
478
+ readonly properties: {
479
+ readonly items: {
480
+ readonly type: "array";
481
+ readonly maxItems: 100;
482
+ readonly items: {
483
+ readonly $ref: "#/$defs/RoomMembershipV2";
484
+ };
485
+ };
486
+ readonly nextCursor: {
487
+ readonly type: "string";
488
+ readonly minLength: 1;
489
+ readonly maxLength: 1024;
490
+ readonly description: "Present when more remain; pass it as `cursor`.";
491
+ };
492
+ readonly ext: {
493
+ readonly $ref: "#/$defs/Ext";
494
+ };
495
+ };
496
+ };
497
+ readonly Ext: {
498
+ readonly title: "Ext";
499
+ readonly description: "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.";
500
+ readonly type: "object";
501
+ readonly minProperties: 1;
502
+ readonly additionalProperties: true;
503
+ readonly propertyNames: {
504
+ readonly pattern: "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$";
505
+ };
506
+ };
507
+ readonly RoomMembershipV2: {
508
+ readonly title: "RoomMembershipV2";
509
+ readonly type: "object";
510
+ readonly additionalProperties: false;
511
+ readonly required: readonly ["roomId", "host", "label", "visibility", "actions", "validUntil", "state", "offeredAt", "roomState"];
512
+ readonly description: "What vtc/rooms/memberships/list/0.2 returns: `RoomMembership` with `MemberStateV2`, `suspendedAt`, and the room's own state, so that a member can tell a room that is read-only, closed or going away from one they were removed from.";
513
+ readonly properties: {
514
+ readonly roomId: {
515
+ readonly type: "string";
516
+ readonly minLength: 1;
517
+ readonly maxLength: 512;
518
+ };
519
+ readonly host: {
520
+ readonly type: "string";
521
+ readonly pattern: "^did:";
522
+ readonly maxLength: 2048;
523
+ readonly description: "The room's host: this community.";
524
+ };
525
+ readonly label: {
526
+ readonly $ref: "#/$defs/RoomLabel";
527
+ };
528
+ readonly description: {
529
+ readonly $ref: "#/$defs/RoomDescription";
530
+ readonly description: "Absent when the room has none.";
531
+ };
532
+ readonly visibility: {
533
+ readonly $ref: "#/$defs/Visibility";
534
+ };
535
+ readonly actions: {
536
+ readonly $ref: "#/$defs/MemberActions";
537
+ };
538
+ readonly validUntil: {
539
+ readonly type: "string";
540
+ readonly format: "date-time";
541
+ readonly description: "When the member's authority credential expires.";
542
+ };
543
+ readonly state: {
544
+ readonly $ref: "#/$defs/MemberStateV2";
545
+ };
546
+ readonly offeredAt: {
547
+ readonly type: "string";
548
+ readonly format: "date-time";
549
+ };
550
+ readonly admittedAt: {
551
+ readonly type: "string";
552
+ readonly format: "date-time";
553
+ readonly description: "When the community recorded the admission. Present when `state` is `admitted`, and kept when it becomes `removed`.";
554
+ };
555
+ readonly removedAt: {
556
+ readonly type: "string";
557
+ readonly format: "date-time";
558
+ readonly description: "Present exactly when `state` is `removed`.";
559
+ };
560
+ readonly repeatAcceptUntil: {
561
+ readonly type: "string";
562
+ readonly format: "date-time";
563
+ readonly description: "On an `attributed` or `private` room in state `admitted`: until when the community keeps the Welcome, so that a repeated vtc/rooms/offers/accept carrying the same KeyPackage is answered with it. Absent on an `open` room, in any other state, and once the community no longer keeps it. A surface finding the member admitted but the room absent from its key holder's rooms/keys/list finishes the acceptance before this time, and asks an administrator to re-admit the member after it.";
564
+ };
565
+ readonly suspendedAt: {
566
+ readonly type: "string";
567
+ readonly format: "date-time";
568
+ readonly description: "Present exactly when `state` is `suspended`.";
569
+ };
570
+ readonly roomState: {
571
+ readonly $ref: "#/$defs/RoomState";
572
+ readonly description: "The room's state in its owner's lifecycle. `purging` is shown to members as `removalScheduled`: to them, the room is going away either way.";
573
+ };
574
+ readonly roomAccess: {
575
+ readonly $ref: "#/$defs/ArchiveAccess";
576
+ readonly description: "Present exactly when `roomState` is `archived` or `removalScheduled`.";
577
+ };
578
+ readonly purgeAt: {
579
+ readonly type: "string";
580
+ readonly format: "date-time";
581
+ readonly description: "Present when `roomState` is `removalScheduled`: when the room's content is to be deleted.";
582
+ };
583
+ };
584
+ };
585
+ readonly ArchiveAccess: {
586
+ readonly title: "ArchiveAccess";
587
+ readonly type: "string";
588
+ readonly enum: readonly ["readOnly", "noAccess"];
589
+ readonly description: "What an archived room's members may still do. `readOnly`: their credentials stand and they keep reading what the room holds; the room's host refuses every write, upload and curation from a member. `noAccess`: every credential the room issued before the archival is withdrawn at its host — a room reset — so the host refuses every member's every task; the content is kept intact, and each withdrawn admission is `suspended`, restored when the room is unarchived or made `readOnly`. Neither recalls what a member already read or saved, and on a sealed tier neither removes anyone from the room's group.";
590
+ };
591
+ readonly RoomState: {
592
+ readonly title: "RoomState";
593
+ readonly type: "string";
594
+ readonly enum: readonly ["active", "archived", "removalScheduled", "purging", "removed"];
595
+ readonly description: "Where a room the community owns stands in its owner's lifecycle — distinct from `HostedRoom.lifecycle`, which is the host's clock (`live`, `lapsed`, `dormant`, `reclaimable`) and is computed from the room's epoch, never set. `active`: open to change. `archived`: closed to change by an administrator — no admissions, and the room's host accepts no writes from its members; what members may still do is `ArchiveAccess`. Reversible with vtc/rooms/community/unarchive. `removalScheduled`: an administrator removed the room with a grace period; it admits nobody and its content is kept until `purgeAt`, and vtc/rooms/community/removal/cancel returns it to `archived`. `purging`: the grace period ended (or there was none) and the community is deleting the room's content from its host and storage; not reversible. `removed`: the content is gone; the community keeps only this record of the room, for its history.";
596
+ };
597
+ readonly MemberStateV2: {
598
+ readonly title: "MemberStateV2";
599
+ readonly type: "string";
600
+ readonly enum: readonly ["offered", "admitted", "suspended", "removed"];
601
+ readonly description: "`MemberState` plus `suspended`. `offered`: credentials issued and waiting for the member to collect and accept them. `admitted`: accepted — on a sealed tier, the member is in the room's group. `suspended`: admitted, but the room was archived with `noAccess` (or scheduled for removal), so the room's host refuses the member's credentials; on a sealed tier they are still in the room's group. Restored to `admitted` with freshly issued credentials when the room leaves that state, and never restored if it is removed. `removed`: an administrator removed them, or withdrew their offer — archiving withdraws every open offer; on a sealed tier the room has advanced past an admitted member.";
602
+ };
603
+ readonly MemberActions: {
604
+ readonly title: "MemberActions";
605
+ readonly type: "array";
606
+ readonly minItems: 1;
607
+ readonly maxItems: 3;
608
+ readonly uniqueItems: true;
609
+ readonly items: {
610
+ readonly $ref: "#/$defs/MemberAction";
611
+ };
612
+ readonly description: "The actions granted, at least one. An empty list confers nothing rather than everything, and a schema that allowed it would make the more dangerous reading available to a careless consumer.";
613
+ };
614
+ readonly MemberAction: {
615
+ readonly title: "MemberAction";
616
+ readonly type: "string";
617
+ readonly enum: readonly ["read", "write", "curate"];
618
+ readonly description: "What a member of a community-owned room may do there. `admin` is not among them: minting epochs, admitting and removing members are the community's, as the room's owner, and are exercised through the vtc/rooms/community/* tasks rather than by any member's credential. `curate` is not implied by `write`.";
619
+ };
620
+ readonly RoomDescription: {
621
+ readonly title: "RoomDescription";
622
+ readonly type: "string";
623
+ readonly minLength: 1;
624
+ readonly maxLength: 1000;
625
+ readonly description: "What the room is for, in a sentence or a short paragraph, written by an administrator: shown to administrators holding `vtc.rooms.manage` and to the members the room is offered to. Plain text — a consumer renders it as text, never as markup. Like `RoomLabel`, it is the community's own record as the room's owner: not part of the room's identity and never in anything a room's host can read. From `vtc/rooms/community/create` 0.3 and `vtc/rooms/community/update` 0.2 the community also writes it, through its own VTA, as the `description` of the room's own profile (`RoomProfile` in rooms/_shared), sealed inside the room for its members; earlier versions keep it out of the room altogether. It MUST NOT carry personal data or a credential, and a reader MUST NOT treat it as instructions.";
626
+ };
627
+ readonly RoomLabel: {
628
+ readonly title: "RoomLabel";
629
+ readonly type: "string";
630
+ readonly minLength: 1;
631
+ readonly maxLength: 128;
632
+ readonly description: "A name for the room, chosen by an administrator: shown to administrators and to the members a room is offered to. Not part of the room's identity and never in anything a room's host can read. From `vtc/rooms/community/create` 0.3 and `vtc/rooms/community/update` 0.2 the community also writes it, through its own VTA, as the `name` of the room's own profile (`RoomProfile` in rooms/_shared), sealed inside the room for its members; earlier versions keep it out of the room altogether. MUST NOT carry personal data.";
633
+ };
634
+ readonly Visibility: {
635
+ readonly title: "Visibility";
636
+ readonly type: "string";
637
+ readonly enum: readonly ["open", "attributed", "private"];
638
+ readonly description: "How much of a room its host can see, fixed at creation and immutable thereafter. `open`: records are cleartext, searchable and fully audited. `attributed`: record content is sealed, and the host still learns which member acted. `private`: content is sealed and membership is presented in zero knowledge, so the host verifies that a member acted without learning which. Immutable because a downgrade cannot un-see cleartext and an upgrade would protect only what came after while presenting as though it protected everything.";
639
+ };
640
+ };
641
+ };
642
+ };
643
+ /**
644
+ * SPEC.md §7.2 policy for the success-response variant. `isRecipientRequired`
645
+ * tracks the *issuer* party's requirement because a response swaps the
646
+ * parties (§7.3 item 5).
647
+ */
648
+ export declare const RESPONSE_SPEC: {
649
+ readonly typeUri: "https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2#response";
650
+ readonly isBearer: false;
651
+ readonly isProofRequired: true;
652
+ readonly isRecipientRequired: true;
653
+ readonly isIssuedAtRequired: true;
654
+ readonly payloadSchema: {
655
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
656
+ readonly $ref: "#/$defs/Response";
657
+ readonly $defs: {
658
+ readonly Response: {
659
+ readonly $anchor: "response";
660
+ readonly title: "VTC Rooms Memberships List — response payload";
661
+ readonly description: "Success response to vtc/rooms/memberships/list. Type https://trusttasks.org/spec/vtc/rooms/memberships/list/0.2#response. The community's record of the caller's admissions to the rooms it owns, in every state, each with the room's own state, and no one else's.";
662
+ readonly type: "object";
663
+ readonly additionalProperties: false;
664
+ readonly required: readonly ["items"];
665
+ readonly properties: {
666
+ readonly items: {
667
+ readonly type: "array";
668
+ readonly maxItems: 100;
669
+ readonly items: {
670
+ readonly $ref: "#/$defs/RoomMembershipV2";
671
+ };
672
+ };
673
+ readonly nextCursor: {
674
+ readonly type: "string";
675
+ readonly minLength: 1;
676
+ readonly maxLength: 1024;
677
+ readonly description: "Present when more remain; pass it as `cursor`.";
678
+ };
679
+ readonly ext: {
680
+ readonly $ref: "#/$defs/Ext";
681
+ };
682
+ };
683
+ };
684
+ readonly Ext: {
685
+ readonly title: "Ext";
686
+ readonly description: "Vendor-namespaced extension object per SPEC.md §4.5.1. Each immediate key MUST be a reverse-DNS namespace; structure under each namespace is opaque to the framework.";
687
+ readonly type: "object";
688
+ readonly minProperties: 1;
689
+ readonly additionalProperties: true;
690
+ readonly propertyNames: {
691
+ readonly pattern: "^[a-z][a-z0-9-]*(\\.[a-z0-9-]+)+$";
692
+ };
693
+ };
694
+ readonly RoomMembershipV2: {
695
+ readonly title: "RoomMembershipV2";
696
+ readonly type: "object";
697
+ readonly additionalProperties: false;
698
+ readonly required: readonly ["roomId", "host", "label", "visibility", "actions", "validUntil", "state", "offeredAt", "roomState"];
699
+ readonly description: "What vtc/rooms/memberships/list/0.2 returns: `RoomMembership` with `MemberStateV2`, `suspendedAt`, and the room's own state, so that a member can tell a room that is read-only, closed or going away from one they were removed from.";
700
+ readonly properties: {
701
+ readonly roomId: {
702
+ readonly type: "string";
703
+ readonly minLength: 1;
704
+ readonly maxLength: 512;
705
+ };
706
+ readonly host: {
707
+ readonly type: "string";
708
+ readonly pattern: "^did:";
709
+ readonly maxLength: 2048;
710
+ readonly description: "The room's host: this community.";
711
+ };
712
+ readonly label: {
713
+ readonly $ref: "#/$defs/RoomLabel";
714
+ };
715
+ readonly description: {
716
+ readonly $ref: "#/$defs/RoomDescription";
717
+ readonly description: "Absent when the room has none.";
718
+ };
719
+ readonly visibility: {
720
+ readonly $ref: "#/$defs/Visibility";
721
+ };
722
+ readonly actions: {
723
+ readonly $ref: "#/$defs/MemberActions";
724
+ };
725
+ readonly validUntil: {
726
+ readonly type: "string";
727
+ readonly format: "date-time";
728
+ readonly description: "When the member's authority credential expires.";
729
+ };
730
+ readonly state: {
731
+ readonly $ref: "#/$defs/MemberStateV2";
732
+ };
733
+ readonly offeredAt: {
734
+ readonly type: "string";
735
+ readonly format: "date-time";
736
+ };
737
+ readonly admittedAt: {
738
+ readonly type: "string";
739
+ readonly format: "date-time";
740
+ readonly description: "When the community recorded the admission. Present when `state` is `admitted`, and kept when it becomes `removed`.";
741
+ };
742
+ readonly removedAt: {
743
+ readonly type: "string";
744
+ readonly format: "date-time";
745
+ readonly description: "Present exactly when `state` is `removed`.";
746
+ };
747
+ readonly repeatAcceptUntil: {
748
+ readonly type: "string";
749
+ readonly format: "date-time";
750
+ readonly description: "On an `attributed` or `private` room in state `admitted`: until when the community keeps the Welcome, so that a repeated vtc/rooms/offers/accept carrying the same KeyPackage is answered with it. Absent on an `open` room, in any other state, and once the community no longer keeps it. A surface finding the member admitted but the room absent from its key holder's rooms/keys/list finishes the acceptance before this time, and asks an administrator to re-admit the member after it.";
751
+ };
752
+ readonly suspendedAt: {
753
+ readonly type: "string";
754
+ readonly format: "date-time";
755
+ readonly description: "Present exactly when `state` is `suspended`.";
756
+ };
757
+ readonly roomState: {
758
+ readonly $ref: "#/$defs/RoomState";
759
+ readonly description: "The room's state in its owner's lifecycle. `purging` is shown to members as `removalScheduled`: to them, the room is going away either way.";
760
+ };
761
+ readonly roomAccess: {
762
+ readonly $ref: "#/$defs/ArchiveAccess";
763
+ readonly description: "Present exactly when `roomState` is `archived` or `removalScheduled`.";
764
+ };
765
+ readonly purgeAt: {
766
+ readonly type: "string";
767
+ readonly format: "date-time";
768
+ readonly description: "Present when `roomState` is `removalScheduled`: when the room's content is to be deleted.";
769
+ };
770
+ };
771
+ };
772
+ readonly ArchiveAccess: {
773
+ readonly title: "ArchiveAccess";
774
+ readonly type: "string";
775
+ readonly enum: readonly ["readOnly", "noAccess"];
776
+ readonly description: "What an archived room's members may still do. `readOnly`: their credentials stand and they keep reading what the room holds; the room's host refuses every write, upload and curation from a member. `noAccess`: every credential the room issued before the archival is withdrawn at its host — a room reset — so the host refuses every member's every task; the content is kept intact, and each withdrawn admission is `suspended`, restored when the room is unarchived or made `readOnly`. Neither recalls what a member already read or saved, and on a sealed tier neither removes anyone from the room's group.";
777
+ };
778
+ readonly RoomState: {
779
+ readonly title: "RoomState";
780
+ readonly type: "string";
781
+ readonly enum: readonly ["active", "archived", "removalScheduled", "purging", "removed"];
782
+ readonly description: "Where a room the community owns stands in its owner's lifecycle — distinct from `HostedRoom.lifecycle`, which is the host's clock (`live`, `lapsed`, `dormant`, `reclaimable`) and is computed from the room's epoch, never set. `active`: open to change. `archived`: closed to change by an administrator — no admissions, and the room's host accepts no writes from its members; what members may still do is `ArchiveAccess`. Reversible with vtc/rooms/community/unarchive. `removalScheduled`: an administrator removed the room with a grace period; it admits nobody and its content is kept until `purgeAt`, and vtc/rooms/community/removal/cancel returns it to `archived`. `purging`: the grace period ended (or there was none) and the community is deleting the room's content from its host and storage; not reversible. `removed`: the content is gone; the community keeps only this record of the room, for its history.";
783
+ };
784
+ readonly MemberStateV2: {
785
+ readonly title: "MemberStateV2";
786
+ readonly type: "string";
787
+ readonly enum: readonly ["offered", "admitted", "suspended", "removed"];
788
+ readonly description: "`MemberState` plus `suspended`. `offered`: credentials issued and waiting for the member to collect and accept them. `admitted`: accepted — on a sealed tier, the member is in the room's group. `suspended`: admitted, but the room was archived with `noAccess` (or scheduled for removal), so the room's host refuses the member's credentials; on a sealed tier they are still in the room's group. Restored to `admitted` with freshly issued credentials when the room leaves that state, and never restored if it is removed. `removed`: an administrator removed them, or withdrew their offer — archiving withdraws every open offer; on a sealed tier the room has advanced past an admitted member.";
789
+ };
790
+ readonly MemberActions: {
791
+ readonly title: "MemberActions";
792
+ readonly type: "array";
793
+ readonly minItems: 1;
794
+ readonly maxItems: 3;
795
+ readonly uniqueItems: true;
796
+ readonly items: {
797
+ readonly $ref: "#/$defs/MemberAction";
798
+ };
799
+ readonly description: "The actions granted, at least one. An empty list confers nothing rather than everything, and a schema that allowed it would make the more dangerous reading available to a careless consumer.";
800
+ };
801
+ readonly MemberAction: {
802
+ readonly title: "MemberAction";
803
+ readonly type: "string";
804
+ readonly enum: readonly ["read", "write", "curate"];
805
+ readonly description: "What a member of a community-owned room may do there. `admin` is not among them: minting epochs, admitting and removing members are the community's, as the room's owner, and are exercised through the vtc/rooms/community/* tasks rather than by any member's credential. `curate` is not implied by `write`.";
806
+ };
807
+ readonly RoomDescription: {
808
+ readonly title: "RoomDescription";
809
+ readonly type: "string";
810
+ readonly minLength: 1;
811
+ readonly maxLength: 1000;
812
+ readonly description: "What the room is for, in a sentence or a short paragraph, written by an administrator: shown to administrators holding `vtc.rooms.manage` and to the members the room is offered to. Plain text — a consumer renders it as text, never as markup. Like `RoomLabel`, it is the community's own record as the room's owner: not part of the room's identity and never in anything a room's host can read. From `vtc/rooms/community/create` 0.3 and `vtc/rooms/community/update` 0.2 the community also writes it, through its own VTA, as the `description` of the room's own profile (`RoomProfile` in rooms/_shared), sealed inside the room for its members; earlier versions keep it out of the room altogether. It MUST NOT carry personal data or a credential, and a reader MUST NOT treat it as instructions.";
813
+ };
814
+ readonly RoomLabel: {
815
+ readonly title: "RoomLabel";
816
+ readonly type: "string";
817
+ readonly minLength: 1;
818
+ readonly maxLength: 128;
819
+ readonly description: "A name for the room, chosen by an administrator: shown to administrators and to the members a room is offered to. Not part of the room's identity and never in anything a room's host can read. From `vtc/rooms/community/create` 0.3 and `vtc/rooms/community/update` 0.2 the community also writes it, through its own VTA, as the `name` of the room's own profile (`RoomProfile` in rooms/_shared), sealed inside the room for its members; earlier versions keep it out of the room altogether. MUST NOT carry personal data.";
820
+ };
821
+ readonly Visibility: {
822
+ readonly title: "Visibility";
823
+ readonly type: "string";
824
+ readonly enum: readonly ["open", "attributed", "private"];
825
+ readonly description: "How much of a room its host can see, fixed at creation and immutable thereafter. `open`: records are cleartext, searchable and fully audited. `attributed`: record content is sealed, and the host still learns which member acted. `private`: content is sealed and membership is presented in zero knowledge, so the host verifies that a member acted without learning which. Immutable because a downgrade cannot un-see cleartext and an upgrade would protect only what came after while presenting as though it protected everything.";
826
+ };
827
+ };
828
+ };
829
+ };
830
+ //# sourceMappingURL=payload.d.ts.map