@itwin/access-control-client 3.7.0 → 4.1.0

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 (309) hide show
  1. package/CHANGELOG.md +124 -25
  2. package/README.md +147 -669
  3. package/lib/cjs/AccessControlClient.d.ts +26 -9
  4. package/lib/cjs/AccessControlClient.d.ts.map +1 -1
  5. package/lib/cjs/AccessControlClient.js +21 -5
  6. package/lib/cjs/AccessControlClient.js.map +1 -1
  7. package/lib/cjs/access-control-client.d.ts +30 -1
  8. package/lib/cjs/access-control-client.d.ts.map +1 -1
  9. package/lib/cjs/access-control-client.js +42 -6
  10. package/lib/cjs/access-control-client.js.map +1 -1
  11. package/lib/cjs/accessControlClientInterfaces/GroupClient.d.ts +19 -0
  12. package/lib/cjs/accessControlClientInterfaces/GroupClient.d.ts.map +1 -0
  13. package/lib/cjs/accessControlClientInterfaces/GroupClient.js +7 -0
  14. package/lib/cjs/accessControlClientInterfaces/GroupClient.js.map +1 -0
  15. package/lib/cjs/accessControlClientInterfaces/GroupMemberInvitationClient.d.ts +15 -0
  16. package/lib/cjs/accessControlClientInterfaces/GroupMemberInvitationClient.d.ts.map +1 -0
  17. package/lib/cjs/accessControlClientInterfaces/GroupMemberInvitationClient.js +7 -0
  18. package/lib/cjs/accessControlClientInterfaces/GroupMemberInvitationClient.js.map +1 -0
  19. package/lib/cjs/accessControlClientInterfaces/GroupMembersClient.d.ts +19 -0
  20. package/lib/cjs/accessControlClientInterfaces/GroupMembersClient.d.ts.map +1 -0
  21. package/lib/cjs/accessControlClientInterfaces/GroupMembersClient.js +7 -0
  22. package/lib/cjs/accessControlClientInterfaces/GroupMembersClient.js.map +1 -0
  23. package/lib/cjs/accessControlClientInterfaces/ITwinJobsClient.d.ts +12 -0
  24. package/lib/cjs/accessControlClientInterfaces/ITwinJobsClient.d.ts.map +1 -0
  25. package/lib/cjs/accessControlClientInterfaces/ITwinJobsClient.js +7 -0
  26. package/lib/cjs/accessControlClientInterfaces/ITwinJobsClient.js.map +1 -0
  27. package/lib/cjs/accessControlClientInterfaces/ItwinSharesClient.d.ts +25 -0
  28. package/lib/cjs/accessControlClientInterfaces/ItwinSharesClient.d.ts.map +1 -0
  29. package/lib/cjs/accessControlClientInterfaces/ItwinSharesClient.js +7 -0
  30. package/lib/cjs/accessControlClientInterfaces/ItwinSharesClient.js.map +1 -0
  31. package/lib/cjs/accessControlClientInterfaces/MemberInvitationsClient.d.ts +12 -0
  32. package/lib/cjs/accessControlClientInterfaces/MemberInvitationsClient.d.ts.map +1 -0
  33. package/lib/cjs/accessControlClientInterfaces/MemberInvitationsClient.js +7 -0
  34. package/lib/cjs/accessControlClientInterfaces/MemberInvitationsClient.js.map +1 -0
  35. package/lib/cjs/accessControlClientInterfaces/OwnerMembersClient .d.ts +13 -0
  36. package/lib/cjs/accessControlClientInterfaces/OwnerMembersClient .d.ts.map +1 -0
  37. package/lib/cjs/accessControlClientInterfaces/OwnerMembersClient .js +7 -0
  38. package/lib/cjs/accessControlClientInterfaces/OwnerMembersClient .js.map +1 -0
  39. package/lib/cjs/accessControlClientInterfaces/PermissionsClient.d.ts +10 -0
  40. package/lib/cjs/accessControlClientInterfaces/PermissionsClient.d.ts.map +1 -0
  41. package/lib/cjs/accessControlClientInterfaces/PermissionsClient.js +7 -0
  42. package/lib/cjs/accessControlClientInterfaces/PermissionsClient.js.map +1 -0
  43. package/lib/cjs/accessControlClientInterfaces/RolesClient.d.ts +16 -0
  44. package/lib/cjs/accessControlClientInterfaces/RolesClient.d.ts.map +1 -0
  45. package/lib/cjs/accessControlClientInterfaces/RolesClient.js +7 -0
  46. package/lib/cjs/accessControlClientInterfaces/RolesClient.js.map +1 -0
  47. package/lib/cjs/accessControlClientInterfaces/UserMembersClient.d.ts +16 -0
  48. package/lib/cjs/accessControlClientInterfaces/UserMembersClient.d.ts.map +1 -0
  49. package/lib/cjs/accessControlClientInterfaces/UserMembersClient.js +7 -0
  50. package/lib/cjs/accessControlClientInterfaces/UserMembersClient.js.map +1 -0
  51. package/lib/cjs/accessControlClientInterfaces/accessControl.d.ts +23 -0
  52. package/lib/cjs/accessControlClientInterfaces/accessControl.d.ts.map +1 -0
  53. package/lib/cjs/accessControlClientInterfaces/accessControl.js +7 -0
  54. package/lib/cjs/accessControlClientInterfaces/accessControl.js.map +1 -0
  55. package/lib/cjs/subClients/BaseClient.d.ts +88 -29
  56. package/lib/cjs/subClients/BaseClient.d.ts.map +1 -1
  57. package/lib/cjs/subClients/BaseClient.js +165 -40
  58. package/lib/cjs/subClients/BaseClient.js.map +1 -1
  59. package/lib/cjs/subClients/GroupMemberInvitationsClient.d.ts +33 -0
  60. package/lib/cjs/subClients/GroupMemberInvitationsClient.d.ts.map +1 -0
  61. package/lib/cjs/subClients/GroupMemberInvitationsClient.js +48 -0
  62. package/lib/cjs/subClients/GroupMemberInvitationsClient.js.map +1 -0
  63. package/lib/cjs/subClients/GroupMembersClient.d.ts +16 -6
  64. package/lib/cjs/subClients/GroupMembersClient.d.ts.map +1 -1
  65. package/lib/cjs/subClients/GroupMembersClient.js +22 -13
  66. package/lib/cjs/subClients/GroupMembersClient.js.map +1 -1
  67. package/lib/cjs/subClients/GroupsClient.d.ts +18 -10
  68. package/lib/cjs/subClients/GroupsClient.d.ts.map +1 -1
  69. package/lib/cjs/subClients/GroupsClient.js +27 -12
  70. package/lib/cjs/subClients/GroupsClient.js.map +1 -1
  71. package/lib/cjs/subClients/ITwinJobsClient.d.ts +12 -5
  72. package/lib/cjs/subClients/ITwinJobsClient.d.ts.map +1 -1
  73. package/lib/cjs/subClients/ITwinJobsClient.js +15 -3
  74. package/lib/cjs/subClients/ITwinJobsClient.js.map +1 -1
  75. package/lib/cjs/subClients/ItwinShares.d.ts +61 -0
  76. package/lib/cjs/subClients/ItwinShares.d.ts.map +1 -0
  77. package/lib/cjs/subClients/ItwinShares.js +77 -0
  78. package/lib/cjs/subClients/ItwinShares.js.map +1 -0
  79. package/lib/cjs/subClients/MemberInvitationsClient.d.ts +23 -3
  80. package/lib/cjs/subClients/MemberInvitationsClient.d.ts.map +1 -1
  81. package/lib/cjs/subClients/MemberInvitationsClient.js +32 -7
  82. package/lib/cjs/subClients/MemberInvitationsClient.js.map +1 -1
  83. package/lib/cjs/subClients/OwnerMembersClient.d.ts +45 -6
  84. package/lib/cjs/subClients/OwnerMembersClient.d.ts.map +1 -1
  85. package/lib/cjs/subClients/OwnerMembersClient.js +50 -10
  86. package/lib/cjs/subClients/OwnerMembersClient.js.map +1 -1
  87. package/lib/cjs/subClients/PermissionsClient.d.ts +10 -3
  88. package/lib/cjs/subClients/PermissionsClient.d.ts.map +1 -1
  89. package/lib/cjs/subClients/PermissionsClient.js +14 -2
  90. package/lib/cjs/subClients/PermissionsClient.js.map +1 -1
  91. package/lib/cjs/subClients/RolesClient.d.ts +13 -8
  92. package/lib/cjs/subClients/RolesClient.d.ts.map +1 -1
  93. package/lib/cjs/subClients/RolesClient.js +18 -6
  94. package/lib/cjs/subClients/RolesClient.js.map +1 -1
  95. package/lib/cjs/subClients/UserMembersClient.d.ts +13 -6
  96. package/lib/cjs/subClients/UserMembersClient.d.ts.map +1 -1
  97. package/lib/cjs/subClients/UserMembersClient.js +21 -9
  98. package/lib/cjs/subClients/UserMembersClient.js.map +1 -1
  99. package/lib/cjs/types/CommonApiTypes.d.ts +78 -0
  100. package/lib/cjs/types/CommonApiTypes.d.ts.map +1 -0
  101. package/lib/cjs/types/CommonApiTypes.js +7 -0
  102. package/lib/cjs/types/CommonApiTypes.js.map +1 -0
  103. package/lib/cjs/types/GroupMember.d.ts +75 -0
  104. package/lib/cjs/types/GroupMember.d.ts.map +1 -0
  105. package/lib/cjs/types/GroupMember.js +7 -0
  106. package/lib/cjs/types/GroupMember.js.map +1 -0
  107. package/lib/cjs/types/Groups.d.ts +83 -0
  108. package/lib/cjs/types/Groups.d.ts.map +1 -0
  109. package/lib/cjs/types/Groups.js +7 -0
  110. package/lib/cjs/types/Groups.js.map +1 -0
  111. package/lib/cjs/types/ITwinJob.d.ts +70 -0
  112. package/lib/cjs/types/ITwinJob.d.ts.map +1 -0
  113. package/lib/cjs/types/ITwinJob.js +7 -0
  114. package/lib/cjs/types/ITwinJob.js.map +1 -0
  115. package/lib/cjs/types/Invitations.d.ts +146 -0
  116. package/lib/cjs/types/Invitations.d.ts.map +1 -0
  117. package/lib/cjs/types/Invitations.js +7 -0
  118. package/lib/cjs/types/Invitations.js.map +1 -0
  119. package/lib/cjs/types/Members.d.ts +71 -0
  120. package/lib/cjs/types/Members.d.ts.map +1 -0
  121. package/lib/cjs/types/Members.js +7 -0
  122. package/lib/cjs/types/Members.js.map +1 -0
  123. package/lib/cjs/types/OwnerMember.d.ts +105 -0
  124. package/lib/cjs/types/OwnerMember.d.ts.map +1 -0
  125. package/lib/cjs/types/OwnerMember.js +7 -0
  126. package/lib/cjs/types/OwnerMember.js.map +1 -0
  127. package/lib/cjs/types/Permission.d.ts +5 -0
  128. package/lib/cjs/types/Permission.d.ts.map +1 -0
  129. package/lib/cjs/types/Permission.js +7 -0
  130. package/lib/cjs/types/Permission.js.map +1 -0
  131. package/lib/cjs/types/Role.d.ts +33 -0
  132. package/lib/cjs/types/Role.d.ts.map +1 -0
  133. package/lib/cjs/types/Role.js +7 -0
  134. package/lib/cjs/types/Role.js.map +1 -0
  135. package/lib/cjs/types/ShareContract.d.ts +80 -0
  136. package/lib/cjs/types/ShareContract.d.ts.map +1 -0
  137. package/lib/cjs/types/ShareContract.js +7 -0
  138. package/lib/cjs/types/ShareContract.js.map +1 -0
  139. package/lib/cjs/types/UserMembers.d.ts +115 -0
  140. package/lib/cjs/types/UserMembers.d.ts.map +1 -0
  141. package/lib/cjs/types/UserMembers.js +7 -0
  142. package/lib/cjs/types/UserMembers.js.map +1 -0
  143. package/lib/cjs/types/links.d.ts +20 -0
  144. package/lib/cjs/types/links.d.ts.map +1 -0
  145. package/lib/cjs/types/links.js +7 -0
  146. package/lib/cjs/types/links.js.map +1 -0
  147. package/lib/cjs/types/typeUtils.d.ts +42 -0
  148. package/lib/cjs/types/typeUtils.d.ts.map +1 -0
  149. package/lib/cjs/types/typeUtils.js +25 -0
  150. package/lib/cjs/types/typeUtils.js.map +1 -0
  151. package/lib/esm/AccessControlClient.d.ts +26 -9
  152. package/lib/esm/AccessControlClient.d.ts.map +1 -1
  153. package/lib/esm/AccessControlClient.js +31 -5
  154. package/lib/esm/AccessControlClient.js.map +1 -1
  155. package/lib/esm/access-control-client.d.ts +30 -1
  156. package/lib/esm/access-control-client.d.ts.map +1 -1
  157. package/lib/esm/access-control-client.js +33 -1
  158. package/lib/esm/access-control-client.js.map +1 -1
  159. package/lib/esm/accessControlClientInterfaces/GroupClient.d.ts +19 -0
  160. package/lib/esm/accessControlClientInterfaces/GroupClient.d.ts.map +1 -0
  161. package/lib/esm/accessControlClientInterfaces/GroupClient.js +6 -0
  162. package/lib/esm/accessControlClientInterfaces/GroupClient.js.map +1 -0
  163. package/lib/esm/accessControlClientInterfaces/GroupMemberInvitationClient.d.ts +15 -0
  164. package/lib/esm/accessControlClientInterfaces/GroupMemberInvitationClient.d.ts.map +1 -0
  165. package/lib/esm/accessControlClientInterfaces/GroupMemberInvitationClient.js +6 -0
  166. package/lib/esm/accessControlClientInterfaces/GroupMemberInvitationClient.js.map +1 -0
  167. package/lib/esm/accessControlClientInterfaces/GroupMembersClient.d.ts +19 -0
  168. package/lib/esm/accessControlClientInterfaces/GroupMembersClient.d.ts.map +1 -0
  169. package/lib/esm/accessControlClientInterfaces/GroupMembersClient.js +6 -0
  170. package/lib/esm/accessControlClientInterfaces/GroupMembersClient.js.map +1 -0
  171. package/lib/esm/accessControlClientInterfaces/ITwinJobsClient.d.ts +12 -0
  172. package/lib/esm/accessControlClientInterfaces/ITwinJobsClient.d.ts.map +1 -0
  173. package/lib/esm/accessControlClientInterfaces/ITwinJobsClient.js +6 -0
  174. package/lib/esm/accessControlClientInterfaces/ITwinJobsClient.js.map +1 -0
  175. package/lib/esm/accessControlClientInterfaces/ItwinSharesClient.d.ts +25 -0
  176. package/lib/esm/accessControlClientInterfaces/ItwinSharesClient.d.ts.map +1 -0
  177. package/lib/esm/accessControlClientInterfaces/ItwinSharesClient.js +6 -0
  178. package/lib/esm/accessControlClientInterfaces/ItwinSharesClient.js.map +1 -0
  179. package/lib/esm/accessControlClientInterfaces/MemberInvitationsClient.d.ts +12 -0
  180. package/lib/esm/accessControlClientInterfaces/MemberInvitationsClient.d.ts.map +1 -0
  181. package/lib/esm/accessControlClientInterfaces/MemberInvitationsClient.js +6 -0
  182. package/lib/esm/accessControlClientInterfaces/MemberInvitationsClient.js.map +1 -0
  183. package/lib/esm/accessControlClientInterfaces/OwnerMembersClient .d.ts +13 -0
  184. package/lib/esm/accessControlClientInterfaces/OwnerMembersClient .d.ts.map +1 -0
  185. package/lib/esm/accessControlClientInterfaces/OwnerMembersClient .js +6 -0
  186. package/lib/esm/accessControlClientInterfaces/OwnerMembersClient .js.map +1 -0
  187. package/lib/esm/accessControlClientInterfaces/PermissionsClient.d.ts +10 -0
  188. package/lib/esm/accessControlClientInterfaces/PermissionsClient.d.ts.map +1 -0
  189. package/lib/esm/accessControlClientInterfaces/PermissionsClient.js +6 -0
  190. package/lib/esm/accessControlClientInterfaces/PermissionsClient.js.map +1 -0
  191. package/lib/esm/accessControlClientInterfaces/RolesClient.d.ts +16 -0
  192. package/lib/esm/accessControlClientInterfaces/RolesClient.d.ts.map +1 -0
  193. package/lib/esm/accessControlClientInterfaces/RolesClient.js +6 -0
  194. package/lib/esm/accessControlClientInterfaces/RolesClient.js.map +1 -0
  195. package/lib/esm/accessControlClientInterfaces/UserMembersClient.d.ts +16 -0
  196. package/lib/esm/accessControlClientInterfaces/UserMembersClient.d.ts.map +1 -0
  197. package/lib/esm/accessControlClientInterfaces/UserMembersClient.js +6 -0
  198. package/lib/esm/accessControlClientInterfaces/UserMembersClient.js.map +1 -0
  199. package/lib/esm/accessControlClientInterfaces/accessControl.d.ts +23 -0
  200. package/lib/esm/accessControlClientInterfaces/accessControl.d.ts.map +1 -0
  201. package/lib/esm/accessControlClientInterfaces/accessControl.js +6 -0
  202. package/lib/esm/accessControlClientInterfaces/accessControl.js.map +1 -0
  203. package/lib/esm/subClients/BaseClient.d.ts +88 -29
  204. package/lib/esm/subClients/BaseClient.d.ts.map +1 -1
  205. package/lib/esm/subClients/BaseClient.js +166 -41
  206. package/lib/esm/subClients/BaseClient.js.map +1 -1
  207. package/lib/esm/subClients/GroupMemberInvitationsClient.d.ts +33 -0
  208. package/lib/esm/subClients/GroupMemberInvitationsClient.d.ts.map +1 -0
  209. package/lib/esm/subClients/GroupMemberInvitationsClient.js +44 -0
  210. package/lib/esm/subClients/GroupMemberInvitationsClient.js.map +1 -0
  211. package/lib/esm/subClients/GroupMembersClient.d.ts +16 -6
  212. package/lib/esm/subClients/GroupMembersClient.d.ts.map +1 -1
  213. package/lib/esm/subClients/GroupMembersClient.js +22 -13
  214. package/lib/esm/subClients/GroupMembersClient.js.map +1 -1
  215. package/lib/esm/subClients/GroupsClient.d.ts +18 -10
  216. package/lib/esm/subClients/GroupsClient.d.ts.map +1 -1
  217. package/lib/esm/subClients/GroupsClient.js +27 -12
  218. package/lib/esm/subClients/GroupsClient.js.map +1 -1
  219. package/lib/esm/subClients/ITwinJobsClient.d.ts +12 -5
  220. package/lib/esm/subClients/ITwinJobsClient.d.ts.map +1 -1
  221. package/lib/esm/subClients/ITwinJobsClient.js +15 -3
  222. package/lib/esm/subClients/ITwinJobsClient.js.map +1 -1
  223. package/lib/esm/subClients/ItwinShares.d.ts +61 -0
  224. package/lib/esm/subClients/ItwinShares.d.ts.map +1 -0
  225. package/lib/esm/subClients/ItwinShares.js +73 -0
  226. package/lib/esm/subClients/ItwinShares.js.map +1 -0
  227. package/lib/esm/subClients/MemberInvitationsClient.d.ts +23 -3
  228. package/lib/esm/subClients/MemberInvitationsClient.d.ts.map +1 -1
  229. package/lib/esm/subClients/MemberInvitationsClient.js +32 -7
  230. package/lib/esm/subClients/MemberInvitationsClient.js.map +1 -1
  231. package/lib/esm/subClients/OwnerMembersClient.d.ts +45 -6
  232. package/lib/esm/subClients/OwnerMembersClient.d.ts.map +1 -1
  233. package/lib/esm/subClients/OwnerMembersClient.js +50 -10
  234. package/lib/esm/subClients/OwnerMembersClient.js.map +1 -1
  235. package/lib/esm/subClients/PermissionsClient.d.ts +10 -3
  236. package/lib/esm/subClients/PermissionsClient.d.ts.map +1 -1
  237. package/lib/esm/subClients/PermissionsClient.js +14 -2
  238. package/lib/esm/subClients/PermissionsClient.js.map +1 -1
  239. package/lib/esm/subClients/RolesClient.d.ts +13 -8
  240. package/lib/esm/subClients/RolesClient.d.ts.map +1 -1
  241. package/lib/esm/subClients/RolesClient.js +18 -6
  242. package/lib/esm/subClients/RolesClient.js.map +1 -1
  243. package/lib/esm/subClients/UserMembersClient.d.ts +13 -6
  244. package/lib/esm/subClients/UserMembersClient.d.ts.map +1 -1
  245. package/lib/esm/subClients/UserMembersClient.js +21 -9
  246. package/lib/esm/subClients/UserMembersClient.js.map +1 -1
  247. package/lib/esm/types/CommonApiTypes.d.ts +78 -0
  248. package/lib/esm/types/CommonApiTypes.d.ts.map +1 -0
  249. package/lib/esm/types/CommonApiTypes.js +6 -0
  250. package/lib/esm/types/CommonApiTypes.js.map +1 -0
  251. package/lib/esm/types/GroupMember.d.ts +75 -0
  252. package/lib/esm/types/GroupMember.d.ts.map +1 -0
  253. package/lib/esm/types/GroupMember.js +6 -0
  254. package/lib/esm/types/GroupMember.js.map +1 -0
  255. package/lib/esm/types/Groups.d.ts +83 -0
  256. package/lib/esm/types/Groups.d.ts.map +1 -0
  257. package/lib/esm/types/Groups.js +6 -0
  258. package/lib/esm/types/Groups.js.map +1 -0
  259. package/lib/esm/types/ITwinJob.d.ts +70 -0
  260. package/lib/esm/types/ITwinJob.d.ts.map +1 -0
  261. package/lib/esm/types/ITwinJob.js +6 -0
  262. package/lib/esm/types/ITwinJob.js.map +1 -0
  263. package/lib/esm/types/Invitations.d.ts +146 -0
  264. package/lib/esm/types/Invitations.d.ts.map +1 -0
  265. package/lib/esm/types/Invitations.js +6 -0
  266. package/lib/esm/types/Invitations.js.map +1 -0
  267. package/lib/esm/types/Members.d.ts +71 -0
  268. package/lib/esm/types/Members.d.ts.map +1 -0
  269. package/lib/esm/types/Members.js +6 -0
  270. package/lib/esm/types/Members.js.map +1 -0
  271. package/lib/esm/types/OwnerMember.d.ts +105 -0
  272. package/lib/esm/types/OwnerMember.d.ts.map +1 -0
  273. package/lib/esm/types/OwnerMember.js +6 -0
  274. package/lib/esm/types/OwnerMember.js.map +1 -0
  275. package/lib/esm/types/Permission.d.ts +5 -0
  276. package/lib/esm/types/Permission.d.ts.map +1 -0
  277. package/lib/esm/types/Permission.js +6 -0
  278. package/lib/esm/types/Permission.js.map +1 -0
  279. package/lib/esm/types/Role.d.ts +33 -0
  280. package/lib/esm/types/Role.d.ts.map +1 -0
  281. package/lib/esm/types/Role.js +6 -0
  282. package/lib/esm/types/Role.js.map +1 -0
  283. package/lib/esm/types/ShareContract.d.ts +80 -0
  284. package/lib/esm/types/ShareContract.d.ts.map +1 -0
  285. package/lib/esm/types/ShareContract.js +6 -0
  286. package/lib/esm/types/ShareContract.js.map +1 -0
  287. package/lib/esm/types/UserMembers.d.ts +115 -0
  288. package/lib/esm/types/UserMembers.d.ts.map +1 -0
  289. package/lib/esm/types/UserMembers.js +6 -0
  290. package/lib/esm/types/UserMembers.js.map +1 -0
  291. package/lib/esm/types/links.d.ts +20 -0
  292. package/lib/esm/types/links.d.ts.map +1 -0
  293. package/lib/esm/types/links.js +6 -0
  294. package/lib/esm/types/links.js.map +1 -0
  295. package/lib/esm/types/typeUtils.d.ts +42 -0
  296. package/lib/esm/types/typeUtils.d.ts.map +1 -0
  297. package/lib/esm/types/typeUtils.js +22 -0
  298. package/lib/esm/types/typeUtils.js.map +1 -0
  299. package/package.json +59 -45
  300. package/CONTRIBUTING.md +0 -90
  301. package/GETTINGSTARTED.md +0 -35
  302. package/lib/cjs/accessControlTypes.d.ts +0 -229
  303. package/lib/cjs/accessControlTypes.d.ts.map +0 -1
  304. package/lib/cjs/accessControlTypes.js +0 -25
  305. package/lib/cjs/accessControlTypes.js.map +0 -1
  306. package/lib/esm/accessControlTypes.d.ts +0 -229
  307. package/lib/esm/accessControlTypes.d.ts.map +0 -1
  308. package/lib/esm/accessControlTypes.js +0 -22
  309. package/lib/esm/accessControlTypes.js.map +0 -1
