rehive 4.1.4 → 4.2.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 (237) hide show
  1. package/README.md +17 -0
  2. package/dist/admin.d.mts +514 -79
  3. package/dist/admin.d.ts +514 -79
  4. package/dist/admin.js +1 -1
  5. package/dist/admin.mjs +1 -1
  6. package/dist/auth.d.mts +2 -2
  7. package/dist/auth.d.ts +2 -2
  8. package/dist/auth.js +1 -1
  9. package/dist/auth.mjs +1 -1
  10. package/dist/{chunk-4WSHB6U6.mjs → chunk-A53KSFBA.mjs} +1 -1
  11. package/dist/chunk-CRNPJD3E.js +6 -0
  12. package/dist/{chunk-X6YDNXYV.js → chunk-HXAEBUQM.js} +1 -1
  13. package/dist/chunk-IJBXROTB.mjs +6 -0
  14. package/dist/chunk-OV77OD2G.js +1 -0
  15. package/dist/chunk-RO2QGTSG.mjs +1 -0
  16. package/dist/chunk-TAABJLJG.mjs +6 -0
  17. package/dist/chunk-Y33FT632.js +6 -0
  18. package/dist/{create-api-client-C-LEZku2.d.mts → create-api-client-Bkkri-AM.d.mts} +1 -1
  19. package/dist/{create-api-client-ebyTfhcm.d.ts → create-api-client-CgvKBlQ_.d.ts} +1 -1
  20. package/dist/{create-auth-DsnHpEf0.d.mts → create-auth-ChOASbvo.d.mts} +71 -54
  21. package/dist/{create-auth-DsnHpEf0.d.ts → create-auth-ChOASbvo.d.ts} +71 -54
  22. package/dist/extensions/alchemy.d.mts +174 -40
  23. package/dist/extensions/alchemy.d.ts +174 -40
  24. package/dist/extensions/alchemy.js +3 -4
  25. package/dist/extensions/alchemy.mjs +3 -4
  26. package/dist/extensions/app.d.mts +10 -9
  27. package/dist/extensions/app.d.ts +10 -9
  28. package/dist/extensions/app.js +5 -6
  29. package/dist/extensions/app.mjs +5 -6
  30. package/dist/extensions/billing.d.mts +10 -9
  31. package/dist/extensions/billing.d.ts +10 -9
  32. package/dist/extensions/billing.js +2 -3
  33. package/dist/extensions/billing.mjs +2 -3
  34. package/dist/extensions/bridge.d.mts +352 -27
  35. package/dist/extensions/bridge.d.ts +352 -27
  36. package/dist/extensions/bridge.js +5 -6
  37. package/dist/extensions/bridge.mjs +5 -6
  38. package/dist/extensions/builder.d.mts +7 -6
  39. package/dist/extensions/builder.d.ts +7 -6
  40. package/dist/extensions/builder.js +3 -4
  41. package/dist/extensions/builder.mjs +3 -4
  42. package/dist/extensions/business.d.mts +26 -25
  43. package/dist/extensions/business.d.ts +26 -25
  44. package/dist/extensions/business.js +2 -3
  45. package/dist/extensions/business.mjs +2 -3
  46. package/dist/extensions/conversion.d.mts +9 -8
  47. package/dist/extensions/conversion.d.ts +9 -8
  48. package/dist/extensions/conversion.js +2 -3
  49. package/dist/extensions/conversion.mjs +2 -3
  50. package/dist/extensions/mass-send.d.mts +7 -6
  51. package/dist/extensions/mass-send.d.ts +7 -6
  52. package/dist/extensions/mass-send.js +2 -3
  53. package/dist/extensions/mass-send.mjs +2 -3
  54. package/dist/extensions/notifications.d.mts +15 -14
  55. package/dist/extensions/notifications.d.ts +15 -14
  56. package/dist/extensions/notifications.js +3 -4
  57. package/dist/extensions/notifications.mjs +3 -4
  58. package/dist/extensions/payment-requests.d.mts +10 -9
  59. package/dist/extensions/payment-requests.d.ts +10 -9
  60. package/dist/extensions/payment-requests.js +3 -4
  61. package/dist/extensions/payment-requests.mjs +3 -4
  62. package/dist/extensions/products.d.mts +42 -41
  63. package/dist/extensions/products.d.ts +42 -41
  64. package/dist/extensions/products.js +2 -3
  65. package/dist/extensions/products.mjs +2 -3
  66. package/dist/extensions/rain.d.mts +21 -20
  67. package/dist/extensions/rain.d.ts +21 -20
  68. package/dist/extensions/rain.js +2 -3
  69. package/dist/extensions/rain.mjs +2 -3
  70. package/dist/extensions/rewards.d.mts +7 -6
  71. package/dist/extensions/rewards.d.ts +7 -6
  72. package/dist/extensions/rewards.js +3 -4
  73. package/dist/extensions/rewards.mjs +3 -4
  74. package/dist/extensions/stellar-testnet.d.mts +15 -14
  75. package/dist/extensions/stellar-testnet.d.ts +15 -14
  76. package/dist/extensions/stellar-testnet.js +2 -3
  77. package/dist/extensions/stellar-testnet.mjs +2 -3
  78. package/dist/extensions/stellar.d.mts +15 -14
  79. package/dist/extensions/stellar.d.ts +15 -14
  80. package/dist/extensions/stellar.js +2 -3
  81. package/dist/extensions/stellar.mjs +2 -3
  82. package/dist/index.d.mts +2 -2
  83. package/dist/index.d.ts +2 -2
  84. package/dist/index.js +1 -1
  85. package/dist/index.mjs +1 -1
  86. package/dist/react.d.mts +2 -2
  87. package/dist/react.d.ts +2 -2
  88. package/dist/react.js +1 -1
  89. package/dist/react.mjs +1 -1
  90. package/dist/user.d.mts +8 -7
  91. package/dist/user.d.ts +8 -7
  92. package/dist/user.js +1 -1
  93. package/dist/user.mjs +1 -1
  94. package/package.json +1 -1
  95. package/src/auth/create-auth.ts +17 -10
  96. package/src/extensions/alchemy/openapi-ts/client/client.gen.ts +12 -4
  97. package/src/extensions/alchemy/openapi-ts/client/types.gen.ts +2 -1
  98. package/src/extensions/alchemy/openapi-ts/client/utils.gen.ts +1 -1
  99. package/src/extensions/alchemy/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  100. package/src/extensions/alchemy/openapi-ts/core/types.gen.ts +1 -1
  101. package/src/extensions/alchemy/openapi-ts/core/utils.gen.ts +1 -1
  102. package/src/extensions/alchemy/openapi-ts/index.ts +2 -2
  103. package/src/extensions/alchemy/openapi-ts/sdk.gen.ts +44 -2
  104. package/src/extensions/alchemy/openapi-ts/types.gen.ts +177 -34
  105. package/src/extensions/app/openapi-ts/client/client.gen.ts +12 -4
  106. package/src/extensions/app/openapi-ts/client/types.gen.ts +2 -1
  107. package/src/extensions/app/openapi-ts/client/utils.gen.ts +1 -1
  108. package/src/extensions/app/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  109. package/src/extensions/app/openapi-ts/core/types.gen.ts +1 -1
  110. package/src/extensions/app/openapi-ts/core/utils.gen.ts +1 -1
  111. package/src/extensions/app/openapi-ts/sdk.gen.ts +1 -1
  112. package/src/extensions/app/openapi-ts/types.gen.ts +3 -3
  113. package/src/extensions/billing/openapi-ts/client/client.gen.ts +12 -4
  114. package/src/extensions/billing/openapi-ts/client/types.gen.ts +2 -1
  115. package/src/extensions/billing/openapi-ts/client/utils.gen.ts +1 -1
  116. package/src/extensions/billing/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  117. package/src/extensions/billing/openapi-ts/core/types.gen.ts +1 -1
  118. package/src/extensions/billing/openapi-ts/core/utils.gen.ts +1 -1
  119. package/src/extensions/billing/openapi-ts/sdk.gen.ts +1 -1
  120. package/src/extensions/billing/openapi-ts/types.gen.ts +3 -3
  121. package/src/extensions/bridge/openapi-ts/client/client.gen.ts +12 -4
  122. package/src/extensions/bridge/openapi-ts/client/types.gen.ts +2 -1
  123. package/src/extensions/bridge/openapi-ts/client/utils.gen.ts +1 -1
  124. package/src/extensions/bridge/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  125. package/src/extensions/bridge/openapi-ts/core/types.gen.ts +1 -1
  126. package/src/extensions/bridge/openapi-ts/core/utils.gen.ts +1 -1
  127. package/src/extensions/bridge/openapi-ts/index.ts +2 -2
  128. package/src/extensions/bridge/openapi-ts/sdk.gen.ts +48 -2
  129. package/src/extensions/bridge/openapi-ts/types.gen.ts +372 -19
  130. package/src/extensions/builder/openapi-ts/client/client.gen.ts +12 -4
  131. package/src/extensions/builder/openapi-ts/client/types.gen.ts +2 -1
  132. package/src/extensions/builder/openapi-ts/client/utils.gen.ts +1 -1
  133. package/src/extensions/builder/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  134. package/src/extensions/builder/openapi-ts/core/types.gen.ts +1 -1
  135. package/src/extensions/builder/openapi-ts/core/utils.gen.ts +1 -1
  136. package/src/extensions/builder/openapi-ts/sdk.gen.ts +1 -1
  137. package/src/extensions/business/openapi-ts/client/client.gen.ts +12 -4
  138. package/src/extensions/business/openapi-ts/client/types.gen.ts +2 -1
  139. package/src/extensions/business/openapi-ts/client/utils.gen.ts +1 -1
  140. package/src/extensions/business/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  141. package/src/extensions/business/openapi-ts/core/types.gen.ts +1 -1
  142. package/src/extensions/business/openapi-ts/core/utils.gen.ts +1 -1
  143. package/src/extensions/business/openapi-ts/sdk.gen.ts +1 -1
  144. package/src/extensions/business/openapi-ts/types.gen.ts +19 -19
  145. package/src/extensions/conversion/openapi-ts/client/client.gen.ts +12 -4
  146. package/src/extensions/conversion/openapi-ts/client/types.gen.ts +2 -1
  147. package/src/extensions/conversion/openapi-ts/client/utils.gen.ts +1 -1
  148. package/src/extensions/conversion/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  149. package/src/extensions/conversion/openapi-ts/core/types.gen.ts +1 -1
  150. package/src/extensions/conversion/openapi-ts/core/utils.gen.ts +1 -1
  151. package/src/extensions/conversion/openapi-ts/sdk.gen.ts +1 -1
  152. package/src/extensions/conversion/openapi-ts/types.gen.ts +2 -2
  153. package/src/extensions/mass-send/openapi-ts/client/client.gen.ts +12 -4
  154. package/src/extensions/mass-send/openapi-ts/client/types.gen.ts +2 -1
  155. package/src/extensions/mass-send/openapi-ts/client/utils.gen.ts +1 -1
  156. package/src/extensions/mass-send/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  157. package/src/extensions/mass-send/openapi-ts/core/types.gen.ts +1 -1
  158. package/src/extensions/mass-send/openapi-ts/core/utils.gen.ts +1 -1
  159. package/src/extensions/mass-send/openapi-ts/sdk.gen.ts +1 -1
  160. package/src/extensions/notifications/openapi-ts/client/client.gen.ts +12 -4
  161. package/src/extensions/notifications/openapi-ts/client/types.gen.ts +2 -1
  162. package/src/extensions/notifications/openapi-ts/client/utils.gen.ts +1 -1
  163. package/src/extensions/notifications/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  164. package/src/extensions/notifications/openapi-ts/core/types.gen.ts +1 -1
  165. package/src/extensions/notifications/openapi-ts/core/utils.gen.ts +1 -1
  166. package/src/extensions/notifications/openapi-ts/sdk.gen.ts +1 -1
  167. package/src/extensions/notifications/openapi-ts/types.gen.ts +8 -8
  168. package/src/extensions/payment-requests/openapi-ts/client/client.gen.ts +12 -4
  169. package/src/extensions/payment-requests/openapi-ts/client/types.gen.ts +2 -1
  170. package/src/extensions/payment-requests/openapi-ts/client/utils.gen.ts +1 -1
  171. package/src/extensions/payment-requests/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  172. package/src/extensions/payment-requests/openapi-ts/core/types.gen.ts +1 -1
  173. package/src/extensions/payment-requests/openapi-ts/core/utils.gen.ts +1 -1
  174. package/src/extensions/payment-requests/openapi-ts/sdk.gen.ts +1 -1
  175. package/src/extensions/payment-requests/openapi-ts/types.gen.ts +3 -3
  176. package/src/extensions/products/openapi-ts/client/client.gen.ts +12 -4
  177. package/src/extensions/products/openapi-ts/client/types.gen.ts +2 -1
  178. package/src/extensions/products/openapi-ts/client/utils.gen.ts +1 -1
  179. package/src/extensions/products/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  180. package/src/extensions/products/openapi-ts/core/types.gen.ts +1 -1
  181. package/src/extensions/products/openapi-ts/core/utils.gen.ts +1 -1
  182. package/src/extensions/products/openapi-ts/sdk.gen.ts +1 -1
  183. package/src/extensions/products/openapi-ts/types.gen.ts +35 -35
  184. package/src/extensions/rain/openapi-ts/client/client.gen.ts +12 -4
  185. package/src/extensions/rain/openapi-ts/client/types.gen.ts +2 -1
  186. package/src/extensions/rain/openapi-ts/client/utils.gen.ts +1 -1
  187. package/src/extensions/rain/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  188. package/src/extensions/rain/openapi-ts/core/types.gen.ts +1 -1
  189. package/src/extensions/rain/openapi-ts/core/utils.gen.ts +1 -1
  190. package/src/extensions/rain/openapi-ts/sdk.gen.ts +1 -1
  191. package/src/extensions/rain/openapi-ts/types.gen.ts +14 -14
  192. package/src/extensions/rewards/openapi-ts/client/client.gen.ts +12 -4
  193. package/src/extensions/rewards/openapi-ts/client/types.gen.ts +2 -1
  194. package/src/extensions/rewards/openapi-ts/client/utils.gen.ts +1 -1
  195. package/src/extensions/rewards/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  196. package/src/extensions/rewards/openapi-ts/core/types.gen.ts +1 -1
  197. package/src/extensions/rewards/openapi-ts/core/utils.gen.ts +1 -1
  198. package/src/extensions/rewards/openapi-ts/sdk.gen.ts +1 -1
  199. package/src/extensions/stellar/openapi-ts/client/client.gen.ts +12 -4
  200. package/src/extensions/stellar/openapi-ts/client/types.gen.ts +2 -1
  201. package/src/extensions/stellar/openapi-ts/client/utils.gen.ts +1 -1
  202. package/src/extensions/stellar/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  203. package/src/extensions/stellar/openapi-ts/core/types.gen.ts +1 -1
  204. package/src/extensions/stellar/openapi-ts/core/utils.gen.ts +1 -1
  205. package/src/extensions/stellar/openapi-ts/sdk.gen.ts +1 -1
  206. package/src/extensions/stellar/openapi-ts/types.gen.ts +8 -8
  207. package/src/extensions/stellar-testnet/openapi-ts/client/client.gen.ts +12 -4
  208. package/src/extensions/stellar-testnet/openapi-ts/client/types.gen.ts +2 -1
  209. package/src/extensions/stellar-testnet/openapi-ts/client/utils.gen.ts +1 -1
  210. package/src/extensions/stellar-testnet/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  211. package/src/extensions/stellar-testnet/openapi-ts/core/types.gen.ts +1 -1
  212. package/src/extensions/stellar-testnet/openapi-ts/core/utils.gen.ts +1 -1
  213. package/src/extensions/stellar-testnet/openapi-ts/sdk.gen.ts +1 -1
  214. package/src/extensions/stellar-testnet/openapi-ts/types.gen.ts +8 -8
  215. package/src/platform/admin/openapi-ts/client/client.gen.ts +12 -4
  216. package/src/platform/admin/openapi-ts/client/types.gen.ts +2 -1
  217. package/src/platform/admin/openapi-ts/client/utils.gen.ts +1 -1
  218. package/src/platform/admin/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  219. package/src/platform/admin/openapi-ts/core/types.gen.ts +1 -1
  220. package/src/platform/admin/openapi-ts/core/utils.gen.ts +1 -1
  221. package/src/platform/admin/openapi-ts/index.ts +2 -2
  222. package/src/platform/admin/openapi-ts/sdk.gen.ts +44 -2
  223. package/src/platform/admin/openapi-ts/types.gen.ts +524 -71
  224. package/src/platform/user/openapi-ts/client/client.gen.ts +12 -4
  225. package/src/platform/user/openapi-ts/client/types.gen.ts +2 -1
  226. package/src/platform/user/openapi-ts/client/utils.gen.ts +1 -1
  227. package/src/platform/user/openapi-ts/core/serverSentEvents.gen.ts +4 -5
  228. package/src/platform/user/openapi-ts/core/types.gen.ts +1 -1
  229. package/src/platform/user/openapi-ts/core/utils.gen.ts +1 -1
  230. package/src/platform/user/openapi-ts/sdk.gen.ts +1 -1
  231. package/src/platform/user/openapi-ts/types.gen.ts +69 -52
  232. package/dist/chunk-AVPKHYGS.js +0 -7
  233. package/dist/chunk-KUT5NSX7.mjs +0 -7
  234. package/dist/chunk-KZWBOQHZ.mjs +0 -7
  235. package/dist/chunk-PE6PG7ZE.js +0 -1
  236. package/dist/chunk-UYYU5OJ4.js +0 -7
  237. package/dist/chunk-Z7BUNKND.mjs +0 -1
