orb-billing 4.32.0 → 4.47.1

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 (252) hide show
  1. package/CHANGELOG.md +184 -0
  2. package/LICENSE +1 -1
  3. package/README.md +12 -3
  4. package/core.d.ts +4 -5
  5. package/core.d.ts.map +1 -1
  6. package/core.js +16 -11
  7. package/core.js.map +1 -1
  8. package/core.mjs +16 -11
  9. package/core.mjs.map +1 -1
  10. package/error.d.ts +30 -36
  11. package/error.d.ts.map +1 -1
  12. package/error.js +24 -43
  13. package/error.js.map +1 -1
  14. package/error.mjs +24 -43
  15. package/error.mjs.map +1 -1
  16. package/index.d.mts +43 -109
  17. package/index.d.ts +43 -109
  18. package/index.d.ts.map +1 -1
  19. package/index.js +71 -33
  20. package/index.js.map +1 -1
  21. package/index.mjs +43 -32
  22. package/index.mjs.map +1 -1
  23. package/package.json +2 -2
  24. package/resources/alerts.d.ts +58 -19
  25. package/resources/alerts.d.ts.map +1 -1
  26. package/resources/alerts.js +19 -37
  27. package/resources/alerts.js.map +1 -1
  28. package/resources/alerts.mjs +19 -14
  29. package/resources/alerts.mjs.map +1 -1
  30. package/resources/coupons/coupons.d.ts +3 -7
  31. package/resources/coupons/coupons.d.ts.map +1 -1
  32. package/resources/coupons/coupons.js +3 -5
  33. package/resources/coupons/coupons.js.map +1 -1
  34. package/resources/coupons/coupons.mjs +3 -5
  35. package/resources/coupons/coupons.mjs.map +1 -1
  36. package/resources/coupons/index.d.ts +2 -2
  37. package/resources/coupons/index.d.ts.map +1 -1
  38. package/resources/coupons/index.js.map +1 -1
  39. package/resources/coupons/index.mjs.map +1 -1
  40. package/resources/coupons/subscriptions.d.ts +1 -2
  41. package/resources/coupons/subscriptions.d.ts.map +1 -1
  42. package/resources/coupons/subscriptions.js +0 -2
  43. package/resources/coupons/subscriptions.js.map +1 -1
  44. package/resources/coupons/subscriptions.mjs +0 -2
  45. package/resources/coupons/subscriptions.mjs.map +1 -1
  46. package/resources/credit-notes.d.ts +29 -4
  47. package/resources/credit-notes.d.ts.map +1 -1
  48. package/resources/credit-notes.js +8 -27
  49. package/resources/credit-notes.js.map +1 -1
  50. package/resources/credit-notes.mjs +8 -4
  51. package/resources/credit-notes.mjs.map +1 -1
  52. package/resources/customers/balance-transactions.d.ts +1 -6
  53. package/resources/customers/balance-transactions.d.ts.map +1 -1
  54. package/resources/customers/balance-transactions.js +1 -27
  55. package/resources/customers/balance-transactions.js.map +1 -1
  56. package/resources/customers/balance-transactions.mjs +1 -4
  57. package/resources/customers/balance-transactions.mjs.map +1 -1
  58. package/resources/customers/costs.d.ts +1 -5
  59. package/resources/customers/costs.d.ts.map +1 -1
  60. package/resources/customers/costs.js +0 -2
  61. package/resources/customers/costs.js.map +1 -1
  62. package/resources/customers/costs.mjs +0 -2
  63. package/resources/customers/costs.mjs.map +1 -1
  64. package/resources/customers/credits/credits.d.ts +15 -31
  65. package/resources/customers/credits/credits.d.ts.map +1 -1
  66. package/resources/customers/credits/credits.js +10 -11
  67. package/resources/customers/credits/credits.js.map +1 -1
  68. package/resources/customers/credits/credits.mjs +10 -11
  69. package/resources/customers/credits/credits.mjs.map +1 -1
  70. package/resources/customers/credits/index.d.ts +3 -3
  71. package/resources/customers/credits/index.d.ts.map +1 -1
  72. package/resources/customers/credits/index.js.map +1 -1
  73. package/resources/customers/credits/index.mjs.map +1 -1
  74. package/resources/customers/credits/ledger.d.ts +15 -23
  75. package/resources/customers/credits/ledger.d.ts.map +1 -1
  76. package/resources/customers/credits/ledger.js +12 -36
  77. package/resources/customers/credits/ledger.js.map +1 -1
  78. package/resources/customers/credits/ledger.mjs +12 -13
  79. package/resources/customers/credits/ledger.mjs.map +1 -1
  80. package/resources/customers/credits/top-ups.d.ts +1 -11
  81. package/resources/customers/credits/top-ups.d.ts.map +1 -1
  82. package/resources/customers/credits/top-ups.js +2 -28
  83. package/resources/customers/credits/top-ups.js.map +1 -1
  84. package/resources/customers/credits/top-ups.mjs +2 -5
  85. package/resources/customers/credits/top-ups.mjs.map +1 -1
  86. package/resources/customers/customers.d.ts +9 -29
  87. package/resources/customers/customers.d.ts.map +1 -1
  88. package/resources/customers/customers.js +25 -18
  89. package/resources/customers/customers.js.map +1 -1
  90. package/resources/customers/customers.mjs +25 -18
  91. package/resources/customers/customers.mjs.map +1 -1
  92. package/resources/customers/index.d.ts +4 -4
  93. package/resources/customers/index.d.ts.map +1 -1
  94. package/resources/customers/index.js.map +1 -1
  95. package/resources/customers/index.mjs.map +1 -1
  96. package/resources/dimensional-price-groups/dimensional-price-groups.d.ts +90 -0
  97. package/resources/dimensional-price-groups/dimensional-price-groups.d.ts.map +1 -0
  98. package/resources/dimensional-price-groups/dimensional-price-groups.js +73 -0
  99. package/resources/dimensional-price-groups/dimensional-price-groups.js.map +1 -0
  100. package/resources/dimensional-price-groups/dimensional-price-groups.mjs +45 -0
  101. package/resources/dimensional-price-groups/dimensional-price-groups.mjs.map +1 -0
  102. package/resources/dimensional-price-groups/external-dimensional-price-group-id.d.ts +10 -0
  103. package/resources/dimensional-price-groups/external-dimensional-price-group-id.d.ts.map +1 -0
  104. package/resources/dimensional-price-groups/external-dimensional-price-group-id.js +15 -0
  105. package/resources/dimensional-price-groups/external-dimensional-price-group-id.js.map +1 -0
  106. package/resources/dimensional-price-groups/external-dimensional-price-group-id.mjs +11 -0
  107. package/resources/dimensional-price-groups/external-dimensional-price-group-id.mjs.map +1 -0
  108. package/resources/dimensional-price-groups/index.d.ts +3 -0
  109. package/resources/dimensional-price-groups/index.d.ts.map +1 -0
  110. package/resources/dimensional-price-groups/index.js +9 -0
  111. package/resources/dimensional-price-groups/index.js.map +1 -0
  112. package/resources/dimensional-price-groups/index.mjs +4 -0
  113. package/resources/dimensional-price-groups/index.mjs.map +1 -0
  114. package/resources/events/backfills.d.ts +5 -11
  115. package/resources/events/backfills.d.ts.map +1 -1
  116. package/resources/events/backfills.js +5 -29
  117. package/resources/events/backfills.js.map +1 -1
  118. package/resources/events/backfills.mjs +5 -6
  119. package/resources/events/backfills.mjs.map +1 -1
  120. package/resources/events/events.d.ts +7 -22
  121. package/resources/events/events.d.ts.map +1 -1
  122. package/resources/events/events.js +7 -7
  123. package/resources/events/events.js.map +1 -1
  124. package/resources/events/events.mjs +7 -7
  125. package/resources/events/events.mjs.map +1 -1
  126. package/resources/events/index.d.ts +3 -3
  127. package/resources/events/index.d.ts.map +1 -1
  128. package/resources/events/index.js.map +1 -1
  129. package/resources/events/index.mjs.map +1 -1
  130. package/resources/events/volume.d.ts +9 -12
  131. package/resources/events/volume.d.ts.map +1 -1
  132. package/resources/events/volume.js +16 -7
  133. package/resources/events/volume.js.map +1 -1
  134. package/resources/events/volume.mjs +16 -7
  135. package/resources/events/volume.mjs.map +1 -1
  136. package/resources/index.d.ts +14 -13
  137. package/resources/index.d.ts.map +1 -1
  138. package/resources/index.js +10 -7
  139. package/resources/index.js.map +1 -1
  140. package/resources/index.mjs +8 -7
  141. package/resources/index.mjs.map +1 -1
  142. package/resources/invoice-line-items.d.ts +1 -3
  143. package/resources/invoice-line-items.d.ts.map +1 -1
  144. package/resources/invoice-line-items.js +0 -2
  145. package/resources/invoice-line-items.js.map +1 -1
  146. package/resources/invoice-line-items.mjs +0 -2
  147. package/resources/invoice-line-items.mjs.map +1 -1
  148. package/resources/invoices.d.ts +81 -18
  149. package/resources/invoices.d.ts.map +1 -1
  150. package/resources/invoices.js +22 -35
  151. package/resources/invoices.js.map +1 -1
  152. package/resources/invoices.mjs +22 -12
  153. package/resources/invoices.mjs.map +1 -1
  154. package/resources/items.d.ts +2 -8
  155. package/resources/items.d.ts.map +1 -1
  156. package/resources/items.js +5 -31
  157. package/resources/items.js.map +1 -1
  158. package/resources/items.mjs +5 -8
  159. package/resources/items.mjs.map +1 -1
  160. package/resources/metrics.d.ts +2 -8
  161. package/resources/metrics.d.ts.map +1 -1
  162. package/resources/metrics.js +7 -31
  163. package/resources/metrics.js.map +1 -1
  164. package/resources/metrics.mjs +7 -8
  165. package/resources/metrics.mjs.map +1 -1
  166. package/resources/plans/external-plan-id.d.ts +2 -4
  167. package/resources/plans/external-plan-id.d.ts.map +1 -1
  168. package/resources/plans/external-plan-id.js +7 -7
  169. package/resources/plans/external-plan-id.js.map +1 -1
  170. package/resources/plans/external-plan-id.mjs +7 -7
  171. package/resources/plans/external-plan-id.mjs.map +1 -1
  172. package/resources/plans/index.d.ts +2 -2
  173. package/resources/plans/index.d.ts.map +1 -1
  174. package/resources/plans/index.js.map +1 -1
  175. package/resources/plans/index.mjs +1 -1
  176. package/resources/plans/index.mjs.map +1 -1
  177. package/resources/plans/plans.d.ts +332 -11
  178. package/resources/plans/plans.d.ts.map +1 -1
  179. package/resources/plans/plans.js +10 -9
  180. package/resources/plans/plans.js.map +1 -1
  181. package/resources/plans/plans.mjs +10 -9
  182. package/resources/plans/plans.mjs.map +1 -1
  183. package/resources/prices/external-price-id.d.ts +2 -4
  184. package/resources/prices/external-price-id.d.ts.map +1 -1
  185. package/resources/prices/external-price-id.js +6 -7
  186. package/resources/prices/external-price-id.js.map +1 -1
  187. package/resources/prices/external-price-id.mjs +6 -7
  188. package/resources/prices/external-price-id.mjs.map +1 -1
  189. package/resources/prices/index.d.ts +2 -2
  190. package/resources/prices/index.d.ts.map +1 -1
  191. package/resources/prices/index.js +3 -3
  192. package/resources/prices/index.js.map +1 -1
  193. package/resources/prices/index.mjs +1 -1
  194. package/resources/prices/index.mjs.map +1 -1
  195. package/resources/prices/prices.d.ts +340 -15
  196. package/resources/prices/prices.d.ts.map +1 -1
  197. package/resources/prices/prices.js +9 -9
  198. package/resources/prices/prices.js.map +1 -1
  199. package/resources/prices/prices.mjs +9 -9
  200. package/resources/prices/prices.mjs.map +1 -1
  201. package/resources/subscriptions.d.ts +7636 -200
  202. package/resources/subscriptions.d.ts.map +1 -1
  203. package/resources/subscriptions.js +348 -47
  204. package/resources/subscriptions.js.map +1 -1
  205. package/resources/subscriptions.mjs +348 -24
  206. package/resources/subscriptions.mjs.map +1 -1
  207. package/resources/top-level.d.ts +1 -2
  208. package/resources/top-level.d.ts.map +1 -1
  209. package/resources/top-level.js +0 -2
  210. package/resources/top-level.js.map +1 -1
  211. package/resources/top-level.mjs +0 -2
  212. package/resources/top-level.mjs.map +1 -1
  213. package/src/core.ts +23 -19
  214. package/src/error.ts +82 -125
  215. package/src/index.ts +334 -130
  216. package/src/resources/alerts.ts +117 -24
  217. package/src/resources/coupons/coupons.ts +13 -8
  218. package/src/resources/coupons/index.ts +2 -2
  219. package/src/resources/coupons/subscriptions.ts +2 -3
  220. package/src/resources/credit-notes.ts +45 -5
  221. package/src/resources/customers/balance-transactions.ts +10 -7
  222. package/src/resources/customers/costs.ts +7 -6
  223. package/src/resources/customers/credits/credits.ts +82 -32
  224. package/src/resources/customers/credits/index.ts +20 -20
  225. package/src/resources/customers/credits/ledger.ts +30 -24
  226. package/src/resources/customers/credits/top-ups.ts +16 -12
  227. package/src/resources/customers/customers.ts +70 -46
  228. package/src/resources/customers/index.ts +17 -17
  229. package/src/resources/dimensional-price-groups/dimensional-price-groups.ts +146 -0
  230. package/src/resources/dimensional-price-groups/external-dimensional-price-group-id.ts +20 -0
  231. package/src/resources/dimensional-price-groups/index.ts +10 -0
  232. package/src/resources/events/backfills.ts +17 -12
  233. package/src/resources/events/events.ts +42 -23
  234. package/src/resources/events/index.ts +15 -15
  235. package/src/resources/events/volume.ts +11 -22
  236. package/src/resources/index.ts +113 -67
  237. package/src/resources/invoice-line-items.ts +5 -4
  238. package/src/resources/invoices.ts +111 -34
  239. package/src/resources/items.ts +11 -17
  240. package/src/resources/metrics.ts +11 -17
  241. package/src/resources/plans/external-plan-id.ts +3 -14
  242. package/src/resources/plans/index.ts +9 -2
  243. package/src/resources/plans/plans.ts +425 -19
  244. package/src/resources/prices/external-price-id.ts +3 -14
  245. package/src/resources/prices/index.ts +8 -8
  246. package/src/resources/prices/prices.ts +471 -24
  247. package/src/resources/subscriptions.ts +9238 -440
  248. package/src/resources/top-level.ts +2 -3
  249. package/src/version.ts +1 -1
  250. package/version.d.ts +1 -1
  251. package/version.js +1 -1
  252. package/version.mjs +1 -1