@@ -0,0 +1,70 @@
1
+ import type { ErrorDetail } from "./CommonApiTypes";
2
+ /**
3
+ * Represents the current status of an iTwin job operation.
4
+ * Jobs progress through these states as they are processed by the system.
5
+ */
6
+ export type ITwinJobStatus = "Active" | "Completed" | "PartialCompleted" | "Failed";
7
+ /**
8
+ * This interface represents a job that manages user access control operations
9
+ * such as assigning roles, removing members, etc.
10
+ */
11
+ export interface ITwinJob {
12
+ /** Unique identifier for the job */
13
+ id: string;
14
+ /** The iTwin ID this job operates on */
15
+ itwinId: string;
16
+ /** Current status of the job */
17
+ status: ITwinJobStatus;
18
+ /** Error details if the job encountered issues, empty array if no errors */
19
+ error: ErrorDetail[];
20
+ }
21
+ /**
22
+ * Available action types that can be performed in an iTwin job.
23
+ * These represent the different operations that can be batched together.
24
+ */
25
+ export type ItwinJobActions = "assignRoles" | "unassignRoles" | "removeMembers";
26
+ /**
27
+ * Defines the structure for iTwin job actions with type-safe action payloads.
28
+ *
29
+ * @remarks
30
+ * - `assignRoles` and `unassignRoles` actions include both email and roleIds
31
+ * - `removeMembers` actions only include email (roleIds are omitted)
32
+ * - Additional options can be provided for job configuration
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * const jobActions: ITwinJobActions = {
37
+ * assignRoles: [
38
+ * { email: "user@example.com", roleIds: ["admin", "viewer"] }
39
+ * ],
40
+ * removeMembers: [
41
+ * { email: "former-user@example.com" } // No roleIds needed
42
+ * ],
43
+ * options: {
44
+ * timeout: 30000,
45
+ * retries: 3
46
+ * }
47
+ * };
48
+ * ```
49
+ */
50
+ export type ITwinJobActions = {
51
+ [K in ItwinJobActions]?: K extends "removeMembers" ? Omit<ITwinJobAction, "roleIds">[] : ITwinJobAction[];
52
+ } & {
53
+ /** Additional configuration options for the job */
54
+ options?: Record<string, unknown>;
55
+ };
56
+ /**
57
+ * Represents a single action within an iTwin job that affects a user's access.
58
+ *
59
+ * @remarks
60
+ * This interface defines the core structure for user-related operations.
61
+ * When used with `removeMembers` actions, the `roleIds` property should be
62
+ * omitted.
63
+ */
64
+ export interface ITwinJobAction {
65
+ /** Email address of the user to be affected by this action */
66
+ email: string;
67
+ /** Array of role IDs to assign or unassign (not used for removeMembers) */
68
+ roleIds: string[];
69
+ }
70
+ //# sourceMappingURL=ITwinJob.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITwinJob.d.ts","sourceRoot":"","sources":["../../../src/types/ITwinJob.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,WAAW,GACX,kBAAkB,GAClB,QAAQ,CAAC;AAEb;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,oCAAoC;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,MAAM,EAAE,cAAc,CAAC;IACvB,4EAA4E;IAC5E,KAAK,EAAE,WAAW,EAAE,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,eAAe,GAAG,eAAe,CAAC;AAEhF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,eAAe,GAAG;KAC3B,CAAC,IAAI,eAAe,CAAC,CAAC,EAAE,CAAC,SAAS,eAAe,GAC9C,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,EAAE,GACjC,cAAc,EAAE;CACrB,GAAG;IACF,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=ITwinJob.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITwinJob.js","sourceRoot":"","sources":["../../../src/types/ITwinJob.ts"],"names":[],"mappings":";AAAA;;;gGAGgG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport type { ErrorDetail } from \"./CommonApiTypes\";\n\n/**\n * Represents the current status of an iTwin job operation.\n * Jobs progress through these states as they are processed by the system.\n */\nexport type ITwinJobStatus =\n | \"Active\" // Job is currently being processed\n | \"Completed\" // Job has finished successfully\n | \"PartialCompleted\" // Job completed with some failures\n | \"Failed\"; // Job failed to complete\n\n/**\n * This interface represents a job that manages user access control operations\n * such as assigning roles, removing members, etc.\n */\nexport interface ITwinJob {\n /** Unique identifier for the job */\n id: string;\n /** The iTwin ID this job operates on */\n itwinId: string;\n /** Current status of the job */\n status: ITwinJobStatus;\n /** Error details if the job encountered issues, empty array if no errors */\n error: ErrorDetail[];\n}\n\n/**\n * Available action types that can be performed in an iTwin job.\n * These represent the different operations that can be batched together.\n */\nexport type ItwinJobActions = \"assignRoles\" | \"unassignRoles\" | \"removeMembers\";\n\n/**\n * Defines the structure for iTwin job actions with type-safe action payloads.\n *\n * @remarks\n * - `assignRoles` and `unassignRoles` actions include both email and roleIds\n * - `removeMembers` actions only include email (roleIds are omitted)\n * - Additional options can be provided for job configuration\n *\n * @example\n * ```typescript\n * const jobActions: ITwinJobActions = {\n * assignRoles: [\n * { email: \"user@example.com\", roleIds: [\"admin\", \"viewer\"] }\n * ],\n * removeMembers: [\n * { email: \"former-user@example.com\" } // No roleIds needed\n * ],\n * options: {\n * timeout: 30000,\n * retries: 3\n * }\n * };\n * ```\n */\nexport type ITwinJobActions = {\n [K in ItwinJobActions]?: K extends \"removeMembers\"\n ? Omit<ITwinJobAction, \"roleIds\">[]\n : ITwinJobAction[];\n} & {\n /** Additional configuration options for the job */\n options?: Record<string, unknown>;\n};\n\n/**\n * Represents a single action within an iTwin job that affects a user's access.\n *\n * @remarks\n * This interface defines the core structure for user-related operations.\n * When used with `removeMembers` actions, the `roleIds` property should be\n * omitted.\n */\nexport interface ITwinJobAction {\n /** Email address of the user to be affected by this action */\n email: string;\n /** Array of role IDs to assign or unassign (not used for removeMembers) */\n roleIds: string[];\n}"]}
@@ -0,0 +1,146 @@
1
+ import type { Links } from "./links";
2
+ import type { Role } from "./Role";
3
+ /**
4
+ * Represents an invitation sent to a user to join an iTwin as a member.
5
+ *
6
+ * @remarks
7
+ * Member invitations are created when external users (not in the same organization as the iTwin)
8
+ * are invited to join an iTwin. The invited user receives an email invitation and must accept it
9
+ * to become a member. Invitations have expiration dates and can be in various states.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const invitation: MemberInvitation = {
14
+ * id: "550e8400-e29b-41d4-a716-446655440000",
15
+ * email: "external.user@othercompany.com",
16
+ * invitedByEmail: "admin@mycompany.com",
17
+ * status: "Pending",
18
+ * createdDate: "2023-10-15T10:30:00Z",
19
+ * expirationDate: "2023-11-15T10:30:00Z",
20
+ * roles: [
21
+ * { id: "viewer-role", displayName: "Project Viewer", description : "Can view project details" }
22
+ * ]
23
+ * };
24
+ * ```
25
+ */
26
+ export interface MemberInvitation {
27
+ /** Unique identifier for the invitation */
28
+ id: string;
29
+ /** Email address of the invited user */
30
+ email: string;
31
+ /** Email address of the user who sent the invitation */
32
+ invitedByEmail: string;
33
+ /** Current status of the invitation */
34
+ status: MemberInvitationStatus;
35
+ /** ISO 8601 timestamp when the invitation was created */
36
+ createdDate: string;
37
+ /** ISO 8601 timestamp when the invitation expires */
38
+ expirationDate: string;
39
+ /** Optional array of roles that will be assigned upon acceptance (excludes permissions) */
40
+ roles?: Role[];
41
+ }
42
+ /**
43
+ * Represents the current state of a member invitation.
44
+ *
45
+ * @remarks
46
+ * Invitations start as "Pending" when first sent and transition to "Accepted"
47
+ * when the invited user accepts the invitation.
48
+ */
49
+ export type MemberInvitationStatus = "Pending" | "Accepted";
50
+ /**
51
+ * API response wrapper for multiple member invitations with pagination support.
52
+ *
53
+ * @remarks
54
+ * This interface is used for API responses that return collections of member invitations,
55
+ * such as GET /invitations operations. Includes HAL-style navigation links for pagination
56
+ * to handle large numbers of invitations efficiently.
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * const response: MultipleMemberInvitationResponse = {
61
+ * invitations: [
62
+ * { id: "inv1", email: "user1@external.com", status: "Pending", ... },
63
+ * { id: "inv2", email: "user2@external.com", status: "Accepted", ... }
64
+ * ],
65
+ * _links: {
66
+ * self: { href: "/members/invitations?$skip=0&$top=100" },
67
+ * next: { href: "/members/invitations?$skip=100&$top=100" },
68
+ * prev: { href: "/members/invitations?$skip=0&$top=100" }
69
+ * }
70
+ * };
71
+ * ```
72
+ */
73
+ export interface MultipleMemberInvitationResponse {
74
+ /** Array of member invitations in the current page */
75
+ invitations: MemberInvitation[];
76
+ /** HAL-style navigation links for pagination (first, next, prev, last) */
77
+ _links: Links;
78
+ }
79
+ /**
80
+ * API response wrapper for a member invitation.
81
+ *
82
+ * @remarks
83
+ * This interface is used for API responses that a single member invitation,
84
+ * such as GET /invitations operations.
85
+ *
86
+ * @example
87
+ * ```typescript
88
+ * const response: MultipleMemberInvitationResponse = {
89
+ * invitation: {{ id: "inv1", email: "user1@external.com", status: "Pending", ... }} ,
90
+ * };
91
+ * ```
92
+ */
93
+ export interface SingleMemberInvitationResponse {
94
+ /** The member invitation */
95
+ invitation: MemberInvitation;
96
+ }
97
+ /**
98
+ * Represents an invitation sent to a group member to join an iTwin.
99
+ *
100
+ * @remarks
101
+ * Retrieves a list of iTwin group member invitations. By default, users will receive the invitations they have sent.
102
+ * If the user is an iTwin Owner, they will receive all invitations for the iTwin.
103
+ * Invitations have an expiration of 7 days after their creation. Once that expiration passes, the invitation will not be returned.
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * const groupInvitation: GroupMemberInvitation = {
108
+ * id: "550e8400-e29b-41d4-a716-446655440000",
109
+ * email: "group.member@external.com",
110
+ * invitedByEmail: "admin@mycompany.com",
111
+ * status: "Pending",
112
+ * createdDate: "2023-10-15T10:30:00Z",
113
+ * expirationDate: "2023-11-15T10:30:00Z"
114
+ * };
115
+ * ```
116
+ */
117
+ export type GroupMemberInvitation = Omit<MemberInvitation, "roles">;
118
+ /**
119
+ * API response wrapper for multiple group member invitations with pagination support.
120
+ *
121
+ * @remarks
122
+ * This interface is used for API responses that return collections of group member invitations.
123
+ * Includes HAL-style navigation links for pagination to handle large numbers of group invitations efficiently.
124
+ *
125
+ * @example
126
+ * ```typescript
127
+ * const response: MultipleGroupMemberInvitationResponse = {
128
+ * invitations: [
129
+ * { id: "inv1", email: "user1@external.com", status: "Pending", ... },
130
+ * { id: "inv2", email: "user2@external.com", status: "Accepted", ... }
131
+ * ],
132
+ * _links: {
133
+ * self: { href: "/groups/invitations?$skip=0&$top=100" },
134
+ * next: { href: "/groups/invitations?$skip=100&$top=100" },
135
+ * prev: { href: "/groups/invitations?$skip=0&$top=100" }
136
+ * }
137
+ * };
138
+ * ```
139
+ */
140
+ export interface MultipleGroupMemberInvitationResponse {
141
+ /** Array of group member invitations in the current page */
142
+ invitations: GroupMemberInvitation[];
143
+ /** HAL-style navigation links for pagination (first, next, prev, last) */
144
+ _links: Links;
145
+ }
146
+ //# sourceMappingURL=Invitations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Invitations.d.ts","sourceRoot":"","sources":["../../../src/types/Invitations.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2CAA2C;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,cAAc,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,MAAM,EAAE,sBAAsB,CAAC;IAC/B,yDAAyD;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB,2FAA2F;IAC3F,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;CAChB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,UAAU,CAAC;AAE5D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,gCAAgC;IAC/C,sDAAsD;IACtD,WAAW,EAAE,gBAAgB,EAAE,CAAC;IAChC,0EAA0E;IAE1E,MAAM,EAAE,KAAK,CAAC;CACf;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,8BAA8B;IAC7C,4BAA4B;IAC5B,UAAU,EAAE,gBAAgB,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;AAEpE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,qCAAqC;IACpD,4DAA4D;IAC5D,WAAW,EAAE,qBAAqB,EAAE,CAAC;IACrC,0EAA0E;IAE1E,MAAM,EAAE,KAAK,CAAC;CACf"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=Invitations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Invitations.js","sourceRoot":"","sources":["../../../src/types/Invitations.ts"],"names":[],"mappings":";AAAA;;;gGAGgG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport type { Links } from \"./links\";\nimport type { Role } from \"./Role\";\n\n/**\n * Represents an invitation sent to a user to join an iTwin as a member.\n *\n * @remarks\n * Member invitations are created when external users (not in the same organization as the iTwin)\n * are invited to join an iTwin. The invited user receives an email invitation and must accept it\n * to become a member. Invitations have expiration dates and can be in various states.\n *\n * @example\n * ```typescript\n * const invitation: MemberInvitation = {\n * id: \"550e8400-e29b-41d4-a716-446655440000\",\n * email: \"external.user@othercompany.com\",\n * invitedByEmail: \"admin@mycompany.com\",\n * status: \"Pending\",\n * createdDate: \"2023-10-15T10:30:00Z\",\n * expirationDate: \"2023-11-15T10:30:00Z\",\n * roles: [\n * { id: \"viewer-role\", displayName: \"Project Viewer\", description : \"Can view project details\" }\n * ]\n * };\n * ```\n */\nexport interface MemberInvitation {\n /** Unique identifier for the invitation */\n id: string;\n /** Email address of the invited user */\n email: string;\n /** Email address of the user who sent the invitation */\n invitedByEmail: string;\n /** Current status of the invitation */\n status: MemberInvitationStatus;\n /** ISO 8601 timestamp when the invitation was created */\n createdDate: string;\n /** ISO 8601 timestamp when the invitation expires */\n expirationDate: string;\n /** Optional array of roles that will be assigned upon acceptance (excludes permissions) */\n roles?: Role[];\n}\n\n/**\n * Represents the current state of a member invitation.\n *\n * @remarks\n * Invitations start as \"Pending\" when first sent and transition to \"Accepted\"\n * when the invited user accepts the invitation.\n */\nexport type MemberInvitationStatus = \"Pending\" | \"Accepted\";\n\n/**\n * API response wrapper for multiple member invitations with pagination support.\n *\n * @remarks\n * This interface is used for API responses that return collections of member invitations,\n * such as GET /invitations operations. Includes HAL-style navigation links for pagination\n * to handle large numbers of invitations efficiently.\n *\n * @example\n * ```typescript\n * const response: MultipleMemberInvitationResponse = {\n * invitations: [\n * { id: \"inv1\", email: \"user1@external.com\", status: \"Pending\", ... },\n * { id: \"inv2\", email: \"user2@external.com\", status: \"Accepted\", ... }\n * ],\n * _links: {\n * self: { href: \"/members/invitations?$skip=0&$top=100\" },\n * next: { href: \"/members/invitations?$skip=100&$top=100\" },\n * prev: { href: \"/members/invitations?$skip=0&$top=100\" }\n * }\n * };\n * ```\n */\nexport interface MultipleMemberInvitationResponse {\n /** Array of member invitations in the current page */\n invitations: MemberInvitation[];\n /** HAL-style navigation links for pagination (first, next, prev, last) */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n _links: Links;\n}\n\n/**\n * API response wrapper for a member invitation.\n *\n * @remarks\n * This interface is used for API responses that a single member invitation,\n * such as GET /invitations operations.\n *\n * @example\n * ```typescript\n * const response: MultipleMemberInvitationResponse = {\n * invitation: {{ id: \"inv1\", email: \"user1@external.com\", status: \"Pending\", ... }} ,\n * };\n * ```\n */\nexport interface SingleMemberInvitationResponse {\n /** The member invitation */\n invitation: MemberInvitation;\n}\n\n/**\n * Represents an invitation sent to a group member to join an iTwin.\n *\n * @remarks\n * Retrieves a list of iTwin group member invitations. By default, users will receive the invitations they have sent.\n * If the user is an iTwin Owner, they will receive all invitations for the iTwin.\n * Invitations have an expiration of 7 days after their creation. Once that expiration passes, the invitation will not be returned.\n *\n * @example\n * ```typescript\n * const groupInvitation: GroupMemberInvitation = {\n * id: \"550e8400-e29b-41d4-a716-446655440000\",\n * email: \"group.member@external.com\",\n * invitedByEmail: \"admin@mycompany.com\",\n * status: \"Pending\",\n * createdDate: \"2023-10-15T10:30:00Z\",\n * expirationDate: \"2023-11-15T10:30:00Z\"\n * };\n * ```\n */\nexport type GroupMemberInvitation = Omit<MemberInvitation, \"roles\">;\n\n/**\n * API response wrapper for multiple group member invitations with pagination support.\n *\n * @remarks\n * This interface is used for API responses that return collections of group member invitations.\n * Includes HAL-style navigation links for pagination to handle large numbers of group invitations efficiently.\n *\n * @example\n * ```typescript\n * const response: MultipleGroupMemberInvitationResponse = {\n * invitations: [\n * { id: \"inv1\", email: \"user1@external.com\", status: \"Pending\", ... },\n * { id: \"inv2\", email: \"user2@external.com\", status: \"Accepted\", ... }\n * ],\n * _links: {\n * self: { href: \"/groups/invitations?$skip=0&$top=100\" },\n * next: { href: \"/groups/invitations?$skip=100&$top=100\" },\n * prev: { href: \"/groups/invitations?$skip=0&$top=100\" }\n * }\n * };\n * ```\n */\nexport interface MultipleGroupMemberInvitationResponse {\n /** Array of group member invitations in the current page */\n invitations: GroupMemberInvitation[];\n /** HAL-style navigation links for pagination (first, next, prev, last) */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n _links: Links;\n}"]}
@@ -0,0 +1,71 @@
1
+ import type { Role } from "./Role";
2
+ interface UserBase {
3
+ /** Unique identifier for the user */
4
+ id: string;
5
+ /** Email address of the user */
6
+ email: string;
7
+ /** First name of the user */
8
+ givenName: string;
9
+ /** Last name of the user */
10
+ surname: string;
11
+ /** Organization the user belongs to */
12
+ organization: string;
13
+ }
14
+ /**
15
+ * Represents a user within a group in the access control system.
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const groupUser: GroupUser = {
20
+ * id: "550e8400-e29b-41d4-a716-446655440000",
21
+ * email: "sarah.connor@techcorp.com",
22
+ * givenName: "Sarah",
23
+ * surname: "Connor",
24
+ * organization: "TechCorp Industries"
25
+ * };
26
+ * ```
27
+ */
28
+ export type GroupUser = UserBase;
29
+ /**
30
+ * Represents a user who is a member of an iTwin with associated roles and profile information.
31
+ *
32
+ * @remarks
33
+ * User members are individuals who have been added to an iTwin and assigned specific roles.
34
+ * This provides information about the user's identity, assigned roles, and organization.
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * const userMember: UserMember = {
39
+ * id: "550e8400-e29b-41d4-a716-446655440000",
40
+ * email: "john.smith@company.com",
41
+ * givenName: "John",
42
+ * surname: "Smith",
43
+ * organization: "ACME Corporation",
44
+ * roles: [
45
+ * { id: "admin-role", displayName: "Administrator", description : "Has full access to all resources" },
46
+ * { id: "viewer-role", displayName: "Project Viewer", description : "Can view project details" }
47
+ * ]
48
+ * };
49
+ * ```
50
+ */
51
+ export interface UserMember extends UserBase {
52
+ /** Array of roles assigned to this user member */
53
+ roles: Role[];
54
+ }
55
+ /**
56
+ * Represents an iTwin owner member with their basic information.
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * const ownerMember: OwnerMember = {
61
+ * id: "550e8400-e29b-41d4-a716-446655440000",
62
+ * email: "john.doe@company.com",
63
+ * givenName: "John",
64
+ * surname: "Doe",
65
+ * organization: "Acme Corporation"
66
+ * };
67
+ * ```
68
+ */
69
+ export type OwnerMember = UserBase;
70
+ export {};
71
+ //# sourceMappingURL=Members.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Members.d.ts","sourceRoot":"","sources":["../../../src/types/Members.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAGnC,UAAU,QAAQ;IAChB,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,6BAA6B;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,SAAS,GAAG,QAAQ,CAAC;AAEjC;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,UAAW,SAAQ,QAAQ;IAC1C,kDAAkD;IAClD,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=Members.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Members.js","sourceRoot":"","sources":["../../../src/types/Members.ts"],"names":[],"mappings":";AAAA;;;gGAGgG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport type { Role } from \"./Role\";\n\n\ninterface UserBase {\n /** Unique identifier for the user */\n id: string;\n /** Email address of the user */\n email: string;\n /** First name of the user */\n givenName: string;\n /** Last name of the user */\n surname: string;\n /** Organization the user belongs to */\n organization: string;\n}\n\n/**\n * Represents a user within a group in the access control system.\n *\n * @example\n * ```typescript\n * const groupUser: GroupUser = {\n * id: \"550e8400-e29b-41d4-a716-446655440000\",\n * email: \"sarah.connor@techcorp.com\",\n * givenName: \"Sarah\",\n * surname: \"Connor\",\n * organization: \"TechCorp Industries\"\n * };\n * ```\n */\nexport type GroupUser = UserBase;\n\n/**\n * Represents a user who is a member of an iTwin with associated roles and profile information.\n *\n * @remarks\n * User members are individuals who have been added to an iTwin and assigned specific roles.\n * This provides information about the user's identity, assigned roles, and organization.\n *\n * @example\n * ```typescript\n * const userMember: UserMember = {\n * id: \"550e8400-e29b-41d4-a716-446655440000\",\n * email: \"john.smith@company.com\",\n * givenName: \"John\",\n * surname: \"Smith\",\n * organization: \"ACME Corporation\",\n * roles: [\n * { id: \"admin-role\", displayName: \"Administrator\", description : \"Has full access to all resources\" },\n * { id: \"viewer-role\", displayName: \"Project Viewer\", description : \"Can view project details\" }\n * ]\n * };\n * ```\n */\nexport interface UserMember extends UserBase{\n /** Array of roles assigned to this user member */\n roles: Role[];\n}\n\n/**\n * Represents an iTwin owner member with their basic information.\n *\n * @example\n * ```typescript\n * const ownerMember: OwnerMember = {\n * id: \"550e8400-e29b-41d4-a716-446655440000\",\n * email: \"john.doe@company.com\",\n * givenName: \"John\",\n * surname: \"Doe\",\n * organization: \"Acme Corporation\"\n * };\n * ```\n */\nexport type OwnerMember = UserBase;"]}
@@ -0,0 +1,105 @@
1
+ import type { MemberInvitation } from "./Invitations";
2
+ import type { Links } from "./links";
3
+ import type { OwnerMember } from "./Members";
4
+ /**
5
+ * Response object when adding a new owner member to an iTwin.
6
+ *
7
+ * @remarks
8
+ * Add new iTwin owner members. iTwin Owners are users which have full control over the iTwin.
9
+ * Each owner is granted all permissions on the iTwin, allowing them to perform any action on the iTwin they own.
10
+ *
11
+ * Users which are external (i.e. not in the same organization as the iTwin) are not automatically added to the iTwin.
12
+ * Instead, they're invited. Users which are not external, are immediately added as members on the iTwin.
13
+ *
14
+ * Invited individuals will receive an invitation via Email, where they'll be prompted to accept the invitation.
15
+ * Upon accepting, they'll then become a member of the iTwin.
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const addResponse: AddOwnerMemberResponse = {
20
+ * member: {
21
+ * id: "550e8400-e29b-41d4-a716-446655440000",
22
+ * email: "new.owner@company.com",
23
+ * givenName: "Jane",
24
+ * surname: "Smith",
25
+ * organization: "Tech Solutions Inc"
26
+ * },
27
+ * invitation: {
28
+ * id: "inv-550e8400-e29b-41d4-a716-446655440001",
29
+ * email: "new.owner@company.com",
30
+ * invitedByEmail: "admin@company.com",
31
+ * status: "Pending",
32
+ * createdDate: "2023-10-15T10:30:00Z",
33
+ * expirationDate: "2023-11-15T10:30:00Z"
34
+ * }
35
+ * };
36
+ * ```
37
+ */
38
+ export interface AddOwnerMemberResponse {
39
+ /** The newly added owner member */
40
+ member: OwnerMember;
41
+ /** Invitation details for the new member */
42
+ invitation: MemberInvitation | null;
43
+ }
44
+ /**
45
+ * Response object containing multiple owner members with pagination links.
46
+ *
47
+ * @example
48
+ * ```typescript
49
+ * const multiResponse: OwnerMemberMultiResponse = {
50
+ * members: [
51
+ * {
52
+ * id: "owner1-550e8400-e29b-41d4-a716-446655440000",
53
+ * email: "owner1@company.com",
54
+ * givenName: "Alice",
55
+ * surname: "Johnson",
56
+ * organization: "Primary Corp"
57
+ * },
58
+ * {
59
+ * id: "owner2-550e8400-e29b-41d4-a716-446655440001",
60
+ * email: "owner2@company.com",
61
+ * givenName: "Bob",
62
+ * surname: "Wilson",
63
+ * organization: "Secondary LLC"
64
+ * }
65
+ * ],
66
+ * _links: {
67
+ * self: { href: "/members/owners?$skip=0&$top=100 },
68
+ * next: { href: "/members/owners?$skip=100&$top=100" },
69
+ * prev: { href: "/members/owners?$skip=0&$top=100" }
70
+ * }
71
+ * };
72
+ * ```
73
+ *
74
+ * @remarks
75
+ * This interface is used for API responses that return collections of owner members,
76
+ * such as GET /members/owners operations. Includes HAL-style navigation links for pagination.
77
+ *
78
+ * #### Missing Users
79
+ * When users are removed from the Bentley Identity Management System, they are not automatically removed from the iTwin. Therefore, it is possible to have a situation where the user is no longer valid, yet they are still an owner member of the iTwin. When this happens, the owner members will be returned from this API endpoint with the following values:
80
+ * ```typescript
81
+ * { members: [
82
+ * {
83
+ * "id": <memberId>,
84
+ * "email": null,
85
+ * "givenName": null,
86
+ * "surname": null,
87
+ * "organization": null,
88
+ * ...
89
+ * }
90
+ * ]
91
+ * }
92
+ * ```
93
+ *
94
+ * #### Cleanup
95
+ * The Access Control API will perform a once-a-week cleanup to remove these "Missing Users". You can rely on this automated clean-up if this timeline is sufficient.
96
+ *
97
+ * If not, you can use the Remove iTwin Owner Member API (use the memberId) to remove the owner member from the iTwin.
98
+ */
99
+ export interface OwnerMemberMultiResponse {
100
+ /** Array of owner members */
101
+ members: OwnerMember[];
102
+ /** Navigation links for pagination */
103
+ "_links": Links;
104
+ }
105
+ //# sourceMappingURL=OwnerMember.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OwnerMember.d.ts","sourceRoot":"","sources":["../../../src/types/OwnerMember.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,WAAW,sBAAsB;IACrC,mCAAmC;IACnC,MAAM,EAAE,WAAW,CAAC;IACpB,4CAA4C;IAC5C,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACrC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,MAAM,WAAW,wBAAwB;IACvC,6BAA6B;IAC7B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,sCAAsC;IAEtC,QAAQ,EAAE,KAAK,CAAC;CACjB"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=OwnerMember.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OwnerMember.js","sourceRoot":"","sources":["../../../src/types/OwnerMember.ts"],"names":[],"mappings":";AAAA;;;gGAGgG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport type { MemberInvitation } from \"./Invitations\";\nimport type { Links } from \"./links\";\nimport type { OwnerMember } from \"./Members\";\n\n/**\n * Response object when adding a new owner member to an iTwin.\n *\n * @remarks\n * Add new iTwin owner members. iTwin Owners are users which have full control over the iTwin.\n * Each owner is granted all permissions on the iTwin, allowing them to perform any action on the iTwin they own.\n *\n * Users which are external (i.e. not in the same organization as the iTwin) are not automatically added to the iTwin.\n * Instead, they're invited. Users which are not external, are immediately added as members on the iTwin.\n *\n * Invited individuals will receive an invitation via Email, where they'll be prompted to accept the invitation.\n * Upon accepting, they'll then become a member of the iTwin.\n *\n * @example\n * ```typescript\n * const addResponse: AddOwnerMemberResponse = {\n * member: {\n * id: \"550e8400-e29b-41d4-a716-446655440000\",\n * email: \"new.owner@company.com\",\n * givenName: \"Jane\",\n * surname: \"Smith\",\n * organization: \"Tech Solutions Inc\"\n * },\n * invitation: {\n * id: \"inv-550e8400-e29b-41d4-a716-446655440001\",\n * email: \"new.owner@company.com\",\n * invitedByEmail: \"admin@company.com\",\n * status: \"Pending\",\n * createdDate: \"2023-10-15T10:30:00Z\",\n * expirationDate: \"2023-11-15T10:30:00Z\"\n * }\n * };\n * ```\n */\nexport interface AddOwnerMemberResponse {\n /** The newly added owner member */\n member: OwnerMember;\n /** Invitation details for the new member */\n invitation: MemberInvitation | null;\n}\n\n/**\n * Response object containing multiple owner members with pagination links.\n *\n * @example\n * ```typescript\n * const multiResponse: OwnerMemberMultiResponse = {\n * members: [\n * {\n * id: \"owner1-550e8400-e29b-41d4-a716-446655440000\",\n * email: \"owner1@company.com\",\n * givenName: \"Alice\",\n * surname: \"Johnson\",\n * organization: \"Primary Corp\"\n * },\n * {\n * id: \"owner2-550e8400-e29b-41d4-a716-446655440001\",\n * email: \"owner2@company.com\",\n * givenName: \"Bob\",\n * surname: \"Wilson\",\n * organization: \"Secondary LLC\"\n * }\n * ],\n * _links: {\n * self: { href: \"/members/owners?$skip=0&$top=100 },\n * next: { href: \"/members/owners?$skip=100&$top=100\" },\n * prev: { href: \"/members/owners?$skip=0&$top=100\" }\n * }\n * };\n * ```\n *\n * @remarks\n * This interface is used for API responses that return collections of owner members,\n * such as GET /members/owners operations. Includes HAL-style navigation links for pagination.\n *\n * #### Missing Users\n * When users are removed from the Bentley Identity Management System, they are not automatically removed from the iTwin. Therefore, it is possible to have a situation where the user is no longer valid, yet they are still an owner member of the iTwin. When this happens, the owner members will be returned from this API endpoint with the following values:\n * ```typescript\n * { members: [\n * {\n * \"id\": <memberId>,\n * \"email\": null,\n * \"givenName\": null,\n * \"surname\": null,\n * \"organization\": null,\n * ...\n * }\n * ]\n * }\n * ```\n *\n * #### Cleanup\n * The Access Control API will perform a once-a-week cleanup to remove these \"Missing Users\". You can rely on this automated clean-up if this timeline is sufficient.\n *\n * If not, you can use the Remove iTwin Owner Member API (use the memberId) to remove the owner member from the iTwin.\n */\nexport interface OwnerMemberMultiResponse {\n /** Array of owner members */\n members: OwnerMember[];\n /** Navigation links for pagination */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n \"_links\": Links;\n}"]}
@@ -0,0 +1,5 @@
1
+ /** Represents a permission string used in access control operations.
2
+ * Permissions define what actions a user or role is allowed to perform within an iTwin.
3
+ */
4
+ export type Permission = string;
5
+ //# sourceMappingURL=Permission.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Permission.d.ts","sourceRoot":"","sources":["../../../src/types/Permission.ts"],"names":[],"mappings":"AAKA;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=Permission.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Permission.js","sourceRoot":"","sources":["../../../src/types/Permission.ts"],"names":[],"mappings":";AAAA;;;gGAGgG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\n/** Represents a permission string used in access control operations.\n * Permissions define what actions a user or role is allowed to perform within an iTwin.\n */\nexport type Permission = string;"]}
@@ -0,0 +1,33 @@
1
+ import type { Permission } from "./Permission";
2
+ /**
3
+ * Represents a role that defines a set of permissions for iTwin access control.
4
+ * Roles are assigned to users to grant them specific capabilities within an iTwin.
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * const projectManagerRole: Role = {
9
+ * id: "550e8400-e29b-41d4-a716-446655440000",
10
+ * displayName: "Project Manager",
11
+ * description: "Full access to manage project resources, users, and settings",
12
+ * permissions: [
13
+ * "itwins_read",
14
+ * "itwins_modify",
15
+ * "itwins_members_read",
16
+ * "itwins_members_modify",
17
+ * "imodels_read",
18
+ * "imodels_write"
19
+ * ]
20
+ * };
21
+ * ```
22
+ */
23
+ export interface Role {
24
+ /** Unique identifier for the role. Optional when creating a new role. */
25
+ id: string;
26
+ /** Human-readable name for the role */
27
+ displayName: string;
28
+ /** Detailed description of what this role provides */
29
+ description: string;
30
+ /** Array of permissions associated with this role */
31
+ permissions: Permission[];
32
+ }
33
+ //# sourceMappingURL=Role.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Role.d.ts","sourceRoot":"","sources":["../../../src/types/Role.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,IAAI;IACnB,yEAAyE;IACzE,EAAE,EAAE,MAAM,CAAC;IACX,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,sDAAsD;IACtD,WAAW,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=Role.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Role.js","sourceRoot":"","sources":["../../../src/types/Role.ts"],"names":[],"mappings":";AAAA;;;gGAGgG","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n\nimport type { Permission } from \"./Permission\";\n\n/**\n * Represents a role that defines a set of permissions for iTwin access control.\n * Roles are assigned to users to grant them specific capabilities within an iTwin.\n *\n * @example\n * ```typescript\n * const projectManagerRole: Role = {\n * id: \"550e8400-e29b-41d4-a716-446655440000\",\n * displayName: \"Project Manager\",\n * description: \"Full access to manage project resources, users, and settings\",\n * permissions: [\n * \"itwins_read\",\n * \"itwins_modify\",\n * \"itwins_members_read\",\n * \"itwins_members_modify\",\n * \"imodels_read\",\n * \"imodels_write\"\n * ]\n * };\n * ```\n */\nexport interface Role {\n /** Unique identifier for the role. Optional when creating a new role. */\n id: string;\n /** Human-readable name for the role */\n displayName: string;\n /** Detailed description of what this role provides */\n description: string;\n /** Array of permissions associated with this role */\n permissions: Permission[];\n}\n"]}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Represents an iTwin share contract that allows public access to iTwin data.
3
+ * Share contracts enable external users to access iTwin resources without authentication.
4
+ *
5
+ * @example
6
+ * ```typescript
7
+ * const shareContract: ShareContract = {
8
+ * id: "550e8400-e29b-41d4-a716-446655440000",
9
+ * iTwinId: "a1b2c3d4-e5f6-4789-0123-456789abcdef",
10
+ * shareKey: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
11
+ * shareContract: "Default",
12
+ * expiration: "2024-12-31T23:59:59.999Z"
13
+ * };
14
+ *
15
+ * // Usage in authorization header:
16
+ * const authHeader = `Basic ${shareContract.shareKey}`;
17
+ * ```
18
+ */
19
+ export interface ShareContract {
20
+ /** Unique identifier for the share contract */
21
+ id: string;
22
+ /** The iTwin ID that this share contract applies to */
23
+ iTwinId: string;
24
+ /** The share key used for authentication. Prepend with 'Basic' in authorization headers. */
25
+ shareKey: string;
26
+ /** The type of share contract (e.g., "Default") that defines available APIs */
27
+ shareContract: string;
28
+ /** ISO date string when the share contract expires */
29
+ expiration: string;
30
+ }
31
+ /**
32
+ * Response object containing a single share contract.
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * const response: SingleShareContractResponse = {
37
+ * share: {
38
+ * id: "550e8400-e29b-41d4-a716-446655440000",
39
+ * iTwinId: "a1b2c3d4-e5f6-4789-0123-456789abcdef",
40
+ * shareKey: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
41
+ * shareContract: "Default",
42
+ * expiration: "2024-12-31T23:59:59.999Z"
43
+ * }
44
+ * };
45
+ * ```
46
+ */
47
+ export interface SingleShareContractResponse {
48
+ /** The share contract data */
49
+ share: ShareContract;
50
+ }
51
+ /**
52
+ * Response object containing multiple share contracts.
53
+ *
54
+ * @example
55
+ * ```typescript
56
+ * const response: MultiShareContractResponse = {
57
+ * shares: [
58
+ * {
59
+ * id: "share1-550e8400-e29b-41d4-a716-446655440000",
60
+ * iTwinId: "a1b2c3d4-e5f6-4789-0123-456789abcdef",
61
+ * shareKey: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
62
+ * shareContract: "Default",
63
+ * expiration: "2024-12-31T23:59:59.999Z"
64
+ * },
65
+ * {
66
+ * id: "share2-550e8400-e29b-41d4-a716-446655440001",
67
+ * iTwinId: "a1b2c3d4-e5f6-4789-0123-456789abcdef",
68
+ * shareKey: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
69
+ * shareContract: "Premium",
70
+ * expiration: "2025-06-30T23:59:59.999Z"
71
+ * }
72
+ * ]
73
+ * };
74
+ * ```
75
+ */
76
+ export interface MultiShareContractResponse {
77
+ /** Array of share contracts */
78
+ shares: ShareContract[];
79
+ }
80
+ //# sourceMappingURL=ShareContract.d.ts.map