@seamapi/http 1.33.0 → 1.35.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 (341) hide show
  1. package/dist/connect.cjs +921 -510
  2. package/dist/connect.cjs.map +1 -1
  3. package/dist/connect.d.cts +314 -147
  4. package/lib/seam/connect/index.d.ts +0 -1
  5. package/lib/seam/connect/index.js +0 -1
  6. package/lib/seam/connect/index.js.map +1 -1
  7. package/lib/seam/connect/routes/{access-codes.d.ts → access-codes/access-codes.d.ts} +13 -11
  8. package/lib/seam/connect/routes/{access-codes.js → access-codes/access-codes.js} +33 -30
  9. package/lib/seam/connect/routes/access-codes/access-codes.js.map +1 -0
  10. package/lib/seam/connect/routes/access-codes/index.d.ts +3 -0
  11. package/lib/seam/connect/routes/access-codes/index.js +8 -0
  12. package/lib/seam/connect/routes/access-codes/index.js.map +1 -0
  13. package/lib/seam/connect/routes/access-codes/simulate/index.d.ts +1 -0
  14. package/lib/seam/connect/routes/access-codes/simulate/index.js +6 -0
  15. package/lib/seam/connect/routes/access-codes/simulate/index.js.map +1 -0
  16. package/lib/seam/connect/routes/{access-codes-simulate.d.ts → access-codes/simulate/simulate.d.ts} +7 -5
  17. package/lib/seam/connect/routes/{access-codes-simulate.js → access-codes/simulate/simulate.js} +14 -11
  18. package/lib/seam/connect/routes/{unstable-partner.js.map → access-codes/simulate/simulate.js.map} +1 -1
  19. package/lib/seam/connect/routes/access-codes/unmanaged/index.d.ts +1 -0
  20. package/lib/seam/connect/routes/access-codes/unmanaged/index.js +6 -0
  21. package/lib/seam/connect/routes/access-codes/unmanaged/index.js.map +1 -0
  22. package/lib/seam/connect/routes/{access-codes-unmanaged.d.ts → access-codes/unmanaged/unmanaged.d.ts} +10 -8
  23. package/lib/seam/connect/routes/{access-codes-unmanaged.js → access-codes/unmanaged/unmanaged.js} +24 -21
  24. package/lib/seam/connect/routes/access-codes/unmanaged/unmanaged.js.map +1 -0
  25. package/lib/seam/connect/routes/access-grants/access-grants.d.ts +37 -0
  26. package/lib/seam/connect/routes/access-grants/access-grants.js +119 -0
  27. package/lib/seam/connect/routes/{noise-sensors.js.map → access-grants/access-grants.js.map} +1 -1
  28. package/lib/seam/connect/routes/access-grants/index.d.ts +1 -0
  29. package/lib/seam/connect/routes/access-grants/index.js +6 -0
  30. package/lib/seam/connect/routes/access-grants/index.js.map +1 -0
  31. package/lib/seam/connect/routes/access-methods/access-methods.d.ts +33 -0
  32. package/lib/seam/connect/routes/access-methods/access-methods.js +111 -0
  33. package/lib/seam/connect/routes/access-methods/access-methods.js.map +1 -0
  34. package/lib/seam/connect/routes/access-methods/index.d.ts +1 -0
  35. package/lib/seam/connect/routes/access-methods/index.js +6 -0
  36. package/lib/seam/connect/routes/access-methods/index.js.map +1 -0
  37. package/lib/seam/connect/routes/{acs-access-groups.d.ts → acs/access-groups/access-groups.d.ts} +12 -10
  38. package/lib/seam/connect/routes/{acs-access-groups.js → acs/access-groups/access-groups.js} +29 -26
  39. package/lib/seam/connect/routes/acs/access-groups/access-groups.js.map +1 -0
  40. package/lib/seam/connect/routes/acs/access-groups/index.d.ts +1 -0
  41. package/lib/seam/connect/routes/acs/access-groups/index.js +6 -0
  42. package/lib/seam/connect/routes/acs/access-groups/index.js.map +1 -0
  43. package/lib/seam/connect/routes/{acs.d.ts → acs/acs.d.ts} +13 -11
  44. package/lib/seam/connect/routes/{acs.js → acs/acs.js} +20 -17
  45. package/lib/seam/connect/routes/acs/acs.js.map +1 -0
  46. package/lib/seam/connect/routes/{acs-credentials.d.ts → acs/credentials/credentials.d.ts} +11 -9
  47. package/lib/seam/connect/routes/{acs-credentials.js → acs/credentials/credentials.js} +29 -26
  48. package/lib/seam/connect/routes/acs/credentials/credentials.js.map +1 -0
  49. package/lib/seam/connect/routes/acs/credentials/index.d.ts +1 -0
  50. package/lib/seam/connect/routes/acs/credentials/index.js +6 -0
  51. package/lib/seam/connect/routes/acs/credentials/index.js.map +1 -0
  52. package/lib/seam/connect/routes/{acs-encoders.d.ts → acs/encoders/encoders.d.ts} +13 -11
  53. package/lib/seam/connect/routes/{acs-encoders.js → acs/encoders/encoders.js} +23 -20
  54. package/lib/seam/connect/routes/acs/encoders/encoders.js.map +1 -0
  55. package/lib/seam/connect/routes/acs/encoders/index.d.ts +2 -0
  56. package/lib/seam/connect/routes/acs/encoders/index.js +7 -0
  57. package/lib/seam/connect/routes/acs/encoders/index.js.map +1 -0
  58. package/lib/seam/connect/routes/acs/encoders/simulate/index.d.ts +1 -0
  59. package/lib/seam/connect/routes/acs/encoders/simulate/index.js +6 -0
  60. package/lib/seam/connect/routes/acs/encoders/simulate/index.js.map +1 -0
  61. package/lib/seam/connect/routes/{acs-encoders-simulate.d.ts → acs/encoders/simulate/simulate.d.ts} +7 -5
  62. package/lib/seam/connect/routes/{acs-encoders-simulate.js → acs/encoders/simulate/simulate.js} +17 -14
  63. package/lib/seam/connect/routes/acs/encoders/simulate/simulate.js.map +1 -0
  64. package/lib/seam/connect/routes/{acs-entrances.d.ts → acs/entrances/entrances.d.ts} +10 -8
  65. package/lib/seam/connect/routes/{acs-entrances.js → acs/entrances/entrances.js} +23 -20
  66. package/lib/seam/connect/routes/acs/entrances/entrances.js.map +1 -0
  67. package/lib/seam/connect/routes/acs/entrances/index.d.ts +1 -0
  68. package/lib/seam/connect/routes/acs/entrances/index.js +6 -0
  69. package/lib/seam/connect/routes/acs/entrances/index.js.map +1 -0
  70. package/lib/seam/connect/routes/acs/index.d.ts +7 -0
  71. package/lib/seam/connect/routes/acs/index.js +12 -0
  72. package/lib/seam/connect/routes/acs/index.js.map +1 -0
  73. package/lib/seam/connect/routes/acs/systems/index.d.ts +1 -0
  74. package/lib/seam/connect/routes/acs/systems/index.js +6 -0
  75. package/lib/seam/connect/routes/acs/systems/index.js.map +1 -0
  76. package/lib/seam/connect/routes/{acs-systems.d.ts → acs/systems/systems.d.ts} +10 -8
  77. package/lib/seam/connect/routes/{acs-systems.js → acs/systems/systems.js} +22 -19
  78. package/lib/seam/connect/routes/acs/systems/systems.js.map +1 -0
  79. package/lib/seam/connect/routes/acs/users/index.d.ts +1 -0
  80. package/lib/seam/connect/routes/acs/users/index.js +6 -0
  81. package/lib/seam/connect/routes/acs/users/index.js.map +1 -0
  82. package/lib/seam/connect/routes/{acs-users.d.ts → acs/users/users.d.ts} +13 -11
  83. package/lib/seam/connect/routes/{acs-users.js → acs/users/users.js} +36 -33
  84. package/lib/seam/connect/routes/acs/users/users.js.map +1 -0
  85. package/lib/seam/connect/routes/{action-attempts.d.ts → action-attempts/action-attempts.d.ts} +9 -7
  86. package/lib/seam/connect/routes/{action-attempts.js → action-attempts/action-attempts.js} +18 -15
  87. package/lib/seam/connect/routes/action-attempts/action-attempts.js.map +1 -0
  88. package/lib/seam/connect/routes/action-attempts/index.d.ts +1 -0
  89. package/lib/seam/connect/routes/action-attempts/index.js +6 -0
  90. package/lib/seam/connect/routes/action-attempts/index.js.map +1 -0
  91. package/lib/seam/connect/routes/{client-sessions.d.ts → client-sessions/client-sessions.d.ts} +11 -9
  92. package/lib/seam/connect/routes/{client-sessions.js → client-sessions/client-sessions.js} +26 -23
  93. package/lib/seam/connect/routes/client-sessions/client-sessions.js.map +1 -0
  94. package/lib/seam/connect/routes/client-sessions/index.d.ts +1 -0
  95. package/lib/seam/connect/routes/client-sessions/index.js +6 -0
  96. package/lib/seam/connect/routes/client-sessions/index.js.map +1 -0
  97. package/lib/seam/connect/routes/{connect-webviews.d.ts → connect-webviews/connect-webviews.d.ts} +10 -8
  98. package/lib/seam/connect/routes/{connect-webviews.js → connect-webviews/connect-webviews.js} +22 -19
  99. package/lib/seam/connect/routes/connect-webviews/connect-webviews.js.map +1 -0
  100. package/lib/seam/connect/routes/connect-webviews/index.d.ts +1 -0
  101. package/lib/seam/connect/routes/connect-webviews/index.js +6 -0
  102. package/lib/seam/connect/routes/connect-webviews/index.js.map +1 -0
  103. package/lib/seam/connect/routes/{connected-accounts.d.ts → connected-accounts/connected-accounts.d.ts} +10 -8
  104. package/lib/seam/connect/routes/{connected-accounts.js → connected-accounts/connected-accounts.js} +23 -20
  105. package/lib/seam/connect/routes/connected-accounts/connected-accounts.js.map +1 -0
  106. package/lib/seam/connect/routes/connected-accounts/index.d.ts +1 -0
  107. package/lib/seam/connect/routes/connected-accounts/index.js +6 -0
  108. package/lib/seam/connect/routes/connected-accounts/index.js.map +1 -0
  109. package/lib/seam/connect/routes/{devices.d.ts → devices/devices.d.ts} +13 -11
  110. package/lib/seam/connect/routes/{devices.js → devices/devices.js} +27 -24
  111. package/lib/seam/connect/routes/devices/devices.js.map +1 -0
  112. package/lib/seam/connect/routes/devices/index.d.ts +3 -0
  113. package/lib/seam/connect/routes/devices/index.js +8 -0
  114. package/lib/seam/connect/routes/devices/index.js.map +1 -0
  115. package/lib/seam/connect/routes/devices/simulate/index.d.ts +1 -0
  116. package/lib/seam/connect/routes/devices/simulate/index.js +6 -0
  117. package/lib/seam/connect/routes/devices/simulate/index.js.map +1 -0
  118. package/lib/seam/connect/routes/{devices-simulate.d.ts → devices/simulate/simulate.d.ts} +7 -5
  119. package/lib/seam/connect/routes/{devices-simulate.js → devices/simulate/simulate.js} +16 -13
  120. package/lib/seam/connect/routes/devices/simulate/simulate.js.map +1 -0
  121. package/lib/seam/connect/routes/devices/unmanaged/index.d.ts +1 -0
  122. package/lib/seam/connect/routes/devices/unmanaged/index.js +6 -0
  123. package/lib/seam/connect/routes/devices/unmanaged/index.js.map +1 -0
  124. package/lib/seam/connect/routes/{devices-unmanaged.d.ts → devices/unmanaged/unmanaged.d.ts} +9 -7
  125. package/lib/seam/connect/routes/{devices-unmanaged.js → devices/unmanaged/unmanaged.js} +20 -17
  126. package/lib/seam/connect/routes/devices/unmanaged/unmanaged.js.map +1 -0
  127. package/lib/seam/connect/routes/{events.d.ts → events/events.d.ts} +9 -7
  128. package/lib/seam/connect/routes/{events.js → events/events.js} +18 -15
  129. package/lib/seam/connect/routes/events/events.js.map +1 -0
  130. package/lib/seam/connect/routes/events/index.d.ts +1 -0
  131. package/lib/seam/connect/routes/events/index.js +6 -0
  132. package/lib/seam/connect/routes/events/index.js.map +1 -0
  133. package/lib/seam/connect/routes/index.d.ts +19 -34
  134. package/lib/seam/connect/routes/index.js +23 -34
  135. package/lib/seam/connect/routes/index.js.map +1 -1
  136. package/lib/seam/connect/routes/locks/index.d.ts +1 -0
  137. package/lib/seam/connect/routes/locks/index.js +6 -0
  138. package/lib/seam/connect/routes/locks/index.js.map +1 -0
  139. package/lib/seam/connect/routes/{locks.d.ts → locks/locks.d.ts} +11 -9
  140. package/lib/seam/connect/routes/{locks.js → locks/locks.js} +20 -17
  141. package/lib/seam/connect/routes/locks/locks.js.map +1 -0
  142. package/lib/seam/connect/routes/noise-sensors/index.d.ts +3 -0
  143. package/lib/seam/connect/routes/noise-sensors/index.js +8 -0
  144. package/lib/seam/connect/routes/noise-sensors/index.js.map +1 -0
  145. package/lib/seam/connect/routes/{noise-sensors.d.ts → noise-sensors/noise-sensors.d.ts} +10 -8
  146. package/lib/seam/connect/routes/{noise-sensors.js → noise-sensors/noise-sensors.js} +17 -14
  147. package/lib/seam/connect/routes/noise-sensors/noise-sensors.js.map +1 -0
  148. package/lib/seam/connect/routes/noise-sensors/noise-thresholds/index.d.ts +1 -0
  149. package/lib/seam/connect/routes/noise-sensors/noise-thresholds/index.js +6 -0
  150. package/lib/seam/connect/routes/noise-sensors/noise-thresholds/index.js.map +1 -0
  151. package/lib/seam/connect/routes/{noise-sensors-noise-thresholds.d.ts → noise-sensors/noise-thresholds/noise-thresholds.d.ts} +10 -8
  152. package/lib/seam/connect/routes/{noise-sensors-noise-thresholds.js → noise-sensors/noise-thresholds/noise-thresholds.js} +24 -21
  153. package/lib/seam/connect/routes/noise-sensors/noise-thresholds/noise-thresholds.js.map +1 -0
  154. package/lib/seam/connect/routes/noise-sensors/simulate/index.d.ts +1 -0
  155. package/lib/seam/connect/routes/noise-sensors/simulate/index.js +6 -0
  156. package/lib/seam/connect/routes/noise-sensors/simulate/index.js.map +1 -0
  157. package/lib/seam/connect/routes/{noise-sensors-simulate.d.ts → noise-sensors/simulate/simulate.d.ts} +7 -5
  158. package/lib/seam/connect/routes/{noise-sensors-simulate.js → noise-sensors/simulate/simulate.js} +14 -11
  159. package/lib/seam/connect/routes/noise-sensors/simulate/simulate.js.map +1 -0
  160. package/lib/seam/connect/routes/phones/index.d.ts +2 -0
  161. package/lib/seam/connect/routes/phones/index.js +7 -0
  162. package/lib/seam/connect/routes/phones/index.js.map +1 -0
  163. package/lib/seam/connect/routes/{phones.d.ts → phones/phones.d.ts} +11 -9
  164. package/lib/seam/connect/routes/{phones.js → phones/phones.js} +22 -19
  165. package/lib/seam/connect/routes/{events.js.map → phones/phones.js.map} +1 -1
  166. package/lib/seam/connect/routes/phones/simulate/index.d.ts +1 -0
  167. package/lib/seam/connect/routes/phones/simulate/index.js +6 -0
  168. package/lib/seam/connect/routes/phones/simulate/index.js.map +1 -0
  169. package/lib/seam/connect/routes/{phones-simulate.d.ts → phones/simulate/simulate.d.ts} +7 -5
  170. package/lib/seam/connect/routes/{phones-simulate.js → phones/simulate/simulate.js} +14 -11
  171. package/lib/seam/connect/routes/phones/simulate/simulate.js.map +1 -0
  172. package/lib/seam/connect/{seam-http.d.ts → routes/seam-http.d.ts} +27 -7
  173. package/lib/seam/connect/{seam-http.js → routes/seam-http.js} +40 -10
  174. package/lib/seam/connect/routes/seam-http.js.map +1 -0
  175. package/lib/seam/connect/routes/spaces/index.d.ts +1 -0
  176. package/lib/seam/connect/routes/spaces/index.js +6 -0
  177. package/lib/seam/connect/routes/spaces/index.js.map +1 -0
  178. package/lib/seam/connect/routes/spaces/spaces.d.ts +57 -0
  179. package/lib/seam/connect/routes/spaces/spaces.js +159 -0
  180. package/lib/seam/connect/routes/spaces/spaces.js.map +1 -0
  181. package/lib/seam/connect/routes/{thermostats-daily-programs.d.ts → thermostats/daily-programs/daily-programs.d.ts} +9 -7
  182. package/lib/seam/connect/routes/{thermostats-daily-programs.js → thermostats/daily-programs/daily-programs.js} +18 -15
  183. package/lib/seam/connect/routes/thermostats/daily-programs/daily-programs.js.map +1 -0
  184. package/lib/seam/connect/routes/thermostats/daily-programs/index.d.ts +1 -0
  185. package/lib/seam/connect/routes/thermostats/daily-programs/index.js +6 -0
  186. package/lib/seam/connect/routes/thermostats/daily-programs/index.js.map +1 -0
  187. package/lib/seam/connect/routes/thermostats/index.d.ts +4 -0
  188. package/lib/seam/connect/routes/thermostats/index.js +9 -0
  189. package/lib/seam/connect/routes/thermostats/index.js.map +1 -0
  190. package/lib/seam/connect/routes/thermostats/schedules/index.d.ts +1 -0
  191. package/lib/seam/connect/routes/thermostats/schedules/index.js +6 -0
  192. package/lib/seam/connect/routes/thermostats/schedules/index.js.map +1 -0
  193. package/lib/seam/connect/routes/{thermostats-schedules.d.ts → thermostats/schedules/schedules.d.ts} +10 -8
  194. package/lib/seam/connect/routes/{thermostats-schedules.js → thermostats/schedules/schedules.js} +24 -21
  195. package/lib/seam/connect/routes/thermostats/schedules/schedules.js.map +1 -0
  196. package/lib/seam/connect/routes/thermostats/simulate/index.d.ts +1 -0
  197. package/lib/seam/connect/routes/thermostats/simulate/index.js +6 -0
  198. package/lib/seam/connect/routes/thermostats/simulate/index.js.map +1 -0
  199. package/lib/seam/connect/routes/{thermostats-simulate.d.ts → thermostats/simulate/simulate.d.ts} +7 -5
  200. package/lib/seam/connect/routes/{thermostats-simulate.js → thermostats/simulate/simulate.js} +15 -12
  201. package/lib/seam/connect/routes/{thermostats-daily-programs.js.map → thermostats/simulate/simulate.js.map} +1 -1
  202. package/lib/seam/connect/routes/{thermostats.d.ts → thermostats/thermostats.d.ts} +20 -18
  203. package/lib/seam/connect/routes/{thermostats.js → thermostats/thermostats.js} +34 -31
  204. package/lib/seam/connect/routes/thermostats/thermostats.js.map +1 -0
  205. package/lib/seam/connect/routes/{user-identities-enrollment-automations.d.ts → user-identities/enrollment-automations/enrollment-automations.d.ts} +10 -8
  206. package/lib/seam/connect/routes/{user-identities-enrollment-automations.js → user-identities/enrollment-automations/enrollment-automations.js} +23 -20
  207. package/lib/seam/connect/routes/user-identities/enrollment-automations/enrollment-automations.js.map +1 -0
  208. package/lib/seam/connect/routes/user-identities/enrollment-automations/index.d.ts +1 -0
  209. package/lib/seam/connect/routes/user-identities/enrollment-automations/index.js +6 -0
  210. package/lib/seam/connect/routes/user-identities/enrollment-automations/index.js.map +1 -0
  211. package/lib/seam/connect/routes/user-identities/index.d.ts +2 -0
  212. package/lib/seam/connect/routes/user-identities/index.js +7 -0
  213. package/lib/seam/connect/routes/user-identities/index.js.map +1 -0
  214. package/lib/seam/connect/routes/{user-identities.d.ts → user-identities/user-identities.d.ts} +16 -14
  215. package/lib/seam/connect/routes/{user-identities.js → user-identities/user-identities.js} +42 -39
  216. package/lib/seam/connect/routes/user-identities/user-identities.js.map +1 -0
  217. package/lib/seam/connect/routes/webhooks/index.d.ts +1 -0
  218. package/lib/seam/connect/routes/webhooks/index.js +6 -0
  219. package/lib/seam/connect/routes/webhooks/index.js.map +1 -0
  220. package/lib/seam/connect/routes/{webhooks.d.ts → webhooks/webhooks.d.ts} +12 -10
  221. package/lib/seam/connect/routes/{webhooks.js → webhooks/webhooks.js} +23 -20
  222. package/lib/seam/connect/routes/webhooks/webhooks.js.map +1 -0
  223. package/lib/seam/connect/routes/workspaces/index.d.ts +1 -0
  224. package/lib/seam/connect/routes/workspaces/index.js +6 -0
  225. package/lib/seam/connect/routes/workspaces/index.js.map +1 -0
  226. package/lib/seam/connect/routes/{workspaces.d.ts → workspaces/workspaces.d.ts} +13 -11
  227. package/lib/seam/connect/routes/{workspaces.js → workspaces/workspaces.js} +21 -18
  228. package/lib/seam/connect/routes/workspaces/workspaces.js.map +1 -0
  229. package/lib/version.d.ts +1 -1
  230. package/lib/version.js +1 -1
  231. package/package.json +9 -7
  232. package/src/lib/seam/connect/index.ts +0 -1
  233. package/src/lib/seam/connect/routes/{access-codes.ts → access-codes/access-codes.ts} +28 -25
  234. package/src/lib/seam/connect/routes/access-codes/index.ts +8 -0
  235. package/src/lib/seam/connect/routes/access-codes/simulate/index.ts +6 -0
  236. package/src/lib/seam/connect/routes/{access-codes-simulate.ts → access-codes/simulate/simulate.ts} +7 -5
  237. package/src/lib/seam/connect/routes/access-codes/unmanaged/index.ts +6 -0
  238. package/src/lib/seam/connect/routes/{access-codes-unmanaged.ts → access-codes/unmanaged/unmanaged.ts} +17 -15
  239. package/src/lib/seam/connect/routes/access-grants/access-grants.ts +239 -0
  240. package/src/lib/seam/connect/routes/access-grants/index.ts +6 -0
  241. package/src/lib/seam/connect/routes/access-methods/access-methods.ts +221 -0
  242. package/src/lib/seam/connect/routes/access-methods/index.ts +6 -0
  243. package/src/lib/seam/connect/routes/{acs-access-groups.ts → acs/access-groups/access-groups.ts} +22 -20
  244. package/src/lib/seam/connect/routes/acs/access-groups/index.ts +6 -0
  245. package/src/lib/seam/connect/routes/{acs.ts → acs/acs.ts} +16 -13
  246. package/src/lib/seam/connect/routes/{acs-credentials.ts → acs/credentials/credentials.ts} +24 -20
  247. package/src/lib/seam/connect/routes/acs/credentials/index.ts +6 -0
  248. package/src/lib/seam/connect/routes/{acs-encoders.ts → acs/encoders/encoders.ts} +19 -16
  249. package/src/lib/seam/connect/routes/acs/encoders/index.ts +7 -0
  250. package/src/lib/seam/connect/routes/acs/encoders/simulate/index.ts +6 -0
  251. package/src/lib/seam/connect/routes/{acs-encoders-simulate.ts → acs/encoders/simulate/simulate.ts} +10 -8
  252. package/src/lib/seam/connect/routes/{acs-entrances.ts → acs/entrances/entrances.ts} +16 -14
  253. package/src/lib/seam/connect/routes/acs/entrances/index.ts +6 -0
  254. package/src/lib/seam/connect/routes/acs/index.ts +12 -0
  255. package/src/lib/seam/connect/routes/acs/systems/index.ts +6 -0
  256. package/src/lib/seam/connect/routes/{acs-systems.ts → acs/systems/systems.ts} +15 -13
  257. package/src/lib/seam/connect/routes/acs/users/index.ts +6 -0
  258. package/src/lib/seam/connect/routes/{acs-users.ts → acs/users/users.ts} +29 -27
  259. package/src/lib/seam/connect/routes/{action-attempts.ts → action-attempts/action-attempts.ts} +13 -11
  260. package/src/lib/seam/connect/routes/action-attempts/index.ts +6 -0
  261. package/src/lib/seam/connect/routes/{client-sessions.ts → client-sessions/client-sessions.ts} +24 -17
  262. package/src/lib/seam/connect/routes/client-sessions/index.ts +6 -0
  263. package/src/lib/seam/connect/routes/{connect-webviews.ts → connect-webviews/connect-webviews.ts} +18 -14
  264. package/src/lib/seam/connect/routes/connect-webviews/index.ts +6 -0
  265. package/src/lib/seam/connect/routes/{connected-accounts.ts → connected-accounts/connected-accounts.ts} +17 -15
  266. package/src/lib/seam/connect/routes/connected-accounts/index.ts +6 -0
  267. package/src/lib/seam/connect/routes/{devices.ts → devices/devices.ts} +24 -19
  268. package/src/lib/seam/connect/routes/devices/index.ts +8 -0
  269. package/src/lib/seam/connect/routes/devices/simulate/index.ts +6 -0
  270. package/src/lib/seam/connect/routes/{devices-simulate.ts → devices/simulate/simulate.ts} +9 -7
  271. package/src/lib/seam/connect/routes/devices/unmanaged/index.ts +6 -0
  272. package/src/lib/seam/connect/routes/{devices-unmanaged.ts → devices/unmanaged/unmanaged.ts} +13 -11
  273. package/src/lib/seam/connect/routes/{events.ts → events/events.ts} +14 -10
  274. package/src/lib/seam/connect/routes/events/index.ts +6 -0
  275. package/src/lib/seam/connect/routes/index.ts +24 -34
  276. package/src/lib/seam/connect/routes/locks/index.ts +6 -0
  277. package/src/lib/seam/connect/routes/{locks.ts → locks/locks.ts} +18 -14
  278. package/src/lib/seam/connect/routes/noise-sensors/index.ts +8 -0
  279. package/src/lib/seam/connect/routes/{noise-sensors.ts → noise-sensors/noise-sensors.ts} +11 -8
  280. package/src/lib/seam/connect/routes/noise-sensors/noise-thresholds/index.ts +6 -0
  281. package/src/lib/seam/connect/routes/{noise-sensors-noise-thresholds.ts → noise-sensors/noise-thresholds/noise-thresholds.ts} +17 -15
  282. package/src/lib/seam/connect/routes/noise-sensors/simulate/index.ts +6 -0
  283. package/src/lib/seam/connect/routes/{noise-sensors-simulate.ts → noise-sensors/simulate/simulate.ts} +7 -5
  284. package/src/lib/seam/connect/routes/phones/index.ts +7 -0
  285. package/src/lib/seam/connect/routes/{phones.ts → phones/phones.ts} +20 -13
  286. package/src/lib/seam/connect/routes/phones/simulate/index.ts +6 -0
  287. package/src/lib/seam/connect/routes/{phones-simulate.ts → phones/simulate/simulate.ts} +7 -5
  288. package/src/lib/seam/connect/{seam-http.ts → routes/seam-http.ts} +49 -28
  289. package/src/lib/seam/connect/routes/spaces/index.ts +6 -0
  290. package/src/lib/seam/connect/routes/spaces/spaces.ts +337 -0
  291. package/src/lib/seam/connect/routes/{thermostats-daily-programs.ts → thermostats/daily-programs/daily-programs.ts} +12 -10
  292. package/src/lib/seam/connect/routes/thermostats/daily-programs/index.ts +6 -0
  293. package/src/lib/seam/connect/routes/thermostats/index.ts +9 -0
  294. package/src/lib/seam/connect/routes/thermostats/schedules/index.ts +6 -0
  295. package/src/lib/seam/connect/routes/{thermostats-schedules.ts → thermostats/schedules/schedules.ts} +17 -15
  296. package/src/lib/seam/connect/routes/thermostats/simulate/index.ts +6 -0
  297. package/src/lib/seam/connect/routes/{thermostats-simulate.ts → thermostats/simulate/simulate.ts} +8 -6
  298. package/src/lib/seam/connect/routes/{thermostats.ts → thermostats/thermostats.ts} +40 -37
  299. package/src/lib/seam/connect/routes/{user-identities-enrollment-automations.ts → user-identities/enrollment-automations/enrollment-automations.ts} +16 -14
  300. package/src/lib/seam/connect/routes/user-identities/enrollment-automations/index.ts +6 -0
  301. package/src/lib/seam/connect/routes/user-identities/index.ts +7 -0
  302. package/src/lib/seam/connect/routes/{user-identities.ts → user-identities/user-identities.ts} +38 -33
  303. package/src/lib/seam/connect/routes/webhooks/index.ts +6 -0
  304. package/src/lib/seam/connect/routes/{webhooks.ts → webhooks/webhooks.ts} +23 -17
  305. package/src/lib/seam/connect/routes/workspaces/index.ts +6 -0
  306. package/src/lib/seam/connect/routes/{workspaces.ts → workspaces/workspaces.ts} +23 -17
  307. package/src/lib/version.ts +1 -1
  308. package/lib/seam/connect/routes/access-codes-simulate.js.map +0 -1
  309. package/lib/seam/connect/routes/access-codes-unmanaged.js.map +0 -1
  310. package/lib/seam/connect/routes/access-codes.js.map +0 -1
  311. package/lib/seam/connect/routes/acs-access-groups.js.map +0 -1
  312. package/lib/seam/connect/routes/acs-credentials.js.map +0 -1
  313. package/lib/seam/connect/routes/acs-encoders-simulate.js.map +0 -1
  314. package/lib/seam/connect/routes/acs-encoders.js.map +0 -1
  315. package/lib/seam/connect/routes/acs-entrances.js.map +0 -1
  316. package/lib/seam/connect/routes/acs-systems.js.map +0 -1
  317. package/lib/seam/connect/routes/acs-users.js.map +0 -1
  318. package/lib/seam/connect/routes/acs.js.map +0 -1
  319. package/lib/seam/connect/routes/action-attempts.js.map +0 -1
  320. package/lib/seam/connect/routes/client-sessions.js.map +0 -1
  321. package/lib/seam/connect/routes/connect-webviews.js.map +0 -1
  322. package/lib/seam/connect/routes/connected-accounts.js.map +0 -1
  323. package/lib/seam/connect/routes/devices-simulate.js.map +0 -1
  324. package/lib/seam/connect/routes/devices-unmanaged.js.map +0 -1
  325. package/lib/seam/connect/routes/devices.js.map +0 -1
  326. package/lib/seam/connect/routes/locks.js.map +0 -1
  327. package/lib/seam/connect/routes/noise-sensors-noise-thresholds.js.map +0 -1
  328. package/lib/seam/connect/routes/noise-sensors-simulate.js.map +0 -1
  329. package/lib/seam/connect/routes/phones-simulate.js.map +0 -1
  330. package/lib/seam/connect/routes/phones.js.map +0 -1
  331. package/lib/seam/connect/routes/thermostats-schedules.js.map +0 -1
  332. package/lib/seam/connect/routes/thermostats-simulate.js.map +0 -1
  333. package/lib/seam/connect/routes/thermostats.js.map +0 -1
  334. package/lib/seam/connect/routes/unstable-partner.d.ts +0 -17
  335. package/lib/seam/connect/routes/unstable-partner.js +0 -83
  336. package/lib/seam/connect/routes/user-identities-enrollment-automations.js.map +0 -1
  337. package/lib/seam/connect/routes/user-identities.js.map +0 -1
  338. package/lib/seam/connect/routes/webhooks.js.map +0 -1
  339. package/lib/seam/connect/routes/workspaces.js.map +0 -1
  340. package/lib/seam/connect/seam-http.js.map +0 -1
  341. package/src/lib/seam/connect/routes/unstable-partner.ts +0 -160