@@ -93,6 +93,7 @@ export interface ResolvedRequestOptions<
93
93
  ThrowOnError extends boolean = boolean,
94
94
  Url extends string = string,
95
95
  > extends RequestOptions<unknown, TResponseStyle, ThrowOnError, Url> {
96
+ headers: Headers;
96
97
  serializedBody?: string;
97
98
  }
98
99
 
@@ -152,7 +153,7 @@ type SseFn = <
152
153
  ThrowOnError extends boolean = false,
153
154
  TResponseStyle extends ResponseStyle = 'data',
154
155
  >(
155
- options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'>,
156
+ options: Omit<RequestOptions<never, TResponseStyle, ThrowOnError>, 'method'>,
156
157
  ) => Promise<ServerSentEventsResult<TData, TError>>;
157
158
 
158
159
  type RequestFn = <
@@ -204,7 +204,7 @@ export const mergeHeaders = (
204
204
  mergedHeaders.append(key, v as string);
205
205
  }
206
206
  } else if (value !== undefined) {
207
- // assume object headers are meant to be JSON stringified, i.e. their
207
+ // assume object headers are meant to be JSON stringified, i.e., their
208
208
  // content value in OpenAPI specification is 'application/json'
209
209
  mergedHeaders.set(
210
210
  key,
@@ -79,7 +79,7 @@ export type ServerSentEventsResult<TData = unknown, TReturn = void, TNext = unkn
79
79
  >;
80
80
  };
81
81
 
82
- export const createSseClient = <TData = unknown>({
82
+ export function createSseClient<TData = unknown>({
83
83
  onRequest,
84
84
  onSseError,
85
85
  onSseEvent,
@@ -91,7 +91,7 @@ export const createSseClient = <TData = unknown>({
91
91
  sseSleepFn,
92
92
  url,
93
93
  ...options
94
- }: ServerSentEventsOptions): ServerSentEventsResult<TData> => {
94
+ }: ServerSentEventsOptions): ServerSentEventsResult<TData> {
95
95
  let lastEventId: string | undefined;
96
96
 
97
97
  const sleep = sseSleepFn ?? ((ms: number) => new Promise((resolve) => setTimeout(resolve, ms)));
@@ -155,8 +155,7 @@ export const createSseClient = <TData = unknown>({
155
155
  const { done, value } = await reader.read();
156
156
  if (done) break;
157
157
  buffer += value;
158
- // Normalize line endings: CRLF -> LF, then CR -> LF
159
- buffer = buffer.replace(/\r\n/g, '\n').replace(/\r/g, '\n');
158
+ buffer = buffer.replace(/\r\n?/g, '\n'); // normalize line endings
160
159
 
161
160
  const chunks = buffer.split('\n\n');
162
161
  buffer = chunks.pop() ?? '';
@@ -240,4 +239,4 @@ export const createSseClient = <TData = unknown>({
240
239
  const stream = createStream();
241
240
 
242
241
  return { stream };
243
- };
242
+ }
@@ -80,7 +80,7 @@ export interface Config {
80
80
  requestValidator?: (data: unknown) => Promise<unknown>;
81
81
  /**
82
82
  * A function transforming response data before it's returned. This is useful
83
- * for post-processing data, e.g. converting ISO strings into Date objects.
83
+ * for post-processing data, e.g., converting ISO strings into Date objects.
84
84
  */
85
85
  responseTransformer?: (data: unknown) => Promise<unknown>;
86
86
  /**
@@ -126,7 +126,7 @@ export function getValidRequestBody(options: {
126
126
  return hasSerializedBody ? options.serializedBody : null;
127
127
  }
128
128
 
129
- // not all clients implement a serializedBody property (i.e. client-axios)
129
+ // not all clients implement a serializedBody property (i.e., client-axios)
130
130
  return options.body !== '' ? options.body : null;
131
131
  }
132
132
 
@@ -4,7 +4,7 @@ import type { Client, Options as Options2, TDataShape } from './client';
4
4
  import { client } from './client.gen';
5
5
  import type { AdminBuildTasksCreateData, AdminBuildTasksCreateResponses, AdminBuildTasksListData, AdminBuildTasksListResponses, AdminBuildTasksRetrieveData, AdminBuildTasksRetrieveResponses, PublicTemplatesListData, PublicTemplatesListResponses, PublicTemplatesRetrieveData, PublicTemplatesRetrieveResponses } from './types.gen';
6
6
 
7
- export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
7
+ export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown> = Options2<TData, ThrowOnError, TResponse> & {
8
8
  /**
9
9
  * You can provide a client instance returned by `createClient()` instead of
10
10
  * individual options. This might be also useful if you want to implement a
@@ -31,7 +31,14 @@ export const createClient = (config: Config = {}): Client => {
31
31
 
32
32
  const interceptors = createInterceptors<Request, Response, unknown, ResolvedRequestOptions>();
33
33
 
34
- const beforeRequest = async (options: RequestOptions) => {
34
+ const beforeRequest = async <
35
+ TData = unknown,
36
+ TResponseStyle extends 'data' | 'fields' = 'fields',
37
+ ThrowOnError extends boolean = boolean,
38
+ Url extends string = string,
39
+ >(
40
+ options: RequestOptions<TData, TResponseStyle, ThrowOnError, Url>,
41
+ ) => {
35
42
  const opts = {
36
43
  ..._config,
37
44
  ...options,
@@ -60,13 +67,14 @@ export const createClient = (config: Config = {}): Client => {
60
67
  opts.headers.delete('Content-Type');
61
68
  }
62
69
 
63
- const url = buildUrl(opts);
70
+ const resolvedOpts = opts as typeof opts &
71
+ ResolvedRequestOptions<TResponseStyle, ThrowOnError, Url>;
72
+ const url = buildUrl(resolvedOpts);
64
73
 
65
- return { opts, url };
74
+ return { opts: resolvedOpts, url };
66
75
  };
67
76
 
68
77
  const request: Client['request'] = async (options) => {
69
- // @ts-expect-error
70
78
  const { opts, url } = await beforeRequest(options);
71
79
  const requestInit: ReqInit = {
72
80
  redirect: 'follow',
@@ -93,6 +93,7 @@ export interface ResolvedRequestOptions<
93
93
  ThrowOnError extends boolean = boolean,
94
94
  Url extends string = string,
95
95
  > extends RequestOptions<unknown, TResponseStyle, ThrowOnError, Url> {
96
+ headers: Headers;
96
97
  serializedBody?: string;
97
98
  }
98
99
 
@@ -152,7 +153,7 @@ type SseFn = <
152
153
  ThrowOnError extends boolean = false,
153
154
  TResponseStyle extends ResponseStyle = 'data',
154
155
  >(
155
- options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'>,
156
+ options: Omit<RequestOptions<never, TResponseStyle, ThrowOnError>, 'method'>,
156
157
  ) => Promise<ServerSentEventsResult<TData, TError>>;
157
158
 
158
159
  type RequestFn = <
@@ -204,7 +204,7 @@ export const mergeHeaders = (
204
204
  mergedHeaders.append(key, v as string);
205
205
  }
206
206
  } else if (value !== undefined) {
207
- // assume object headers are meant to be JSON stringified, i.e. their
207
+ // assume object headers are meant to be JSON stringified, i.e., their
208
208
  // content value in OpenAPI specification is 'application/json'
209
209
  mergedHeaders.set(
210
210
  key,
@@ -79,7 +79,7 @@ export type ServerSentEventsResult<TData = unknown, TReturn = void, TNext = unkn
79
79
  >;
80
80
  };
81
81
 
82
- export const createSseClient = <TData = unknown>({
82
+ export function createSseClient<TData = unknown>({
83
83
  onRequest,
84
84
  onSseError,
85
85
  onSseEvent,
@@ -91,7 +91,7 @@ export const createSseClient = <TData = unknown>({
91
91
  sseSleepFn,
92
92
  url,
93
93
  ...options
94
- }: ServerSentEventsOptions): ServerSentEventsResult<TData> => {
94
+ }: ServerSentEventsOptions): ServerSentEventsResult<TData> {
95
95
  let lastEventId: string | undefined;
96
96
 
97
97
  const sleep = sseSleepFn ?? ((ms: number) => new Promise((resolve) => setTimeout(resolve, ms)));
@@ -155,8 +155,7 @@ export const createSseClient = <TData = unknown>({
155
155
  const { done, value } = await reader.read();
156
156
  if (done) break;
157
157
  buffer += value;
158
- // Normalize line endings: CRLF -> LF, then CR -> LF
159
- buffer = buffer.replace(/\r\n/g, '\n').replace(/\r/g, '\n');
158
+ buffer = buffer.replace(/\r\n?/g, '\n'); // normalize line endings
160
159
 
161
160
  const chunks = buffer.split('\n\n');
162
161
  buffer = chunks.pop() ?? '';
@@ -240,4 +239,4 @@ export const createSseClient = <TData = unknown>({
240
239
  const stream = createStream();
241
240
 
242
241
  return { stream };
243
- };
242
+ }
@@ -80,7 +80,7 @@ export interface Config {
80
80
  requestValidator?: (data: unknown) => Promise<unknown>;
81
81
  /**
82
82
  * A function transforming response data before it's returned. This is useful
83
- * for post-processing data, e.g. converting ISO strings into Date objects.
83
+ * for post-processing data, e.g., converting ISO strings into Date objects.
84
84
  */
85
85
  responseTransformer?: (data: unknown) => Promise<unknown>;
86
86
  /**
@@ -126,7 +126,7 @@ export function getValidRequestBody(options: {
126
126
  return hasSerializedBody ? options.serializedBody : null;
127
127
  }
128
128
 
129
- // not all clients implement a serializedBody property (i.e. client-axios)
129
+ // not all clients implement a serializedBody property (i.e., client-axios)
130
130
  return options.body !== '' ? options.body : null;
131
131
  }
132
132
 
@@ -4,7 +4,7 @@ import type { Client, Options as Options2, TDataShape } from './client';
4
4
  import { client } from './client.gen';
5
5
  import type { ActivateCreateData, ActivateCreateResponses, AdminBusinessCategoriesCreateData, AdminBusinessCategoriesCreateResponses, AdminBusinessCategoriesDestroyData, AdminBusinessCategoriesDestroyResponses, AdminBusinessCategoriesListData, AdminBusinessCategoriesListResponses, AdminBusinessCategoriesPartialUpdateData, AdminBusinessCategoriesPartialUpdateResponses, AdminBusinessCategoriesRetrieveData, AdminBusinessCategoriesRetrieveResponses, AdminBusinessCategoriesUpdateData, AdminBusinessCategoriesUpdateResponses, AdminBusinessesCategoriesCreateData, AdminBusinessesCategoriesCreateResponses, AdminBusinessesCategoriesDestroyData, AdminBusinessesCategoriesDestroyResponses, AdminBusinessesCategoriesListData, AdminBusinessesCategoriesListResponses, AdminBusinessesCategoriesRetrieveData, AdminBusinessesCategoriesRetrieveResponses, AdminBusinessesDocumentsCreateData, AdminBusinessesDocumentsCreateResponses, AdminBusinessesDocumentsDestroyData, AdminBusinessesDocumentsDestroyResponses, AdminBusinessesDocumentsListData, AdminBusinessesDocumentsListResponses, AdminBusinessesDocumentsPartialUpdateData, AdminBusinessesDocumentsPartialUpdateResponses, AdminBusinessesDocumentsRetrieveData, AdminBusinessesDocumentsRetrieveResponses, AdminBusinessesDocumentsUpdateData, AdminBusinessesDocumentsUpdateResponses, AdminBusinessesListData, AdminBusinessesListResponses, AdminBusinessesPartialUpdateData, AdminBusinessesPartialUpdateResponses, AdminBusinessesPayoutsCreateData, AdminBusinessesPayoutsCreateResponses, AdminBusinessesPayoutsListData, AdminBusinessesPayoutsListResponses, AdminBusinessesPayoutsRetrieveData, AdminBusinessesPayoutsRetrieveResponses, AdminBusinessesPayoutsTransactionsListData, AdminBusinessesPayoutsTransactionsListResponses, AdminBusinessesRetrieveData, AdminBusinessesRetrieveResponses, AdminBusinessesUpdateData, AdminBusinessesUpdateResponses, AdminBusinessUsersCreateData, AdminBusinessUsersCreateResponses, AdminBusinessUsersListData, AdminBusinessUsersListResponses, AdminBusinessUsersPartialUpdateData, AdminBusinessUsersPartialUpdateResponses, AdminBusinessUsersRetrieveData, AdminBusinessUsersRetrieveResponses, AdminBusinessUsersUpdateData, AdminBusinessUsersUpdateResponses, AdminCompanyPartialUpdateData, AdminCompanyPartialUpdateResponses, AdminCompanyRetrieveData, AdminCompanyRetrieveResponses, AdminCompanyUpdateData, AdminCompanyUpdateResponses, AdminCurrenciesListData, AdminCurrenciesListResponses, AdminCurrenciesRetrieveData, AdminCurrenciesRetrieveResponses, AdminWebhookCreateData, AdminWebhookCreateResponses, CustomerBusinessesListData, CustomerBusinessesListResponses, CustomerBusinessesRetrieveData, CustomerBusinessesRetrieveResponses, CustomerEnrollCreateData, CustomerEnrollCreateResponses, DeactivateCreateData, DeactivateCreateResponses, ManagerBusinessCategoriesListData, ManagerBusinessCategoriesListResponses, ManagerBusinessCategoriesRetrieveData, ManagerBusinessCategoriesRetrieveResponses, ManagerBusinessesCategoriesCreateData, ManagerBusinessesCategoriesCreateResponses, ManagerBusinessesCategoriesDestroyData, ManagerBusinessesCategoriesDestroyResponses, ManagerBusinessesCategoriesListData, ManagerBusinessesCategoriesListResponses, ManagerBusinessesCategoriesRetrieveData, ManagerBusinessesCategoriesRetrieveResponses, ManagerBusinessesCreateData, ManagerBusinessesCreateResponses, ManagerBusinessesDocumentsCreateData, ManagerBusinessesDocumentsCreateResponses, ManagerBusinessesDocumentsListData, ManagerBusinessesDocumentsListResponses, ManagerBusinessesDocumentsRetrieveData, ManagerBusinessesDocumentsRetrieveResponses, ManagerBusinessesInvoicesCreateData, ManagerBusinessesInvoicesCreateResponses, ManagerBusinessesInvoicesListData, ManagerBusinessesInvoicesListResponses, ManagerBusinessesInvoicesLogsListData, ManagerBusinessesInvoicesLogsListResponses, ManagerBusinessesInvoicesPartialUpdateData, ManagerBusinessesInvoicesPartialUpdateResponses, ManagerBusinessesInvoicesRefundsCreateData, ManagerBusinessesInvoicesRefundsCreateResponses, ManagerBusinessesInvoicesRefundsListData, ManagerBusinessesInvoicesRefundsListResponses, ManagerBusinessesInvoicesRetrieveData, ManagerBusinessesInvoicesRetrieveResponses, ManagerBusinessesInvoicesTransactionsListData, ManagerBusinessesInvoicesTransactionsListResponses, ManagerBusinessesInvoicesUpdateData, ManagerBusinessesInvoicesUpdateResponses, ManagerBusinessesListData, ManagerBusinessesListResponses, ManagerBusinessesMetricsListData, ManagerBusinessesMetricsListResponses, ManagerBusinessesMetricsPointsListData, ManagerBusinessesMetricsPointsListResponses, ManagerBusinessesMetricsRetrieveData, ManagerBusinessesMetricsRetrieveResponses, ManagerBusinessesPartialUpdateData, ManagerBusinessesPartialUpdateResponses, ManagerBusinessesPayoutsCreateData, ManagerBusinessesPayoutsCreateResponses, ManagerBusinessesPayoutsListData, ManagerBusinessesPayoutsListResponses, ManagerBusinessesPayoutsRetrieveData, ManagerBusinessesPayoutsRetrieveResponses, ManagerBusinessesPayoutsTransactionsListData, ManagerBusinessesPayoutsTransactionsListResponses, ManagerBusinessesRetrieveData, ManagerBusinessesRetrieveResponses, ManagerBusinessesTransactionsListData, ManagerBusinessesTransactionsListResponses, ManagerBusinessesTransactionsRetrieveData, ManagerBusinessesTransactionsRetrieveResponses, ManagerBusinessesUpdateData, ManagerBusinessesUpdateResponses, ManagerBusinessesUsersCreateData, ManagerBusinessesUsersCreateResponses, ManagerBusinessesUsersListData, ManagerBusinessesUsersListResponses, ManagerBusinessesUsersPartialUpdateData, ManagerBusinessesUsersPartialUpdateResponses, ManagerBusinessesUsersRetrieveData, ManagerBusinessesUsersRetrieveResponses, ManagerBusinessesUsersUpdateData, ManagerBusinessesUsersUpdateResponses, ManagerCompanyRetrieveData, ManagerCompanyRetrieveResponses, UserBusinessCategoriesListData, UserBusinessCategoriesListResponses, UserBusinessCategoriesRetrieveData, UserBusinessCategoriesRetrieveResponses, UserBusinessesListData, UserBusinessesListResponses, UserBusinessesRetrieveData, UserBusinessesRetrieveResponses, UserCompanyRetrieveData, UserCompanyRetrieveResponses, WebhookCreateData, WebhookCreateResponses } from './types.gen';
6
6
 
7
- export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
7
+ export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown> = Options2<TData, ThrowOnError, TResponse> & {
8
8
  /**
9
9
  * You can provide a client instance returned by `createClient()` instead of
10
10
  * individual options. This might be also useful if you want to implement a
@@ -306,7 +306,7 @@ export type AdminBusiness = {
306
306
  * * `incomplete` - incomplete
307
307
  * * `verified` - verified
308
308
  */
309
- status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
309
+ readonly status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
310
310
  metadata?: {
311
311
  [key: string]: unknown;
312
312
  } | null;
@@ -327,7 +327,7 @@ export type AdminBusinessAutomatedPayoutDestination = {
327
327
  * * `bank` - bank
328
328
  * * `bitcoin` - bitcoin
329
329
  */
330
- type: 'native' | 'bank' | 'bitcoin';
330
+ readonly type: 'native' | 'bank' | 'bitcoin';
331
331
  readonly percentage: number;
332
332
  readonly account: string | null;
333
333
  readonly bitcoin_account: string | null;
@@ -371,7 +371,7 @@ export type AdminBusinessDocument = {
371
371
  * * `trade_certificate` - trade_certificate
372
372
  * * `shareholder_identification` - shareholder_identification
373
373
  */
374
- type: 'incorporation_certificate' | 'tax_certificate' | 'financial_statement' | 'trade_certificate' | 'shareholder_identification';
374
+ readonly type: 'incorporation_certificate' | 'tax_certificate' | 'financial_statement' | 'trade_certificate' | 'shareholder_identification';
375
375
  /**
376
376
  * * `obsolete` - obsolete
377
377
  * * `declined` - declined
@@ -411,7 +411,7 @@ export type AdminBusinessPayout = {
411
411
  * * `complete` - complete
412
412
  * * `quarantined` - quarantined
413
413
  */
414
- status: 'queued' | 'processing' | 'failed' | 'complete' | 'quarantined';
414
+ readonly status: 'queued' | 'processing' | 'failed' | 'complete' | 'quarantined';
415
415
  currency: Currency;
416
416
  readonly amount: number;
417
417
  readonly destinations: Array<AdminBusinessPayoutDestination>;
@@ -433,7 +433,7 @@ export type AdminBusinessPayoutDestination = {
433
433
  * * `bank` - bank
434
434
  * * `bitcoin` - bitcoin
435
435
  */
436
- type: 'native' | 'bank' | 'bitcoin';
436
+ readonly type: 'native' | 'bank' | 'bitcoin';
437
437
  readonly percentage: number;
438
438
  readonly account: string | null;
439
439
  readonly bitcoin_account: string | null;
@@ -590,7 +590,7 @@ export type AdminCreateBusinessPayout = {
590
590
  * * `complete` - complete
591
591
  * * `quarantined` - quarantined
592
592
  */
593
- status: 'queued' | 'processing' | 'failed' | 'complete' | 'quarantined';
593
+ readonly status: 'queued' | 'processing' | 'failed' | 'complete' | 'quarantined';
594
594
  readonly amount: number;
595
595
  destinations?: Array<AdminCreateBusinessPayoutDestination>;
596
596
  };
@@ -1675,7 +1675,7 @@ export type ManagerBusiness = {
1675
1675
  * * `incomplete` - incomplete
1676
1676
  * * `verified` - verified
1677
1677
  */
1678
- status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
1678
+ readonly status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
1679
1679
  metadata?: {
1680
1680
  [key: string]: unknown;
1681
1681
  } | null;
@@ -1696,7 +1696,7 @@ export type ManagerBusinessAutomatedPayoutDestination = {
1696
1696
  * * `bank` - bank
1697
1697
  * * `bitcoin` - bitcoin
1698
1698
  */
1699
- type: 'native' | 'bank' | 'bitcoin';
1699
+ readonly type: 'native' | 'bank' | 'bitcoin';
1700
1700
  readonly percentage: number;
1701
1701
  readonly account: string | null;
1702
1702
  readonly bitcoin_account: string | null;
@@ -1719,7 +1719,7 @@ export type ManagerBusinessDocument = {
1719
1719
  * * `trade_certificate` - trade_certificate
1720
1720
  * * `shareholder_identification` - shareholder_identification
1721
1721
  */
1722
- type: 'incorporation_certificate' | 'tax_certificate' | 'financial_statement' | 'trade_certificate' | 'shareholder_identification';
1722
+ readonly type: 'incorporation_certificate' | 'tax_certificate' | 'financial_statement' | 'trade_certificate' | 'shareholder_identification';
1723
1723
  /**
1724
1724
  * * `obsolete` - obsolete
1725
1725
  * * `declined` - declined
@@ -1728,7 +1728,7 @@ export type ManagerBusinessDocument = {
1728
1728
  * * `incomplete` - incomplete
1729
1729
  * * `verified` - verified
1730
1730
  */
1731
- status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
1731
+ readonly status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
1732
1732
  metadata?: {
1733
1733
  [key: string]: unknown;
1734
1734
  } | null;
@@ -1864,7 +1864,7 @@ export type ManagerBusinessPayout = {
1864
1864
  * * `complete` - complete
1865
1865
  * * `quarantined` - quarantined
1866
1866
  */
1867
- status: 'queued' | 'processing' | 'failed' | 'complete' | 'quarantined';
1867
+ readonly status: 'queued' | 'processing' | 'failed' | 'complete' | 'quarantined';
1868
1868
  currency: Currency;
1869
1869
  readonly amount: number;
1870
1870
  readonly destinations: Array<ManagerBusinessPayoutDestination>;
@@ -1886,7 +1886,7 @@ export type ManagerBusinessPayoutDestination = {
1886
1886
  * * `bank` - bank
1887
1887
  * * `bitcoin` - bitcoin
1888
1888
  */
1889
- type: 'native' | 'bank' | 'bitcoin';
1889
+ readonly type: 'native' | 'bank' | 'bitcoin';
1890
1890
  readonly percentage: number;
1891
1891
  readonly account: string | null;
1892
1892
  readonly bitcoin_account: string | null;
@@ -2285,7 +2285,7 @@ export type ManagerCreateBusiness = {
2285
2285
  * * `incomplete` - incomplete
2286
2286
  * * `verified` - verified
2287
2287
  */
2288
- status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
2288
+ readonly status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
2289
2289
  metadata?: {
2290
2290
  [key: string]: unknown;
2291
2291
  } | null;
@@ -2318,7 +2318,7 @@ export type ManagerCreateBusinessDocument = {
2318
2318
  * * `incomplete` - incomplete
2319
2319
  * * `verified` - verified
2320
2320
  */
2321
- status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
2321
+ readonly status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
2322
2322
  metadata?: {
2323
2323
  [key: string]: unknown;
2324
2324
  } | null;
@@ -2400,7 +2400,7 @@ export type ManagerCreateBusinessPayout = {
2400
2400
  * * `complete` - complete
2401
2401
  * * `quarantined` - quarantined
2402
2402
  */
2403
- status: 'queued' | 'processing' | 'failed' | 'complete' | 'quarantined';
2403
+ readonly status: 'queued' | 'processing' | 'failed' | 'complete' | 'quarantined';
2404
2404
  readonly amount: number;
2405
2405
  destinations?: Array<ManagerCreateBusinessPayoutDestination>;
2406
2406
  };
@@ -2756,7 +2756,7 @@ export type ManagerUpdateBusiness = {
2756
2756
  * * `incomplete` - incomplete
2757
2757
  * * `verified` - verified
2758
2758
  */
2759
- status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
2759
+ readonly status: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
2760
2760
  metadata?: {
2761
2761
  [key: string]: unknown;
2762
2762
  } | null;
@@ -3108,7 +3108,7 @@ export type PatchedAdminBusinessDocument = {
3108
3108
  * * `trade_certificate` - trade_certificate
3109
3109
  * * `shareholder_identification` - shareholder_identification
3110
3110
  */
3111
- type?: 'incorporation_certificate' | 'tax_certificate' | 'financial_statement' | 'trade_certificate' | 'shareholder_identification';
3111
+ readonly type?: 'incorporation_certificate' | 'tax_certificate' | 'financial_statement' | 'trade_certificate' | 'shareholder_identification';
3112
3112
  /**
3113
3113
  * * `obsolete` - obsolete
3114
3114
  * * `declined` - declined
@@ -3739,7 +3739,7 @@ export type PatchedManagerUpdateBusiness = {
3739
3739
  * * `incomplete` - incomplete
3740
3740
  * * `verified` - verified
3741
3741
  */
3742
- status?: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
3742
+ readonly status?: 'obsolete' | 'declined' | 'pending' | 'paused' | 'incomplete' | 'verified';
3743
3743
  metadata?: {
3744
3744
  [key: string]: unknown;
3745
3745
  } | null;
@@ -4097,7 +4097,7 @@ export type UserBusiness = {
4097
4097
  * * `ZM` - Zambia
4098
4098
  * * `ZW` - Zimbabwe
4099
4099
  */
4100
- address_country: 'AF' | 'AX' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BQ' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'CV' | 'KH' | 'CM' | 'CA' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CD' | 'CK' | 'CR' | 'CI' | 'HR' | 'CU' | 'CW' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'SZ' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'MK' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'BL' | 'SH' | 'KN' | 'LC' | 'MF' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SX' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SE' | 'CH' | 'SY' | 'TW' | 'TJ' | 'TZ' | 'TH' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'GB' | 'UM' | 'US' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'ZM' | 'ZW' | null;
4100
+ readonly address_country: 'AF' | 'AX' | 'AL' | 'DZ' | 'AS' | 'AD' | 'AO' | 'AI' | 'AQ' | 'AG' | 'AR' | 'AM' | 'AW' | 'AU' | 'AT' | 'AZ' | 'BS' | 'BH' | 'BD' | 'BB' | 'BY' | 'BE' | 'BZ' | 'BJ' | 'BM' | 'BT' | 'BO' | 'BQ' | 'BA' | 'BW' | 'BV' | 'BR' | 'IO' | 'BN' | 'BG' | 'BF' | 'BI' | 'CV' | 'KH' | 'CM' | 'CA' | 'KY' | 'CF' | 'TD' | 'CL' | 'CN' | 'CX' | 'CC' | 'CO' | 'KM' | 'CG' | 'CD' | 'CK' | 'CR' | 'CI' | 'HR' | 'CU' | 'CW' | 'CY' | 'CZ' | 'DK' | 'DJ' | 'DM' | 'DO' | 'EC' | 'EG' | 'SV' | 'GQ' | 'ER' | 'EE' | 'SZ' | 'ET' | 'FK' | 'FO' | 'FJ' | 'FI' | 'FR' | 'GF' | 'PF' | 'TF' | 'GA' | 'GM' | 'GE' | 'DE' | 'GH' | 'GI' | 'GR' | 'GL' | 'GD' | 'GP' | 'GU' | 'GT' | 'GG' | 'GN' | 'GW' | 'GY' | 'HT' | 'HM' | 'VA' | 'HN' | 'HK' | 'HU' | 'IS' | 'IN' | 'ID' | 'IR' | 'IQ' | 'IE' | 'IM' | 'IL' | 'IT' | 'JM' | 'JP' | 'JE' | 'JO' | 'KZ' | 'KE' | 'KI' | 'KW' | 'KG' | 'LA' | 'LV' | 'LB' | 'LS' | 'LR' | 'LY' | 'LI' | 'LT' | 'LU' | 'MO' | 'MG' | 'MW' | 'MY' | 'MV' | 'ML' | 'MT' | 'MH' | 'MQ' | 'MR' | 'MU' | 'YT' | 'MX' | 'FM' | 'MD' | 'MC' | 'MN' | 'ME' | 'MS' | 'MA' | 'MZ' | 'MM' | 'NA' | 'NR' | 'NP' | 'NL' | 'NC' | 'NZ' | 'NI' | 'NE' | 'NG' | 'NU' | 'NF' | 'KP' | 'MK' | 'MP' | 'NO' | 'OM' | 'PK' | 'PW' | 'PS' | 'PA' | 'PG' | 'PY' | 'PE' | 'PH' | 'PN' | 'PL' | 'PT' | 'PR' | 'QA' | 'RE' | 'RO' | 'RU' | 'RW' | 'BL' | 'SH' | 'KN' | 'LC' | 'MF' | 'PM' | 'VC' | 'WS' | 'SM' | 'ST' | 'SA' | 'SN' | 'RS' | 'SC' | 'SL' | 'SG' | 'SX' | 'SK' | 'SI' | 'SB' | 'SO' | 'ZA' | 'GS' | 'KR' | 'SS' | 'ES' | 'LK' | 'SD' | 'SR' | 'SJ' | 'SE' | 'CH' | 'SY' | 'TW' | 'TJ' | 'TZ' | 'TH' | 'TL' | 'TG' | 'TK' | 'TO' | 'TT' | 'TN' | 'TR' | 'TM' | 'TC' | 'TV' | 'UG' | 'UA' | 'AE' | 'GB' | 'UM' | 'US' | 'UY' | 'UZ' | 'VU' | 'VE' | 'VN' | 'VG' | 'VI' | 'WF' | 'EH' | 'YE' | 'ZM' | 'ZW' | null;
4101
4101
  readonly address_postal_code: string | null;
4102
4102
  readonly metadata: {
4103
4103
  [key: string]: unknown;
@@ -31,7 +31,14 @@ export const createClient = (config: Config = {}): Client => {
31
31
 
32
32
  const interceptors = createInterceptors<Request, Response, unknown, ResolvedRequestOptions>();
33
33
 
34
- const beforeRequest = async (options: RequestOptions) => {
34
+ const beforeRequest = async <
35
+ TData = unknown,
36
+ TResponseStyle extends 'data' | 'fields' = 'fields',
37
+ ThrowOnError extends boolean = boolean,
38
+ Url extends string = string,
39
+ >(
40
+ options: RequestOptions<TData, TResponseStyle, ThrowOnError, Url>,
41
+ ) => {
35
42
  const opts = {
36
43
  ..._config,
37
44
  ...options,
@@ -60,13 +67,14 @@ export const createClient = (config: Config = {}): Client => {
60
67
  opts.headers.delete('Content-Type');
61
68
  }
62
69
 
63
- const url = buildUrl(opts);
70
+ const resolvedOpts = opts as typeof opts &
71
+ ResolvedRequestOptions<TResponseStyle, ThrowOnError, Url>;
72
+ const url = buildUrl(resolvedOpts);
64
73
 
65
- return { opts, url };
74
+ return { opts: resolvedOpts, url };
66
75
  };
67
76
 
68
77
  const request: Client['request'] = async (options) => {
69
- // @ts-expect-error
70
78
  const { opts, url } = await beforeRequest(options);
71
79
  const requestInit: ReqInit = {
72
80
  redirect: 'follow',
@@ -93,6 +93,7 @@ export interface ResolvedRequestOptions<
93
93
  ThrowOnError extends boolean = boolean,
94
94
  Url extends string = string,
95
95
  > extends RequestOptions<unknown, TResponseStyle, ThrowOnError, Url> {
96
+ headers: Headers;
96
97
  serializedBody?: string;
97
98
  }
98
99
 
@@ -152,7 +153,7 @@ type SseFn = <
152
153
  ThrowOnError extends boolean = false,
153
154
  TResponseStyle extends ResponseStyle = 'data',
154
155
  >(
155
- options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'>,
156
+ options: Omit<RequestOptions<never, TResponseStyle, ThrowOnError>, 'method'>,
156
157
  ) => Promise<ServerSentEventsResult<TData, TError>>;
157
158
 
158
159
  type RequestFn = <
@@ -204,7 +204,7 @@ export const mergeHeaders = (
204
204
  mergedHeaders.append(key, v as string);
205
205
  }
206
206
  } else if (value !== undefined) {
207
- // assume object headers are meant to be JSON stringified, i.e. their
207
+ // assume object headers are meant to be JSON stringified, i.e., their
208
208
  // content value in OpenAPI specification is 'application/json'
209
209
  mergedHeaders.set(
210
210
  key,
@@ -79,7 +79,7 @@ export type ServerSentEventsResult<TData = unknown, TReturn = void, TNext = unkn
79
79
  >;
80
80
  };
81
81
 
82
- export const createSseClient = <TData = unknown>({
82
+ export function createSseClient<TData = unknown>({
83
83
  onRequest,
84
84
  onSseError,
85
85
  onSseEvent,
@@ -91,7 +91,7 @@ export const createSseClient = <TData = unknown>({
91
91
  sseSleepFn,
92
92
  url,
93
93
  ...options
94
- }: ServerSentEventsOptions): ServerSentEventsResult<TData> => {
94
+ }: ServerSentEventsOptions): ServerSentEventsResult<TData> {
95
95
  let lastEventId: string | undefined;
96
96
 
97
97
  const sleep = sseSleepFn ?? ((ms: number) => new Promise((resolve) => setTimeout(resolve, ms)));
@@ -155,8 +155,7 @@ export const createSseClient = <TData = unknown>({
155
155
  const { done, value } = await reader.read();
156
156
  if (done) break;
157
157
  buffer += value;
158
- // Normalize line endings: CRLF -> LF, then CR -> LF
159
- buffer = buffer.replace(/\r\n/g, '\n').replace(/\r/g, '\n');
158
+ buffer = buffer.replace(/\r\n?/g, '\n'); // normalize line endings
160
159
 
161
160
  const chunks = buffer.split('\n\n');
162
161
  buffer = chunks.pop() ?? '';
@@ -240,4 +239,4 @@ export const createSseClient = <TData = unknown>({
240
239
  const stream = createStream();
241
240
 
242
241
  return { stream };
243
- };
242
+ }
@@ -80,7 +80,7 @@ export interface Config {
80
80
  requestValidator?: (data: unknown) => Promise<unknown>;
81
81
  /**
82
82
  * A function transforming response data before it's returned. This is useful
83
- * for post-processing data, e.g. converting ISO strings into Date objects.
83
+ * for post-processing data, e.g., converting ISO strings into Date objects.
84
84
  */
85
85
  responseTransformer?: (data: unknown) => Promise<unknown>;
86
86
  /**
@@ -126,7 +126,7 @@ export function getValidRequestBody(options: {
126
126
  return hasSerializedBody ? options.serializedBody : null;
127
127
  }
128
128
 
129
- // not all clients implement a serializedBody property (i.e. client-axios)
129
+ // not all clients implement a serializedBody property (i.e., client-axios)
130
130
  return options.body !== '' ? options.body : null;
131
131
  }
132
132
 
@@ -4,7 +4,7 @@ import type { Client, Options as Options2, TDataShape } from './client';
4
4
  import { client } from './client.gen';
5
5
  import type { ActivateCreateData, ActivateCreateResponses, AdminCompanyPartialUpdateData, AdminCompanyPartialUpdateResponses, AdminCompanyRetrieveData, AdminCompanyRetrieveResponses, AdminCompanyUpdateData, AdminCompanyUpdateResponses, AdminConversionPairsCreateData, AdminConversionPairsCreateResponses, AdminConversionPairsDestroyData, AdminConversionPairsDestroyResponses, AdminConversionPairsListData, AdminConversionPairsListResponses, AdminConversionPairsPartialUpdateData, AdminConversionPairsPartialUpdateResponses, AdminConversionPairsRetrieveData, AdminConversionPairsRetrieveResponses, AdminConversionPairsUpdateData, AdminConversionPairsUpdateResponses, AdminConversionsCreateData, AdminConversionsCreateResponses, AdminConversionsListData, AdminConversionsListResponses, AdminConversionsPartialUpdateData, AdminConversionsPartialUpdateResponses, AdminConversionsRetrieveData, AdminConversionsRetrieveResponses, AdminConversionsUpdateData, AdminConversionsUpdateResponses, AdminCurrenciesCreateData, AdminCurrenciesCreateResponses, AdminCurrenciesListData, AdminCurrenciesListResponses, AdminCurrenciesPartialUpdateData, AdminCurrenciesPartialUpdateResponses, AdminCurrenciesRetrieveData, AdminCurrenciesRetrieveResponses, AdminCurrenciesUpdateData, AdminCurrenciesUpdateResponses, AdminIntegrationsCreateData, AdminIntegrationsCreateResponses, AdminIntegrationsDestroyData, AdminIntegrationsDestroyResponses, AdminIntegrationsListData, AdminIntegrationsListResponses, AdminIntegrationsPartialUpdateData, AdminIntegrationsPartialUpdateResponses, AdminIntegrationsRetrieveData, AdminIntegrationsRetrieveResponses, AdminIntegrationsUpdateData, AdminIntegrationsUpdateResponses, AdminIntegrationsWebhooksCreateData, AdminIntegrationsWebhooksCreateResponses, AdminIntegrationsWebhooksDestroyData, AdminIntegrationsWebhooksDestroyResponses, AdminIntegrationsWebhooksListData, AdminIntegrationsWebhooksListResponses, AdminIntegrationsWebhooksPartialUpdateData, AdminIntegrationsWebhooksPartialUpdateResponses, AdminIntegrationsWebhooksRetrieveData, AdminIntegrationsWebhooksRetrieveResponses, AdminIntegrationsWebhooksUpdateData, AdminIntegrationsWebhooksUpdateResponses, AdminRatePairsCreateData, AdminRatePairsCreateResponses, AdminRatePairsDestroyData, AdminRatePairsDestroyResponses, AdminRatePairsListData, AdminRatePairsListResponses, AdminRatePairsPartialUpdateData, AdminRatePairsPartialUpdateResponses, AdminRatePairsRetrieveData, AdminRatePairsRetrieveResponses, AdminRatePairsUpdateData, AdminRatePairsUpdateResponses, AdminUsersListData, AdminUsersListResponses, AdminUsersPartialUpdateData, AdminUsersPartialUpdateResponses, AdminUsersRetrieveData, AdminUsersRetrieveResponses, AdminUsersUpdateData, AdminUsersUpdateResponses, DeactivateCreateData, DeactivateCreateResponses, UserConversionPairsListData, UserConversionPairsListResponses, UserConversionPairsRetrieveData, UserConversionPairsRetrieveResponses, UserConversionsCreateData, UserConversionsCreateResponses, UserConversionsListData, UserConversionsListResponses, UserConversionsPartialUpdateData, UserConversionsPartialUpdateResponses, UserConversionsRetrieveData, UserConversionsRetrieveResponses, UserConversionsUpdateData, UserConversionsUpdateResponses, UserCurrenciesListData, UserCurrenciesListResponses, UserCurrenciesRetrieveData, UserCurrenciesRetrieveResponses, UserRatesListData, UserRatesListResponses, UserRatesRetrieveData, UserRatesRetrieveResponses, UserRatesSnapshotRetrieveData, UserRatesSnapshotRetrieveResponses, UserRatesSnapshotsListData, UserRatesSnapshotsListResponses, UserSettingsPartialUpdateData, UserSettingsPartialUpdateResponses, UserSettingsRetrieveData, UserSettingsRetrieveResponses, UserSettingsUpdateData, UserSettingsUpdateResponses, WebhookCreateData, WebhookCreateResponses } from './types.gen';
6
6
 
7
- export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
7
+ export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, TResponse = unknown> = Options2<TData, ThrowOnError, TResponse> & {
8
8
  /**
9
9
  * You can provide a client instance returned by `createClient()` instead of
10
10
  * individual options. This might be also useful if you want to implement a
@@ -134,7 +134,7 @@ export type AdminCreateConversion = {
134
134
  * * `complete` - Complete
135
135
  * * `failed` - Failed
136
136
  */
137
- status: 'quoted' | 'pending' | 'complete' | 'failed';
137
+ readonly status: 'quoted' | 'pending' | 'complete' | 'failed';
138
138
  readonly collection: string | null;
139
139
  readonly txns: Array<string>;
140
140
  metadata?: {
@@ -771,7 +771,7 @@ export type UserCreateConversion = {
771
771
  * * `complete` - Complete
772
772
  * * `failed` - Failed
773
773
  */
774
- status: 'quoted' | 'pending' | 'complete' | 'failed';
774
+ readonly status: 'quoted' | 'pending' | 'complete' | 'failed';
775
775
  readonly collection: string | null;
776
776
  readonly txns: Array<string>;
777
777
  metadata?: {
@@ -31,7 +31,14 @@ export const createClient = (config: Config = {}): Client => {
31
31
 
32
32
  const interceptors = createInterceptors<Request, Response, unknown, ResolvedRequestOptions>();
33
33
 
34
- const beforeRequest = async (options: RequestOptions) => {
34
+ const beforeRequest = async <
35
+ TData = unknown,
36
+ TResponseStyle extends 'data' | 'fields' = 'fields',
37
+ ThrowOnError extends boolean = boolean,
38
+ Url extends string = string,
39
+ >(
40
+ options: RequestOptions<TData, TResponseStyle, ThrowOnError, Url>,
41
+ ) => {
35
42
  const opts = {
36
43
  ..._config,
37
44
  ...options,
@@ -60,13 +67,14 @@ export const createClient = (config: Config = {}): Client => {
60
67
  opts.headers.delete('Content-Type');
61
68
  }
62
69
 
63
- const url = buildUrl(opts);
70
+ const resolvedOpts = opts as typeof opts &
71
+ ResolvedRequestOptions<TResponseStyle, ThrowOnError, Url>;
72
+ const url = buildUrl(resolvedOpts);
64
73
 
65
- return { opts, url };
74
+ return { opts: resolvedOpts, url };
66
75
  };
67
76
 
68
77
  const request: Client['request'] = async (options) => {
69
- // @ts-expect-error
70
78
  const { opts, url } = await beforeRequest(options);
71
79
  const requestInit: ReqInit = {
72
80
  redirect: 'follow',
@@ -93,6 +93,7 @@ export interface ResolvedRequestOptions<
93
93
  ThrowOnError extends boolean = boolean,
94
94
  Url extends string = string,
95
95
  > extends RequestOptions<unknown, TResponseStyle, ThrowOnError, Url> {
96
+ headers: Headers;
96
97
  serializedBody?: string;
97
98
  }
98
99
 
@@ -152,7 +153,7 @@ type SseFn = <
152
153
  ThrowOnError extends boolean = false,
153
154
  TResponseStyle extends ResponseStyle = 'data',
154
155
  >(
155
- options: Omit<RequestOptions<TData, TResponseStyle, ThrowOnError>, 'method'>,
156
+ options: Omit<RequestOptions<never, TResponseStyle, ThrowOnError>, 'method'>,
156
157
  ) => Promise<ServerSentEventsResult<TData, TError>>;
157
158
 
158
159
  type RequestFn = <
@@ -204,7 +204,7 @@ export const mergeHeaders = (
204
204
  mergedHeaders.append(key, v as string);
205
205
  }
206
206
  } else if (value !== undefined) {
207
- // assume object headers are meant to be JSON stringified, i.e. their
207
+ // assume object headers are meant to be JSON stringified, i.e., their
208
208
  // content value in OpenAPI specification is 'application/json'
209
209
  mergedHeaders.set(
210
210
  key,