package/src/error.ts CHANGED
@@ -4,17 +4,19 @@ import { castToError, Headers } from './core';
4
4
 
5
5
  export class OrbError extends Error {}
6
6
 
7
- export class APIError extends OrbError {
8
- readonly status: number | undefined;
9
- readonly headers: Headers | undefined;
10
- readonly error: Object | undefined;
11
-
12
- constructor(
13
- status: number | undefined,
14
- error: Object | undefined,
15
- message: string | undefined,
16
- headers: Headers | undefined,
17
- ) {
7
+ export class APIError<
8
+ TStatus extends number | undefined = number | undefined,
9
+ THeaders extends Headers | undefined = Headers | undefined,
10
+ TError extends Object | undefined = Object | undefined,
11
+ > extends OrbError {
12
+ /** HTTP status for the response that caused the error */
13
+ readonly status: TStatus;
14
+ /** HTTP headers for the response that caused the error */
15
+ readonly headers: THeaders;
16
+ /** JSON body of the response that caused the error */
17
+ readonly error: TError;
18
+
19
+ constructor(status: TStatus, error: TError, message: string | undefined, headers: THeaders) {
18
20
  super(`${APIError.makeMessage(status, error, message)}`);
19
21
  this.status = status;
20
22
  this.headers = headers;
@@ -47,8 +49,8 @@ export class APIError extends OrbError {
47
49
  errorResponse: Object | undefined,
48
50
  message: string | undefined,
49
51
  headers: Headers | undefined,
50
- ) {
51
- if (!status) {
52
+ ): APIError {
53
+ if (!status || !headers) {
52
54
  return new APIConnectionError({ message, cause: castToError(errorResponse) });
53
55
  }
54
56
 
@@ -56,51 +58,84 @@ export class APIError extends OrbError {
56
58
 
57
59
  const type = error?.['type'];
58
60
 
59
- if (type === 'https://docs.withorb.com/reference/error-responses#400-constraint-violation') {
61
+ if (
62
+ type === 'https://docs.withorb.com/reference/error-responses#400-constraint-violation' &&
63
+ status === 400
64
+ ) {
60
65
  return new ConstraintViolation(status, error, message, headers);
61
66
  }
62
67
 
63
- if (type === 'https://docs.withorb.com/reference/error-responses#400-duplicate-resource-creation') {
68
+ if (
69
+ type === 'https://docs.withorb.com/reference/error-responses#400-duplicate-resource-creation' &&
70
+ status === 400
71
+ ) {
64
72
  return new DuplicateResourceCreation(status, error, message, headers);
65
73
  }
66
74
 
67
- if (type === 'https://docs.withorb.com/reference/error-responses#404-feature-not-available') {
75
+ if (
76
+ type === 'https://docs.withorb.com/reference/error-responses#404-feature-not-available' &&
77
+ status === 400
78
+ ) {
68
79
  return new FeatureNotAvailable(status, error, message, headers);
69
80
  }
70
81
 
71
- if (type === 'https://docs.withorb.com/reference/error-responses#400-request-validation-errors') {
82
+ if (
83
+ type === 'https://docs.withorb.com/reference/error-responses#400-request-validation-errors' &&
84
+ status === 400
85
+ ) {
72
86
  return new RequestValidationError(status, error, message, headers);
73
87
  }
74
88
 
75
- if (type === 'https://docs.withorb.com/reference/error-responses#401-authentication-error') {
89
+ if (
90
+ type === 'https://docs.withorb.com/reference/error-responses#401-authentication-error' &&
91
+ status === 401
92
+ ) {
76
93
  return new OrbAuthenticationError(status, error, message, headers);
77
94
  }
78
95
 
79
- if (type === 'https://docs.withorb.com/reference/error-responses#404-resource-not-found') {
96
+ if (
97
+ type === 'https://docs.withorb.com/reference/error-responses#404-resource-not-found' &&
98
+ status === 404
99
+ ) {
80
100
  return new ResourceNotFound(status, error, message, headers);
81
101
  }
82
102
 
83
- if (type === 'https://docs.withorb.com/reference/error-responses#404-url-not-found') {
103
+ if (type === 'https://docs.withorb.com/reference/error-responses#404-url-not-found' && status === 404) {
84
104
  return new URLNotFound(status, error, message, headers);
85
105
  }
86
106
 
87
- if (type === 'https://docs.withorb.com/reference/error-responses#409-resource-conflict') {
107
+ if (
108
+ type === 'https://docs.withorb.com/reference/error-responses#409-resource-conflict' &&
109
+ status === 409
110
+ ) {
88
111
  return new ResourceConflict(status, error, message, headers);
89
112
  }
90
113
 
91
- if (type === 'https://docs.withorb.com/reference/error-responses#413-request-too-large') {
114
+ if (
115
+ type === 'https://docs.withorb.com/reference/error-responses#413-request-too-large' &&
116
+ status === 413
117
+ ) {
92
118
  return new RequestTooLarge(status, error, message, headers);
93
119
  }
94
120
 
95
- if (type === 'https://docs.withorb.com/reference/error-responses#413-resource-too-large') {
121
+ if (
122
+ type === 'https://docs.withorb.com/reference/error-responses#413-resource-too-large' &&
123
+ status === 413
124
+ ) {
96
125
  return new ResourceTooLarge(status, error, message, headers);
97
126
  }
98
127
 
99
- if (type === 'https://docs.withorb.com/reference/error-responses#429-too-many-requests') {
128
+ if (
129
+ type === 'https://docs.withorb.com/reference/error-responses#429-too-many-requests' &&
130
+ status === 429
131
+ ) {
100
132
  return new TooManyRequests(status, error, message, headers);
101
133
  }
102
134
 
103
- if (type === 'https://docs.withorb.com/reference/error-responses#500-internal-server-error') {
135
+ if (
136
+ type === 'https://docs.withorb.com/reference/error-responses#500-internal-server-error' &&
137
+ status === 500
138
+ ) {
104
139
  return new OrbInternalServerError(status, error, message, headers);
105
140
  }
106
141
 
@@ -140,17 +175,13 @@ export class APIError extends OrbError {
140
175
  }
141
176
  }
142
177
 
143
- export class APIUserAbortError extends APIError {
144
- override readonly status: undefined = undefined;
145
-
178
+ export class APIUserAbortError extends APIError<undefined, undefined, undefined> {
146
179
  constructor({ message }: { message?: string } = {}) {
147
180
  super(undefined, undefined, message || 'Request was aborted.', undefined);
148
181
  }
149
182
  }
150
183
 
151
- export class APIConnectionError extends APIError {
152
- override readonly status: undefined = undefined;
153
-
184
+ export class APIConnectionError extends APIError<undefined, undefined, undefined> {
154
185
  constructor({ message, cause }: { message?: string | undefined; cause?: Error | undefined }) {
155
186
  super(undefined, undefined, message || 'Connection error.', undefined);
156
187
  // in some environments the 'cause' property is already declared
@@ -165,35 +196,21 @@ export class APIConnectionTimeoutError extends APIConnectionError {
165
196
  }
166
197
  }
167
198
 
168
- export class BadRequestError extends APIError {
169
- override readonly status: 400 = 400;
170
- }
199
+ export class BadRequestError extends APIError<400, Headers> {}
171
200
 
172
- export class AuthenticationError extends APIError {
173
- override readonly status: 401 = 401;
174
- }
201
+ export class AuthenticationError extends APIError<401, Headers> {}
175
202
 
176
- export class PermissionDeniedError extends APIError {
177
- override readonly status: 403 = 403;
178
- }
203
+ export class PermissionDeniedError extends APIError<403, Headers> {}
179
204
 
180
- export class NotFoundError extends APIError {
181
- override readonly status: 404 = 404;
182
- }
205
+ export class NotFoundError extends APIError<404, Headers> {}
183
206
 
184
- export class ConflictError extends APIError {
185
- override readonly status: 409 = 409;
186
- }
207
+ export class ConflictError extends APIError<409, Headers> {}
187
208
 
188
- export class UnprocessableEntityError extends APIError {
189
- override readonly status: 422 = 422;
190
- }
209
+ export class UnprocessableEntityError extends APIError<422, Headers> {}
191
210
 
192
- export class RateLimitError extends APIError {
193
- override readonly status: 429 = 429;
194
- }
211
+ export class RateLimitError extends APIError<429, Headers> {}
195
212
 
196
- export class InternalServerError extends APIError {}
213
+ export class InternalServerError extends APIError<number, Headers> {}
197
214
 
198
215
  export class ConstraintViolation extends BadRequestError {
199
216
  override status: 400;
@@ -204,12 +221,7 @@ export class ConstraintViolation extends BadRequestError {
204
221
 
205
222
  title?: string | null;
206
223
 
207
- constructor(
208
- status: number | undefined,
209
- error: Object | undefined,
210
- message: string | undefined,
211
- headers: Headers | undefined,
212
- ) {
224
+ constructor(status: 400, error: Object, message: string | undefined, headers: Headers) {
213
225
  const data = error as Record<string, any>;
214
226
  super(status, error, message, headers);
215
227
 
@@ -229,12 +241,7 @@ export class DuplicateResourceCreation extends BadRequestError {
229
241
 
230
242
  title?: string | null;
231
243
 
232
- constructor(
233
- status: number | undefined,
234
- error: Object | undefined,
235
- message: string | undefined,
236
- headers: Headers | undefined,
237
- ) {
244
+ constructor(status: 400, error: Object, message: string | undefined, headers: Headers) {
238
245
  const data = error as Record<string, any>;
239
246
  super(status, error, message, headers);
240
247
 
@@ -254,12 +261,7 @@ export class FeatureNotAvailable extends BadRequestError {
254
261
 
255
262
  title?: string | null;
256
263
 
257
- constructor(
258
- status: number | undefined,
259
- error: Object | undefined,
260
- message: string | undefined,
261
- headers: Headers | undefined,
262
- ) {
264
+ constructor(status: 400, error: Object, message: string | undefined, headers: Headers) {
263
265
  const data = error as Record<string, any>;
264
266
  super(status, error, message, headers);
265
267
 
@@ -281,12 +283,7 @@ export class RequestValidationError extends BadRequestError {
281
283
 
282
284
  title?: string | null;
283
285
 
284
- constructor(
285
- status: number | undefined,
286
- error: Object | undefined,
287
- message: string | undefined,
288
- headers: Headers | undefined,
289
- ) {
286
+ constructor(status: 400, error: Object, message: string | undefined, headers: Headers) {
290
287
  const data = error as Record<string, any>;
291
288
  super(status, error, message, headers);
292
289
 
@@ -307,12 +304,7 @@ export class OrbAuthenticationError extends AuthenticationError {
307
304
 
308
305
  title?: string | null;
309
306
 
310
- constructor(
311
- status: number | undefined,
312
- error: Object | undefined,
313
- message: string | undefined,
314
- headers: Headers | undefined,
315
- ) {
307
+ constructor(status: 401, error: Object, message: string | undefined, headers: Headers) {
316
308
  const data = error as Record<string, any>;
317
309
  super(status, error, message, headers);
318
310
 
@@ -332,12 +324,7 @@ export class ResourceNotFound extends NotFoundError {
332
324
 
333
325
  detail?: string | null;
334
326
 
335
- constructor(
336
- status: number | undefined,
337
- error: Object | undefined,
338
- message: string | undefined,
339
- headers: Headers | undefined,
340
- ) {
327
+ constructor(status: 404, error: Object, message: string | undefined, headers: Headers) {
341
328
  const data = error as Record<string, any>;
342
329
  super(status, error, message, headers);
343
330
 
@@ -357,12 +344,7 @@ export class URLNotFound extends NotFoundError {
357
344
 
358
345
  title?: string | null;
359
346
 
360
- constructor(
361
- status: number | undefined,
362
- error: Object | undefined,
363
- message: string | undefined,
364
- headers: Headers | undefined,
365
- ) {
347
+ constructor(status: 404, error: Object, message: string | undefined, headers: Headers) {
366
348
  const data = error as Record<string, any>;
367
349
  super(status, error, message, headers);
368
350
 
@@ -382,12 +364,7 @@ export class ResourceConflict extends ConflictError {
382
364
 
383
365
  title?: string | null;
384
366
 
385
- constructor(
386
- status: number | undefined,
387
- error: Object | undefined,
388
- message: string | undefined,
389
- headers: Headers | undefined,
390
- ) {
367
+ constructor(status: 409, error: Object, message: string | undefined, headers: Headers) {
391
368
  const data = error as Record<string, any>;
392
369
  super(status, error, message, headers);
393
370
 
@@ -407,12 +384,7 @@ export class RequestTooLarge extends APIError {
407
384
 
408
385
  title?: string | null;
409
386
 
410
- constructor(
411
- status: number | undefined,
412
- error: Object | undefined,
413
- message: string | undefined,
414
- headers: Headers | undefined,
415
- ) {
387
+ constructor(status: 413, error: Object, message: string | undefined, headers: Headers) {
416
388
  const data = error as Record<string, any>;
417
389
  super(status, error, message, headers);
418
390
 
@@ -432,12 +404,7 @@ export class ResourceTooLarge extends APIError {
432
404
 
433
405
  title?: string | null;
434
406
 
435
- constructor(
436
- status: number | undefined,
437
- error: Object | undefined,
438
- message: string | undefined,
439
- headers: Headers | undefined,
440
- ) {
407
+ constructor(status: 413, error: Object, message: string | undefined, headers: Headers) {
441
408
  const data = error as Record<string, any>;
442
409
  super(status, error, message, headers);
443
410
 
@@ -457,12 +424,7 @@ export class TooManyRequests extends RateLimitError {
457
424
 
458
425
  title?: string | null;
459
426
 
460
- constructor(
461
- status: number | undefined,
462
- error: Object | undefined,
463
- message: string | undefined,
464
- headers: Headers | undefined,
465
- ) {
427
+ constructor(status: 429, error: Object, message: string | undefined, headers: Headers) {
466
428
  const data = error as Record<string, any>;
467
429
  super(status, error, message, headers);
468
430
 
@@ -482,12 +444,7 @@ export class OrbInternalServerError extends InternalServerError {
482
444
 
483
445
  title?: string | null;
484
446
 
485
- constructor(
486
- status: number | undefined,
487
- error: Object | undefined,
488
- message: string | undefined,
489
- headers: Headers | undefined,
490
- ) {
447
+ constructor(status: 500, error: Object, message: string | undefined, headers: Headers) {
491
448
  const data = error as Record<string, any>;
492
449
  super(status, error, message, headers);
493
450