@@ -1,10 +1,11 @@
1
1
  /*
2
- * Automatically generated by generate-routes.ts.
2
+ * Automatically generated by codegen/smith.ts.
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
5
 
6
6
  import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect'
7
7
 
8
+ import { seamApiLtsVersion } from 'lib/lts-version.js'
8
9
  import {
9
10
  getAuthHeadersForClientSessionToken,
10
11
  warnOnInsecureuserIdentifierKey,
@@ -30,17 +31,19 @@ import {
30
31
  limitToSeamHttpRequestOptions,
31
32
  parseOptions,
32
33
  } from 'lib/seam/connect/parse-options.js'
34
+ import { SeamHttpClientSessions } from 'lib/seam/connect/routes/client-sessions/index.js'
33
35
  import { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
34
36
  import { SeamPaginator } from 'lib/seam/connect/seam-paginator.js'
35
37
  import type { SetNonNullable } from 'lib/types.js'
36
38
 
37
- import { SeamHttpAccessCodesSimulate } from './access-codes-simulate.js'
38
- import { SeamHttpAccessCodesUnmanaged } from './access-codes-unmanaged.js'
39
- import { SeamHttpClientSessions } from './client-sessions.js'
39
+ import { SeamHttpAccessCodesSimulate } from './simulate/index.js'
40
+ import { SeamHttpAccessCodesUnmanaged } from './unmanaged/index.js'
40
41
 
41
42
  export class SeamHttpAccessCodes {
42
43
  client: Client
43
44
  readonly defaults: Required<SeamHttpRequestOptions>
45
+ readonly ltsVersion = seamApiLtsVersion
46
+ static ltsVersion = seamApiLtsVersion
44
47
 
45
48
  constructor(apiKeyOrOptions: string | SeamHttpOptions = {}) {
46
49
  const options = parseOptions(apiKeyOrOptions)
@@ -93,7 +96,7 @@ export class SeamHttpAccessCodes {
93
96
  const clientOptions = parseOptions({ ...options, publishableKey })
94
97
  if (isSeamHttpOptionsWithClient(clientOptions)) {
95
98
  throw new SeamHttpInvalidOptionsError(
96
- 'The client option cannot be used with SeamHttp.fromPublishableKey',
99
+ 'The client option cannot be used with SeamHttpAccessCodes.fromPublishableKey',
97
100
  )
98
101
  }
99
102
  const client = createClient(clientOptions)
@@ -163,20 +166,20 @@ export class SeamHttpAccessCodes {
163
166
  await clientSessions.get()
164
167
  }
165
168
 
166
- get unmanaged(): SeamHttpAccessCodesUnmanaged {
167
- return SeamHttpAccessCodesUnmanaged.fromClient(this.client, this.defaults)
168
- }
169
-
170
169
  get simulate(): SeamHttpAccessCodesSimulate {
171
170
  return SeamHttpAccessCodesSimulate.fromClient(this.client, this.defaults)
172
171
  }
173
172
 
173
+ get unmanaged(): SeamHttpAccessCodesUnmanaged {
174
+ return SeamHttpAccessCodesUnmanaged.fromClient(this.client, this.defaults)
175
+ }
176
+
174
177
  create(
175
178
  body?: AccessCodesCreateBody,
176
179
  ): SeamHttpRequest<AccessCodesCreateResponse, 'access_code'> {
177
180
  return new SeamHttpRequest(this, {
178
181
  pathname: '/access_codes/create',
179
- method: 'post',
182
+ method: 'POST',
180
183
  body,
181
184
  responseKey: 'access_code',
182
185
  })
@@ -187,17 +190,17 @@ export class SeamHttpAccessCodes {
187
190
  ): SeamHttpRequest<AccessCodesCreateMultipleResponse, 'access_codes'> {
188
191
  return new SeamHttpRequest(this, {
189
192
  pathname: '/access_codes/create_multiple',
190
- method: 'post',
193
+ method: 'PUT',
191
194
  body,
192
195
  responseKey: 'access_codes',
193
196
  })
194
197
  }
195
198
 
196
- delete(body?: AccessCodesDeleteParams): SeamHttpRequest<void, undefined> {
199
+ delete(params?: AccessCodesDeleteParams): SeamHttpRequest<void, undefined> {
197
200
  return new SeamHttpRequest(this, {
198
201
  pathname: '/access_codes/delete',
199
- method: 'post',
200
- body,
202
+ method: 'POST',
203
+ body: params,
201
204
  responseKey: undefined,
202
205
  })
203
206
  }
@@ -207,30 +210,30 @@ export class SeamHttpAccessCodes {
207
210
  ): SeamHttpRequest<AccessCodesGenerateCodeResponse, 'generated_code'> {
208
211
  return new SeamHttpRequest(this, {
209
212
  pathname: '/access_codes/generate_code',
210
- method: 'post',
213
+ method: 'POST',
211
214
  body,
212
215
  responseKey: 'generated_code',
213
216
  })
214
217
  }
215
218
 
216
219
  get(
217
- body?: AccessCodesGetParams,
220
+ params?: AccessCodesGetParams,
218
221
  ): SeamHttpRequest<AccessCodesGetResponse, 'access_code'> {
219
222
  return new SeamHttpRequest(this, {
220
223
  pathname: '/access_codes/get',
221
- method: 'post',
222
- body,
224
+ method: 'POST',
225
+ body: params,
223
226
  responseKey: 'access_code',
224
227
  })
225
228
  }
226
229
 
227
230
  list(
228
- body?: AccessCodesListParams,
231
+ params?: AccessCodesListParams,
229
232
  ): SeamHttpRequest<AccessCodesListResponse, 'access_codes'> {
230
233
  return new SeamHttpRequest(this, {
231
234
  pathname: '/access_codes/list',
232
- method: 'post',
233
- body,
235
+ method: 'POST',
236
+ body: params,
234
237
  responseKey: 'access_codes',
235
238
  })
236
239
  }
@@ -240,7 +243,7 @@ export class SeamHttpAccessCodes {
240
243
  ): SeamHttpRequest<AccessCodesPullBackupAccessCodeResponse, 'access_code'> {
241
244
  return new SeamHttpRequest(this, {
242
245
  pathname: '/access_codes/pull_backup_access_code',
243
- method: 'post',
246
+ method: 'POST',
244
247
  body,
245
248
  responseKey: 'access_code',
246
249
  })
@@ -251,7 +254,7 @@ export class SeamHttpAccessCodes {
251
254
  ): SeamHttpRequest<void, undefined> {
252
255
  return new SeamHttpRequest(this, {
253
256
  pathname: '/access_codes/report_device_constraints',
254
- method: 'post',
257
+ method: 'POST',
255
258
  body,
256
259
  responseKey: undefined,
257
260
  })
@@ -260,7 +263,7 @@ export class SeamHttpAccessCodes {
260
263
  update(body?: AccessCodesUpdateBody): SeamHttpRequest<void, undefined> {
261
264
  return new SeamHttpRequest(this, {
262
265
  pathname: '/access_codes/update',
263
- method: 'post',
266
+ method: 'PUT',
264
267
  body,
265
268
  responseKey: undefined,
266
269
  })
@@ -271,7 +274,7 @@ export class SeamHttpAccessCodes {
271
274
  ): SeamHttpRequest<void, undefined> {
272
275
  return new SeamHttpRequest(this, {
273
276
  pathname: '/access_codes/update_multiple',
274
- method: 'post',
277
+ method: 'PATCH',
275
278
  body,
276
279
  responseKey: undefined,
277
280
  })
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Automatically generated by codegen/smith.ts.
3
+ * Do not edit this file or add other files to this directory.
4
+ */
5
+
6
+ export * from './access-codes.js'
7
+ export * from './simulate/index.js'
8
+ export * from './unmanaged/index.js'
@@ -0,0 +1,6 @@
1
+ /*
2
+ * Automatically generated by codegen/smith.ts.
3
+ * Do not edit this file or add other files to this directory.
4
+ */
5
+
6
+ export * from './simulate.js'
@@ -1,10 +1,11 @@
1
1
  /*
2
- * Automatically generated by generate-routes.ts.
2
+ * Automatically generated by codegen/smith.ts.
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
5
 
6
6
  import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect'
7
7
 
8
+ import { seamApiLtsVersion } from 'lib/lts-version.js'
8
9
  import {
9
10
  getAuthHeadersForClientSessionToken,
10
11
  warnOnInsecureuserIdentifierKey,
@@ -30,15 +31,16 @@ import {
30
31
  limitToSeamHttpRequestOptions,
31
32
  parseOptions,
32
33
  } from 'lib/seam/connect/parse-options.js'
34
+ import { SeamHttpClientSessions } from 'lib/seam/connect/routes/client-sessions/index.js'
33
35
  import { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
34
36
  import { SeamPaginator } from 'lib/seam/connect/seam-paginator.js'
35
37
  import type { SetNonNullable } from 'lib/types.js'
36
38
 
37
- import { SeamHttpClientSessions } from './client-sessions.js'
38
-
39
39
  export class SeamHttpAccessCodesSimulate {
40
40
  client: Client
41
41
  readonly defaults: Required<SeamHttpRequestOptions>
42
+ readonly ltsVersion = seamApiLtsVersion
43
+ static ltsVersion = seamApiLtsVersion
42
44
 
43
45
  constructor(apiKeyOrOptions: string | SeamHttpOptions = {}) {
44
46
  const options = parseOptions(apiKeyOrOptions)
@@ -91,7 +93,7 @@ export class SeamHttpAccessCodesSimulate {
91
93
  const clientOptions = parseOptions({ ...options, publishableKey })
92
94
  if (isSeamHttpOptionsWithClient(clientOptions)) {
93
95
  throw new SeamHttpInvalidOptionsError(
94
- 'The client option cannot be used with SeamHttp.fromPublishableKey',
96
+ 'The client option cannot be used with SeamHttpAccessCodesSimulate.fromPublishableKey',
95
97
  )
96
98
  }
97
99
  const client = createClient(clientOptions)
@@ -169,7 +171,7 @@ export class SeamHttpAccessCodesSimulate {
169
171
  > {
170
172
  return new SeamHttpRequest(this, {
171
173
  pathname: '/access_codes/simulate/create_unmanaged_access_code',
172
- method: 'post',
174
+ method: 'POST',
173
175
  body,
174
176
  responseKey: 'access_code',
175
177
  })
@@ -0,0 +1,6 @@
1
+ /*
2
+ * Automatically generated by codegen/smith.ts.
3
+ * Do not edit this file or add other files to this directory.
4
+ */
5
+
6
+ export * from './unmanaged.js'
@@ -1,10 +1,11 @@
1
1
  /*
2
- * Automatically generated by generate-routes.ts.
2
+ * Automatically generated by codegen/smith.ts.
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
5
 
6
6
  import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect'
7
7
 
8
+ import { seamApiLtsVersion } from 'lib/lts-version.js'
8
9
  import {
9
10
  getAuthHeadersForClientSessionToken,
10
11
  warnOnInsecureuserIdentifierKey,
@@ -30,15 +31,16 @@ import {
30
31
  limitToSeamHttpRequestOptions,
31
32
  parseOptions,
32
33
  } from 'lib/seam/connect/parse-options.js'
34
+ import { SeamHttpClientSessions } from 'lib/seam/connect/routes/client-sessions/index.js'
33
35
  import { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
34
36
  import { SeamPaginator } from 'lib/seam/connect/seam-paginator.js'
35
37
  import type { SetNonNullable } from 'lib/types.js'
36
38
 
37
- import { SeamHttpClientSessions } from './client-sessions.js'
38
-
39
39
  export class SeamHttpAccessCodesUnmanaged {
40
40
  client: Client
41
41
  readonly defaults: Required<SeamHttpRequestOptions>
42
+ readonly ltsVersion = seamApiLtsVersion
43
+ static ltsVersion = seamApiLtsVersion
42
44
 
43
45
  constructor(apiKeyOrOptions: string | SeamHttpOptions = {}) {
44
46
  const options = parseOptions(apiKeyOrOptions)
@@ -91,7 +93,7 @@ export class SeamHttpAccessCodesUnmanaged {
91
93
  const clientOptions = parseOptions({ ...options, publishableKey })
92
94
  if (isSeamHttpOptionsWithClient(clientOptions)) {
93
95
  throw new SeamHttpInvalidOptionsError(
94
- 'The client option cannot be used with SeamHttp.fromPublishableKey',
96
+ 'The client option cannot be used with SeamHttpAccessCodesUnmanaged.fromPublishableKey',
95
97
  )
96
98
  }
97
99
  const client = createClient(clientOptions)
@@ -166,41 +168,41 @@ export class SeamHttpAccessCodesUnmanaged {
166
168
  ): SeamHttpRequest<void, undefined> {
167
169
  return new SeamHttpRequest(this, {
168
170
  pathname: '/access_codes/unmanaged/convert_to_managed',
169
- method: 'post',
171
+ method: 'PATCH',
170
172
  body,
171
173
  responseKey: undefined,
172
174
  })
173
175
  }
174
176
 
175
177
  delete(
176
- body?: AccessCodesUnmanagedDeleteParams,
178
+ params?: AccessCodesUnmanagedDeleteParams,
177
179
  ): SeamHttpRequest<void, undefined> {
178
180
  return new SeamHttpRequest(this, {
179
181
  pathname: '/access_codes/unmanaged/delete',
180
- method: 'post',
181
- body,
182
+ method: 'POST',
183
+ body: params,
182
184
  responseKey: undefined,
183
185
  })
184
186
  }
185
187
 
186
188
  get(
187
- body?: AccessCodesUnmanagedGetParams,
189
+ params?: AccessCodesUnmanagedGetParams,
188
190
  ): SeamHttpRequest<AccessCodesUnmanagedGetResponse, 'access_code'> {
189
191
  return new SeamHttpRequest(this, {
190
192
  pathname: '/access_codes/unmanaged/get',
191
- method: 'post',
192
- body,
193
+ method: 'POST',
194
+ body: params,
193
195
  responseKey: 'access_code',
194
196
  })
195
197
  }
196
198
 
197
199
  list(
198
- body?: AccessCodesUnmanagedListParams,
200
+ params?: AccessCodesUnmanagedListParams,
199
201
  ): SeamHttpRequest<AccessCodesUnmanagedListResponse, 'access_codes'> {
200
202
  return new SeamHttpRequest(this, {
201
203
  pathname: '/access_codes/unmanaged/list',
202
- method: 'post',
203
- body,
204
+ method: 'POST',
205
+ body: params,
204
206
  responseKey: 'access_codes',
205
207
  })
206
208
  }
@@ -210,7 +212,7 @@ export class SeamHttpAccessCodesUnmanaged {
210
212
  ): SeamHttpRequest<void, undefined> {
211
213
  return new SeamHttpRequest(this, {
212
214
  pathname: '/access_codes/unmanaged/update',
213
- method: 'post',
215
+ method: 'PATCH',
214
216
  body,
215
217
  responseKey: undefined,
216
218
  })
@@ -0,0 +1,239 @@
1
+ /*
2
+ * Automatically generated by codegen/smith.ts.
3
+ * Do not edit this file or add other files to this directory.
4
+ */
5
+
6
+ import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect'
7
+
8
+ import { seamApiLtsVersion } from 'lib/lts-version.js'
9
+ import {
10
+ getAuthHeadersForClientSessionToken,
11
+ warnOnInsecureuserIdentifierKey,
12
+ } from 'lib/seam/connect/auth.js'
13
+ import { type Client, createClient } from 'lib/seam/connect/client.js'
14
+ import {
15
+ isSeamHttpOptionsWithApiKey,
16
+ isSeamHttpOptionsWithClient,
17
+ isSeamHttpOptionsWithClientSessionToken,
18
+ isSeamHttpOptionsWithConsoleSessionToken,
19
+ isSeamHttpOptionsWithPersonalAccessToken,
20
+ type SeamHttpFromPublishableKeyOptions,
21
+ SeamHttpInvalidOptionsError,
22
+ type SeamHttpOptions,
23
+ type SeamHttpOptionsWithApiKey,
24
+ type SeamHttpOptionsWithClient,
25
+ type SeamHttpOptionsWithClientSessionToken,
26
+ type SeamHttpOptionsWithConsoleSessionToken,
27
+ type SeamHttpOptionsWithPersonalAccessToken,
28
+ type SeamHttpRequestOptions,
29
+ } from 'lib/seam/connect/options.js'
30
+ import {
31
+ limitToSeamHttpRequestOptions,
32
+ parseOptions,
33
+ } from 'lib/seam/connect/parse-options.js'
34
+ import { SeamHttpClientSessions } from 'lib/seam/connect/routes/client-sessions/index.js'
35
+ import { SeamHttpRequest } from 'lib/seam/connect/seam-http-request.js'
36
+ import { SeamPaginator } from 'lib/seam/connect/seam-paginator.js'
37
+ import type { SetNonNullable } from 'lib/types.js'
38
+
39
+ export class SeamHttpAccessGrants {
40
+ client: Client
41
+ readonly defaults: Required<SeamHttpRequestOptions>
42
+ readonly ltsVersion = seamApiLtsVersion
43
+ static ltsVersion = seamApiLtsVersion
44
+
45
+ constructor(apiKeyOrOptions: string | SeamHttpOptions = {}) {
46
+ const options = parseOptions(apiKeyOrOptions)
47
+ this.client = 'client' in options ? options.client : createClient(options)
48
+ this.defaults = limitToSeamHttpRequestOptions(options)
49
+ }
50
+
51
+ static fromClient(
52
+ client: SeamHttpOptionsWithClient['client'],
53
+ options: Omit<SeamHttpOptionsWithClient, 'client'> = {},
54
+ ): SeamHttpAccessGrants {
55
+ const constructorOptions = { ...options, client }
56
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
57
+ throw new SeamHttpInvalidOptionsError('Missing client')
58
+ }
59
+ return new SeamHttpAccessGrants(constructorOptions)
60
+ }
61
+
62
+ static fromApiKey(
63
+ apiKey: SeamHttpOptionsWithApiKey['apiKey'],
64
+ options: Omit<SeamHttpOptionsWithApiKey, 'apiKey'> = {},
65
+ ): SeamHttpAccessGrants {
66
+ const constructorOptions = { ...options, apiKey }
67
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
68
+ throw new SeamHttpInvalidOptionsError('Missing apiKey')
69
+ }
70
+ return new SeamHttpAccessGrants(constructorOptions)
71
+ }
72
+
73
+ static fromClientSessionToken(
74
+ clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'],
75
+ options: Omit<
76
+ SeamHttpOptionsWithClientSessionToken,
77
+ 'clientSessionToken'
78
+ > = {},
79
+ ): SeamHttpAccessGrants {
80
+ const constructorOptions = { ...options, clientSessionToken }
81
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
82
+ throw new SeamHttpInvalidOptionsError('Missing clientSessionToken')
83
+ }
84
+ return new SeamHttpAccessGrants(constructorOptions)
85
+ }
86
+
87
+ static async fromPublishableKey(
88
+ publishableKey: string,
89
+ userIdentifierKey: string,
90
+ options: SeamHttpFromPublishableKeyOptions = {},
91
+ ): Promise<SeamHttpAccessGrants> {
92
+ warnOnInsecureuserIdentifierKey(userIdentifierKey)
93
+ const clientOptions = parseOptions({ ...options, publishableKey })
94
+ if (isSeamHttpOptionsWithClient(clientOptions)) {
95
+ throw new SeamHttpInvalidOptionsError(
96
+ 'The client option cannot be used with SeamHttpAccessGrants.fromPublishableKey',
97
+ )
98
+ }
99
+ const client = createClient(clientOptions)
100
+ const clientSessions = SeamHttpClientSessions.fromClient(client)
101
+ const { token } = await clientSessions.getOrCreate({
102
+ user_identifier_key: userIdentifierKey,
103
+ })
104
+ return SeamHttpAccessGrants.fromClientSessionToken(token, options)
105
+ }
106
+
107
+ static fromConsoleSessionToken(
108
+ consoleSessionToken: SeamHttpOptionsWithConsoleSessionToken['consoleSessionToken'],
109
+ workspaceId: SeamHttpOptionsWithConsoleSessionToken['workspaceId'],
110
+ options: Omit<
111
+ SeamHttpOptionsWithConsoleSessionToken,
112
+ 'consoleSessionToken' | 'workspaceId'
113
+ > = {},
114
+ ): SeamHttpAccessGrants {
115
+ const constructorOptions = { ...options, consoleSessionToken, workspaceId }
116
+ if (!isSeamHttpOptionsWithConsoleSessionToken(constructorOptions)) {
117
+ throw new SeamHttpInvalidOptionsError(
118
+ 'Missing consoleSessionToken or workspaceId',
119
+ )
120
+ }
121
+ return new SeamHttpAccessGrants(constructorOptions)
122
+ }
123
+
124
+ static fromPersonalAccessToken(
125
+ personalAccessToken: SeamHttpOptionsWithPersonalAccessToken['personalAccessToken'],
126
+ workspaceId: SeamHttpOptionsWithPersonalAccessToken['workspaceId'],
127
+ options: Omit<
128
+ SeamHttpOptionsWithPersonalAccessToken,
129
+ 'personalAccessToken' | 'workspaceId'
130
+ > = {},
131
+ ): SeamHttpAccessGrants {
132
+ const constructorOptions = { ...options, personalAccessToken, workspaceId }
133
+ if (!isSeamHttpOptionsWithPersonalAccessToken(constructorOptions)) {
134
+ throw new SeamHttpInvalidOptionsError(
135
+ 'Missing personalAccessToken or workspaceId',
136
+ )
137
+ }
138
+ return new SeamHttpAccessGrants(constructorOptions)
139
+ }
140
+
141
+ createPaginator<const TResponse, const TResponseKey extends keyof TResponse>(
142
+ request: SeamHttpRequest<TResponse, TResponseKey>,
143
+ ): SeamPaginator<TResponse, TResponseKey> {
144
+ return new SeamPaginator<TResponse, TResponseKey>(this, request)
145
+ }
146
+
147
+ async updateClientSessionToken(
148
+ clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'],
149
+ ): Promise<void> {
150
+ const { headers } = this.client.defaults
151
+ const authHeaders = getAuthHeadersForClientSessionToken({
152
+ clientSessionToken,
153
+ })
154
+ for (const key of Object.keys(authHeaders)) {
155
+ if (headers[key] == null) {
156
+ throw new Error(
157
+ 'Cannot update a clientSessionToken on a client created without a clientSessionToken',
158
+ )
159
+ }
160
+ }
161
+ this.client.defaults.headers = { ...headers, ...authHeaders }
162
+ const clientSessions = SeamHttpClientSessions.fromClient(this.client)
163
+ await clientSessions.get()
164
+ }
165
+
166
+ create(
167
+ body?: AccessGrantsCreateBody,
168
+ ): SeamHttpRequest<AccessGrantsCreateResponse, 'access_grant'> {
169
+ return new SeamHttpRequest(this, {
170
+ pathname: '/access_grants/create',
171
+ method: 'POST',
172
+ body,
173
+ responseKey: 'access_grant',
174
+ })
175
+ }
176
+
177
+ delete(params?: AccessGrantsDeleteParams): SeamHttpRequest<void, undefined> {
178
+ return new SeamHttpRequest(this, {
179
+ pathname: '/access_grants/delete',
180
+ method: 'POST',
181
+ body: params,
182
+ responseKey: undefined,
183
+ })
184
+ }
185
+
186
+ get(
187
+ params?: AccessGrantsGetParams,
188
+ ): SeamHttpRequest<AccessGrantsGetResponse, 'access_grant'> {
189
+ return new SeamHttpRequest(this, {
190
+ pathname: '/access_grants/get',
191
+ method: 'POST',
192
+ body: params,
193
+ responseKey: 'access_grant',
194
+ })
195
+ }
196
+
197
+ list(
198
+ params?: AccessGrantsListParams,
199
+ ): SeamHttpRequest<AccessGrantsListResponse, 'access_grants'> {
200
+ return new SeamHttpRequest(this, {
201
+ pathname: '/access_grants/list',
202
+ method: 'POST',
203
+ body: params,
204
+ responseKey: 'access_grants',
205
+ })
206
+ }
207
+ }
208
+
209
+ export type AccessGrantsCreateBody = RouteRequestBody<'/access_grants/create'>
210
+
211
+ export type AccessGrantsCreateResponse = SetNonNullable<
212
+ Required<RouteResponse<'/access_grants/create'>>
213
+ >
214
+
215
+ export type AccessGrantsCreateOptions = never
216
+
217
+ export type AccessGrantsDeleteParams = RouteRequestBody<'/access_grants/delete'>
218
+
219
+ export type AccessGrantsDeleteResponse = SetNonNullable<
220
+ Required<RouteResponse<'/access_grants/delete'>>
221
+ >
222
+
223
+ export type AccessGrantsDeleteOptions = never
224
+
225
+ export type AccessGrantsGetParams = RouteRequestBody<'/access_grants/get'>
226
+
227
+ export type AccessGrantsGetResponse = SetNonNullable<
228
+ Required<RouteResponse<'/access_grants/get'>>
229
+ >
230
+
231
+ export type AccessGrantsGetOptions = never
232
+
233
+ export type AccessGrantsListParams = RouteRequestBody<'/access_grants/list'>
234
+
235
+ export type AccessGrantsListResponse = SetNonNullable<
236
+ Required<RouteResponse<'/access_grants/list'>>
237
+ >
238
+
239
+ export type AccessGrantsListOptions = never
@@ -0,0 +1,6 @@
1
+ /*
2
+ * Automatically generated by codegen/smith.ts.
3
+ * Do not edit this file or add other files to this directory.
4
+ */
5
+
6
+ export * from './access-grants.js'