@lightsparkdev/grid 0.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 (610) hide show
  1. package/.DS_Store +0 -0
  2. package/CHANGELOG.md +85 -0
  3. package/LICENSE +201 -0
  4. package/README.md +516 -0
  5. package/api-promise.d.mts +2 -0
  6. package/api-promise.d.mts.map +1 -0
  7. package/api-promise.d.ts +2 -0
  8. package/api-promise.d.ts.map +1 -0
  9. package/api-promise.js +6 -0
  10. package/api-promise.js.map +1 -0
  11. package/api-promise.mjs +2 -0
  12. package/api-promise.mjs.map +1 -0
  13. package/client.d.mts +302 -0
  14. package/client.d.mts.map +1 -0
  15. package/client.d.ts +302 -0
  16. package/client.d.ts.map +1 -0
  17. package/client.js +588 -0
  18. package/client.js.map +1 -0
  19. package/client.mjs +584 -0
  20. package/client.mjs.map +1 -0
  21. package/core/api-promise.d.mts +46 -0
  22. package/core/api-promise.d.mts.map +1 -0
  23. package/core/api-promise.d.ts +46 -0
  24. package/core/api-promise.d.ts.map +1 -0
  25. package/core/api-promise.js +74 -0
  26. package/core/api-promise.js.map +1 -0
  27. package/core/api-promise.mjs +70 -0
  28. package/core/api-promise.mjs.map +1 -0
  29. package/core/error.d.mts +2055 -0
  30. package/core/error.d.mts.map +1 -0
  31. package/core/error.d.ts +2055 -0
  32. package/core/error.d.ts.map +1 -0
  33. package/core/error.js +857 -0
  34. package/core/error.js.map +1 -0
  35. package/core/error.mjs +787 -0
  36. package/core/error.mjs.map +1 -0
  37. package/core/pagination.d.mts +58 -0
  38. package/core/pagination.d.mts.map +1 -0
  39. package/core/pagination.d.ts +58 -0
  40. package/core/pagination.d.ts.map +1 -0
  41. package/core/pagination.js +109 -0
  42. package/core/pagination.js.map +1 -0
  43. package/core/pagination.mjs +103 -0
  44. package/core/pagination.mjs.map +1 -0
  45. package/core/resource.d.mts +6 -0
  46. package/core/resource.d.mts.map +1 -0
  47. package/core/resource.d.ts +6 -0
  48. package/core/resource.d.ts.map +1 -0
  49. package/core/resource.js +11 -0
  50. package/core/resource.js.map +1 -0
  51. package/core/resource.mjs +7 -0
  52. package/core/resource.mjs.map +1 -0
  53. package/core/uploads.d.mts +3 -0
  54. package/core/uploads.d.mts.map +1 -0
  55. package/core/uploads.d.ts +3 -0
  56. package/core/uploads.d.ts.map +1 -0
  57. package/core/uploads.js +6 -0
  58. package/core/uploads.js.map +1 -0
  59. package/core/uploads.mjs +2 -0
  60. package/core/uploads.mjs.map +1 -0
  61. package/error.d.mts +2 -0
  62. package/error.d.mts.map +1 -0
  63. package/error.d.ts +2 -0
  64. package/error.d.ts.map +1 -0
  65. package/error.js +6 -0
  66. package/error.js.map +1 -0
  67. package/error.mjs +2 -0
  68. package/error.mjs.map +1 -0
  69. package/index.d.mts +7 -0
  70. package/index.d.mts.map +1 -0
  71. package/index.d.ts +7 -0
  72. package/index.d.ts.map +1 -0
  73. package/index.js +86 -0
  74. package/index.js.map +1 -0
  75. package/index.mjs +8 -0
  76. package/index.mjs.map +1 -0
  77. package/internal/.DS_Store +0 -0
  78. package/internal/builtin-types.d.mts +73 -0
  79. package/internal/builtin-types.d.mts.map +1 -0
  80. package/internal/builtin-types.d.ts +73 -0
  81. package/internal/builtin-types.d.ts.map +1 -0
  82. package/internal/builtin-types.js +4 -0
  83. package/internal/builtin-types.js.map +1 -0
  84. package/internal/builtin-types.mjs +3 -0
  85. package/internal/builtin-types.mjs.map +1 -0
  86. package/internal/detect-platform.d.mts +15 -0
  87. package/internal/detect-platform.d.mts.map +1 -0
  88. package/internal/detect-platform.d.ts +15 -0
  89. package/internal/detect-platform.d.ts.map +1 -0
  90. package/internal/detect-platform.js +162 -0
  91. package/internal/detect-platform.js.map +1 -0
  92. package/internal/detect-platform.mjs +157 -0
  93. package/internal/detect-platform.mjs.map +1 -0
  94. package/internal/errors.d.mts +3 -0
  95. package/internal/errors.d.mts.map +1 -0
  96. package/internal/errors.d.ts +3 -0
  97. package/internal/errors.d.ts.map +1 -0
  98. package/internal/errors.js +41 -0
  99. package/internal/errors.js.map +1 -0
  100. package/internal/errors.mjs +36 -0
  101. package/internal/errors.mjs.map +1 -0
  102. package/internal/headers.d.mts +20 -0
  103. package/internal/headers.d.mts.map +1 -0
  104. package/internal/headers.d.ts +20 -0
  105. package/internal/headers.d.ts.map +1 -0
  106. package/internal/headers.js +79 -0
  107. package/internal/headers.js.map +1 -0
  108. package/internal/headers.mjs +74 -0
  109. package/internal/headers.mjs.map +1 -0
  110. package/internal/parse.d.mts +12 -0
  111. package/internal/parse.d.mts.map +1 -0
  112. package/internal/parse.d.ts +12 -0
  113. package/internal/parse.d.ts.map +1 -0
  114. package/internal/parse.js +40 -0
  115. package/internal/parse.js.map +1 -0
  116. package/internal/parse.mjs +37 -0
  117. package/internal/parse.mjs.map +1 -0
  118. package/internal/qs/formats.d.mts +7 -0
  119. package/internal/qs/formats.d.mts.map +1 -0
  120. package/internal/qs/formats.d.ts +7 -0
  121. package/internal/qs/formats.d.ts.map +1 -0
  122. package/internal/qs/formats.js +13 -0
  123. package/internal/qs/formats.js.map +1 -0
  124. package/internal/qs/formats.mjs +9 -0
  125. package/internal/qs/formats.mjs.map +1 -0
  126. package/internal/qs/index.d.mts +10 -0
  127. package/internal/qs/index.d.mts.map +1 -0
  128. package/internal/qs/index.d.ts +10 -0
  129. package/internal/qs/index.d.ts.map +1 -0
  130. package/internal/qs/index.js +14 -0
  131. package/internal/qs/index.js.map +1 -0
  132. package/internal/qs/index.mjs +10 -0
  133. package/internal/qs/index.mjs.map +1 -0
  134. package/internal/qs/stringify.d.mts +3 -0
  135. package/internal/qs/stringify.d.mts.map +1 -0
  136. package/internal/qs/stringify.d.ts +3 -0
  137. package/internal/qs/stringify.d.ts.map +1 -0
  138. package/internal/qs/stringify.js +277 -0
  139. package/internal/qs/stringify.js.map +1 -0
  140. package/internal/qs/stringify.mjs +274 -0
  141. package/internal/qs/stringify.mjs.map +1 -0
  142. package/internal/qs/types.d.mts +57 -0
  143. package/internal/qs/types.d.mts.map +1 -0
  144. package/internal/qs/types.d.ts +57 -0
  145. package/internal/qs/types.d.ts.map +1 -0
  146. package/internal/qs/types.js +3 -0
  147. package/internal/qs/types.js.map +1 -0
  148. package/internal/qs/types.mjs +2 -0
  149. package/internal/qs/types.mjs.map +1 -0
  150. package/internal/qs/utils.d.mts +15 -0
  151. package/internal/qs/utils.d.mts.map +1 -0
  152. package/internal/qs/utils.d.ts +15 -0
  153. package/internal/qs/utils.d.ts.map +1 -0
  154. package/internal/qs/utils.js +230 -0
  155. package/internal/qs/utils.js.map +1 -0
  156. package/internal/qs/utils.mjs +217 -0
  157. package/internal/qs/utils.mjs.map +1 -0
  158. package/internal/request-options.d.mts +75 -0
  159. package/internal/request-options.d.mts.map +1 -0
  160. package/internal/request-options.d.ts +75 -0
  161. package/internal/request-options.d.ts.map +1 -0
  162. package/internal/request-options.js +14 -0
  163. package/internal/request-options.js.map +1 -0
  164. package/internal/request-options.mjs +10 -0
  165. package/internal/request-options.mjs.map +1 -0
  166. package/internal/shim-types.d.mts +17 -0
  167. package/internal/shim-types.d.mts.map +1 -0
  168. package/internal/shim-types.d.ts +17 -0
  169. package/internal/shim-types.d.ts.map +1 -0
  170. package/internal/shim-types.js +4 -0
  171. package/internal/shim-types.js.map +1 -0
  172. package/internal/shim-types.mjs +3 -0
  173. package/internal/shim-types.mjs.map +1 -0
  174. package/internal/shims.d.mts +20 -0
  175. package/internal/shims.d.mts.map +1 -0
  176. package/internal/shims.d.ts +20 -0
  177. package/internal/shims.d.ts.map +1 -0
  178. package/internal/shims.js +92 -0
  179. package/internal/shims.js.map +1 -0
  180. package/internal/shims.mjs +85 -0
  181. package/internal/shims.mjs.map +1 -0
  182. package/internal/to-file.d.mts +45 -0
  183. package/internal/to-file.d.mts.map +1 -0
  184. package/internal/to-file.d.ts +45 -0
  185. package/internal/to-file.d.ts.map +1 -0
  186. package/internal/to-file.js +91 -0
  187. package/internal/to-file.js.map +1 -0
  188. package/internal/to-file.mjs +88 -0
  189. package/internal/to-file.mjs.map +1 -0
  190. package/internal/tslib.js +81 -0
  191. package/internal/tslib.mjs +17 -0
  192. package/internal/types.d.mts +69 -0
  193. package/internal/types.d.mts.map +1 -0
  194. package/internal/types.d.ts +69 -0
  195. package/internal/types.d.ts.map +1 -0
  196. package/internal/types.js +4 -0
  197. package/internal/types.js.map +1 -0
  198. package/internal/types.mjs +3 -0
  199. package/internal/types.mjs.map +1 -0
  200. package/internal/uploads.d.mts +42 -0
  201. package/internal/uploads.d.mts.map +1 -0
  202. package/internal/uploads.d.ts +42 -0
  203. package/internal/uploads.d.ts.map +1 -0
  204. package/internal/uploads.js +141 -0
  205. package/internal/uploads.js.map +1 -0
  206. package/internal/uploads.mjs +131 -0
  207. package/internal/uploads.mjs.map +1 -0
  208. package/internal/utils/base64.d.mts +3 -0
  209. package/internal/utils/base64.d.mts.map +1 -0
  210. package/internal/utils/base64.d.ts +3 -0
  211. package/internal/utils/base64.d.ts.map +1 -0
  212. package/internal/utils/base64.js +38 -0
  213. package/internal/utils/base64.js.map +1 -0
  214. package/internal/utils/base64.mjs +33 -0
  215. package/internal/utils/base64.mjs.map +1 -0
  216. package/internal/utils/bytes.d.mts +4 -0
  217. package/internal/utils/bytes.d.mts.map +1 -0
  218. package/internal/utils/bytes.d.ts +4 -0
  219. package/internal/utils/bytes.d.ts.map +1 -0
  220. package/internal/utils/bytes.js +31 -0
  221. package/internal/utils/bytes.js.map +1 -0
  222. package/internal/utils/bytes.mjs +26 -0
  223. package/internal/utils/bytes.mjs.map +1 -0
  224. package/internal/utils/env.d.mts +9 -0
  225. package/internal/utils/env.d.mts.map +1 -0
  226. package/internal/utils/env.d.ts +9 -0
  227. package/internal/utils/env.d.ts.map +1 -0
  228. package/internal/utils/env.js +22 -0
  229. package/internal/utils/env.js.map +1 -0
  230. package/internal/utils/env.mjs +18 -0
  231. package/internal/utils/env.mjs.map +1 -0
  232. package/internal/utils/log.d.mts +37 -0
  233. package/internal/utils/log.d.mts.map +1 -0
  234. package/internal/utils/log.d.ts +37 -0
  235. package/internal/utils/log.d.ts.map +1 -0
  236. package/internal/utils/log.js +86 -0
  237. package/internal/utils/log.js.map +1 -0
  238. package/internal/utils/log.mjs +80 -0
  239. package/internal/utils/log.mjs.map +1 -0
  240. package/internal/utils/path.d.mts +15 -0
  241. package/internal/utils/path.d.mts.map +1 -0
  242. package/internal/utils/path.d.ts +15 -0
  243. package/internal/utils/path.d.ts.map +1 -0
  244. package/internal/utils/path.js +79 -0
  245. package/internal/utils/path.js.map +1 -0
  246. package/internal/utils/path.mjs +74 -0
  247. package/internal/utils/path.mjs.map +1 -0
  248. package/internal/utils/sleep.d.mts +2 -0
  249. package/internal/utils/sleep.d.mts.map +1 -0
  250. package/internal/utils/sleep.d.ts +2 -0
  251. package/internal/utils/sleep.d.ts.map +1 -0
  252. package/internal/utils/sleep.js +7 -0
  253. package/internal/utils/sleep.js.map +1 -0
  254. package/internal/utils/sleep.mjs +3 -0
  255. package/internal/utils/sleep.mjs.map +1 -0
  256. package/internal/utils/uuid.d.mts +5 -0
  257. package/internal/utils/uuid.d.mts.map +1 -0
  258. package/internal/utils/uuid.d.ts +5 -0
  259. package/internal/utils/uuid.d.ts.map +1 -0
  260. package/internal/utils/uuid.js +19 -0
  261. package/internal/utils/uuid.js.map +1 -0
  262. package/internal/utils/uuid.mjs +15 -0
  263. package/internal/utils/uuid.mjs.map +1 -0
  264. package/internal/utils/values.d.mts +18 -0
  265. package/internal/utils/values.d.mts.map +1 -0
  266. package/internal/utils/values.d.ts +18 -0
  267. package/internal/utils/values.d.ts.map +1 -0
  268. package/internal/utils/values.js +112 -0
  269. package/internal/utils/values.js.map +1 -0
  270. package/internal/utils/values.mjs +94 -0
  271. package/internal/utils/values.mjs.map +1 -0
  272. package/internal/utils.d.mts +7 -0
  273. package/internal/utils.d.mts.map +1 -0
  274. package/internal/utils.d.ts +7 -0
  275. package/internal/utils.d.ts.map +1 -0
  276. package/internal/utils.js +11 -0
  277. package/internal/utils.js.map +1 -0
  278. package/internal/utils.mjs +8 -0
  279. package/internal/utils.mjs.map +1 -0
  280. package/package.json +147 -0
  281. package/pagination.d.mts +2 -0
  282. package/pagination.d.mts.map +1 -0
  283. package/pagination.d.ts +2 -0
  284. package/pagination.d.ts.map +1 -0
  285. package/pagination.js +6 -0
  286. package/pagination.js.map +1 -0
  287. package/pagination.mjs +2 -0
  288. package/pagination.mjs.map +1 -0
  289. package/resource.d.mts +2 -0
  290. package/resource.d.mts.map +1 -0
  291. package/resource.d.ts +2 -0
  292. package/resource.d.ts.map +1 -0
  293. package/resource.js +6 -0
  294. package/resource.js.map +1 -0
  295. package/resource.mjs +2 -0
  296. package/resource.mjs.map +1 -0
  297. package/resources/.DS_Store +0 -0
  298. package/resources/config.d.mts +130 -0
  299. package/resources/config.d.mts.map +1 -0
  300. package/resources/config.d.ts +130 -0
  301. package/resources/config.d.ts.map +1 -0
  302. package/resources/config.js +47 -0
  303. package/resources/config.js.map +1 -0
  304. package/resources/config.mjs +43 -0
  305. package/resources/config.mjs.map +1 -0
  306. package/resources/customers/bulk.d.mts +170 -0
  307. package/resources/customers/bulk.d.mts.map +1 -0
  308. package/resources/customers/bulk.d.ts +170 -0
  309. package/resources/customers/bulk.d.ts.map +1 -0
  310. package/resources/customers/bulk.js +103 -0
  311. package/resources/customers/bulk.js.map +1 -0
  312. package/resources/customers/bulk.mjs +99 -0
  313. package/resources/customers/bulk.mjs.map +1 -0
  314. package/resources/customers/customers.d.mts +1238 -0
  315. package/resources/customers/customers.d.mts.map +1 -0
  316. package/resources/customers/customers.d.ts +1238 -0
  317. package/resources/customers/customers.d.ts.map +1 -0
  318. package/resources/customers/customers.js +130 -0
  319. package/resources/customers/customers.js.map +1 -0
  320. package/resources/customers/customers.mjs +125 -0
  321. package/resources/customers/customers.mjs.map +1 -0
  322. package/resources/customers/external-accounts.d.mts +461 -0
  323. package/resources/customers/external-accounts.d.mts.map +1 -0
  324. package/resources/customers/external-accounts.d.ts +461 -0
  325. package/resources/customers/external-accounts.d.ts.map +1 -0
  326. package/resources/customers/external-accounts.js +83 -0
  327. package/resources/customers/external-accounts.js.map +1 -0
  328. package/resources/customers/external-accounts.mjs +79 -0
  329. package/resources/customers/external-accounts.mjs.map +1 -0
  330. package/resources/customers/index.d.mts +4 -0
  331. package/resources/customers/index.d.mts.map +1 -0
  332. package/resources/customers/index.d.ts +4 -0
  333. package/resources/customers/index.d.ts.map +1 -0
  334. package/resources/customers/index.js +11 -0
  335. package/resources/customers/index.js.map +1 -0
  336. package/resources/customers/index.mjs +5 -0
  337. package/resources/customers/index.mjs.map +1 -0
  338. package/resources/customers.d.mts +2 -0
  339. package/resources/customers.d.mts.map +1 -0
  340. package/resources/customers.d.ts +2 -0
  341. package/resources/customers.d.ts.map +1 -0
  342. package/resources/customers.js +6 -0
  343. package/resources/customers.js.map +1 -0
  344. package/resources/customers.mjs +3 -0
  345. package/resources/customers.mjs.map +1 -0
  346. package/resources/exchange-rates.d.mts +101 -0
  347. package/resources/exchange-rates.d.mts.map +1 -0
  348. package/resources/exchange-rates.d.ts +101 -0
  349. package/resources/exchange-rates.d.ts.map +1 -0
  350. package/resources/exchange-rates.js +23 -0
  351. package/resources/exchange-rates.js.map +1 -0
  352. package/resources/exchange-rates.mjs +19 -0
  353. package/resources/exchange-rates.mjs.map +1 -0
  354. package/resources/index.d.mts +16 -0
  355. package/resources/index.d.mts.map +1 -0
  356. package/resources/index.d.ts +16 -0
  357. package/resources/index.d.ts.map +1 -0
  358. package/resources/index.js +35 -0
  359. package/resources/index.js.map +1 -0
  360. package/resources/index.mjs +17 -0
  361. package/resources/index.mjs.map +1 -0
  362. package/resources/invitations.d.mts +166 -0
  363. package/resources/invitations.d.mts.map +1 -0
  364. package/resources/invitations.d.ts +166 -0
  365. package/resources/invitations.d.ts.map +1 -0
  366. package/resources/invitations.js +83 -0
  367. package/resources/invitations.js.map +1 -0
  368. package/resources/invitations.mjs +79 -0
  369. package/resources/invitations.mjs.map +1 -0
  370. package/resources/plaid.d.mts +101 -0
  371. package/resources/plaid.d.mts.map +1 -0
  372. package/resources/plaid.d.ts +101 -0
  373. package/resources/plaid.d.ts.map +1 -0
  374. package/resources/plaid.js +64 -0
  375. package/resources/plaid.js.map +1 -0
  376. package/resources/plaid.mjs +60 -0
  377. package/resources/plaid.mjs.map +1 -0
  378. package/resources/platform/external-accounts.d.mts +111 -0
  379. package/resources/platform/external-accounts.d.mts.map +1 -0
  380. package/resources/platform/external-accounts.d.ts +111 -0
  381. package/resources/platform/external-accounts.d.ts.map +1 -0
  382. package/resources/platform/external-accounts.js +74 -0
  383. package/resources/platform/external-accounts.js.map +1 -0
  384. package/resources/platform/external-accounts.mjs +70 -0
  385. package/resources/platform/external-accounts.mjs.map +1 -0
  386. package/resources/platform/index.d.mts +3 -0
  387. package/resources/platform/index.d.mts.map +1 -0
  388. package/resources/platform/index.d.ts +3 -0
  389. package/resources/platform/index.d.ts.map +1 -0
  390. package/resources/platform/index.js +9 -0
  391. package/resources/platform/index.js.map +1 -0
  392. package/resources/platform/index.mjs +4 -0
  393. package/resources/platform/index.mjs.map +1 -0
  394. package/resources/platform/platform.d.mts +41 -0
  395. package/resources/platform/platform.d.mts.map +1 -0
  396. package/resources/platform/platform.d.ts +41 -0
  397. package/resources/platform/platform.d.ts.map +1 -0
  398. package/resources/platform/platform.js +34 -0
  399. package/resources/platform/platform.js.map +1 -0
  400. package/resources/platform/platform.mjs +29 -0
  401. package/resources/platform/platform.mjs.map +1 -0
  402. package/resources/platform.d.mts +2 -0
  403. package/resources/platform.d.mts.map +1 -0
  404. package/resources/platform.d.ts +2 -0
  405. package/resources/platform.d.ts.map +1 -0
  406. package/resources/platform.js +6 -0
  407. package/resources/platform.js.map +1 -0
  408. package/resources/platform.mjs +3 -0
  409. package/resources/platform.mjs.map +1 -0
  410. package/resources/quotes.d.mts +580 -0
  411. package/resources/quotes.d.mts.map +1 -0
  412. package/resources/quotes.d.ts +580 -0
  413. package/resources/quotes.d.ts.map +1 -0
  414. package/resources/quotes.js +122 -0
  415. package/resources/quotes.js.map +1 -0
  416. package/resources/quotes.mjs +118 -0
  417. package/resources/quotes.mjs.map +1 -0
  418. package/resources/receiver.d.mts +100 -0
  419. package/resources/receiver.d.mts.map +1 -0
  420. package/resources/receiver.d.ts +100 -0
  421. package/resources/receiver.d.ts.map +1 -0
  422. package/resources/receiver.js +27 -0
  423. package/resources/receiver.js.map +1 -0
  424. package/resources/receiver.mjs +23 -0
  425. package/resources/receiver.mjs.map +1 -0
  426. package/resources/sandbox/index.d.mts +4 -0
  427. package/resources/sandbox/index.d.mts.map +1 -0
  428. package/resources/sandbox/index.d.ts +4 -0
  429. package/resources/sandbox/index.d.ts.map +1 -0
  430. package/resources/sandbox/index.js +11 -0
  431. package/resources/sandbox/index.js.map +1 -0
  432. package/resources/sandbox/index.mjs +5 -0
  433. package/resources/sandbox/index.mjs.map +1 -0
  434. package/resources/sandbox/internal-accounts.d.mts +61 -0
  435. package/resources/sandbox/internal-accounts.d.mts.map +1 -0
  436. package/resources/sandbox/internal-accounts.d.ts +61 -0
  437. package/resources/sandbox/internal-accounts.d.ts.map +1 -0
  438. package/resources/sandbox/internal-accounts.js +29 -0
  439. package/resources/sandbox/internal-accounts.js.map +1 -0
  440. package/resources/sandbox/internal-accounts.mjs +25 -0
  441. package/resources/sandbox/internal-accounts.mjs.map +1 -0
  442. package/resources/sandbox/sandbox.d.mts +116 -0
  443. package/resources/sandbox/sandbox.d.mts.map +1 -0
  444. package/resources/sandbox/sandbox.d.ts +116 -0
  445. package/resources/sandbox/sandbox.d.ts.map +1 -0
  446. package/resources/sandbox/sandbox.js +37 -0
  447. package/resources/sandbox/sandbox.js.map +1 -0
  448. package/resources/sandbox/sandbox.mjs +32 -0
  449. package/resources/sandbox/sandbox.mjs.map +1 -0
  450. package/resources/sandbox/uma.d.mts +48 -0
  451. package/resources/sandbox/uma.d.mts.map +1 -0
  452. package/resources/sandbox/uma.d.ts +48 -0
  453. package/resources/sandbox/uma.d.ts.map +1 -0
  454. package/resources/sandbox/uma.js +27 -0
  455. package/resources/sandbox/uma.js.map +1 -0
  456. package/resources/sandbox/uma.mjs +23 -0
  457. package/resources/sandbox/uma.mjs.map +1 -0
  458. package/resources/sandbox.d.mts +2 -0
  459. package/resources/sandbox.d.mts.map +1 -0
  460. package/resources/sandbox.d.ts +2 -0
  461. package/resources/sandbox.d.ts.map +1 -0
  462. package/resources/sandbox.js +6 -0
  463. package/resources/sandbox.js.map +1 -0
  464. package/resources/sandbox.mjs +3 -0
  465. package/resources/sandbox.mjs.map +1 -0
  466. package/resources/tokens.d.mts +131 -0
  467. package/resources/tokens.d.mts.map +1 -0
  468. package/resources/tokens.d.ts +131 -0
  469. package/resources/tokens.d.ts.map +1 -0
  470. package/resources/tokens.js +67 -0
  471. package/resources/tokens.js.map +1 -0
  472. package/resources/tokens.mjs +63 -0
  473. package/resources/tokens.mjs.map +1 -0
  474. package/resources/transactions.d.mts +226 -0
  475. package/resources/transactions.d.mts.map +1 -0
  476. package/resources/transactions.d.ts +226 -0
  477. package/resources/transactions.d.ts.map +1 -0
  478. package/resources/transactions.js +71 -0
  479. package/resources/transactions.js.map +1 -0
  480. package/resources/transactions.mjs +67 -0
  481. package/resources/transactions.mjs.map +1 -0
  482. package/resources/transfer-in.d.mts +154 -0
  483. package/resources/transfer-in.d.mts.map +1 -0
  484. package/resources/transfer-in.d.ts +154 -0
  485. package/resources/transfer-in.d.ts.map +1 -0
  486. package/resources/transfer-in.js +42 -0
  487. package/resources/transfer-in.js.map +1 -0
  488. package/resources/transfer-in.mjs +38 -0
  489. package/resources/transfer-in.mjs.map +1 -0
  490. package/resources/transfer-out.d.mts +70 -0
  491. package/resources/transfer-out.d.mts.map +1 -0
  492. package/resources/transfer-out.d.ts +70 -0
  493. package/resources/transfer-out.d.ts.map +1 -0
  494. package/resources/transfer-out.js +40 -0
  495. package/resources/transfer-out.js.map +1 -0
  496. package/resources/transfer-out.mjs +36 -0
  497. package/resources/transfer-out.mjs.map +1 -0
  498. package/resources/uma-providers.d.mts +70 -0
  499. package/resources/uma-providers.d.mts.map +1 -0
  500. package/resources/uma-providers.d.ts +70 -0
  501. package/resources/uma-providers.d.ts.map +1 -0
  502. package/resources/uma-providers.js +21 -0
  503. package/resources/uma-providers.js.map +1 -0
  504. package/resources/uma-providers.mjs +17 -0
  505. package/resources/uma-providers.mjs.map +1 -0
  506. package/resources/webhooks.d.mts +27 -0
  507. package/resources/webhooks.d.mts.map +1 -0
  508. package/resources/webhooks.d.ts +27 -0
  509. package/resources/webhooks.d.ts.map +1 -0
  510. package/resources/webhooks.js +15 -0
  511. package/resources/webhooks.js.map +1 -0
  512. package/resources/webhooks.mjs +11 -0
  513. package/resources/webhooks.mjs.map +1 -0
  514. package/resources.d.mts +2 -0
  515. package/resources.d.mts.map +1 -0
  516. package/resources.d.ts +2 -0
  517. package/resources.d.ts.map +1 -0
  518. package/resources.js +5 -0
  519. package/resources.js.map +1 -0
  520. package/resources.mjs +2 -0
  521. package/resources.mjs.map +1 -0
  522. package/src/.DS_Store +0 -0
  523. package/src/api-promise.ts +2 -0
  524. package/src/client.ts +1111 -0
  525. package/src/core/README.md +3 -0
  526. package/src/core/api-promise.ts +92 -0
  527. package/src/core/error.ts +2936 -0
  528. package/src/core/pagination.ts +173 -0
  529. package/src/core/resource.ts +11 -0
  530. package/src/core/uploads.ts +2 -0
  531. package/src/error.ts +2 -0
  532. package/src/index.ts +76 -0
  533. package/src/internal/README.md +3 -0
  534. package/src/internal/builtin-types.ts +93 -0
  535. package/src/internal/detect-platform.ts +196 -0
  536. package/src/internal/errors.ts +33 -0
  537. package/src/internal/headers.ts +97 -0
  538. package/src/internal/parse.ts +56 -0
  539. package/src/internal/qs/LICENSE.md +13 -0
  540. package/src/internal/qs/README.md +3 -0
  541. package/src/internal/qs/formats.ts +10 -0
  542. package/src/internal/qs/index.ts +13 -0
  543. package/src/internal/qs/stringify.ts +385 -0
  544. package/src/internal/qs/types.ts +71 -0
  545. package/src/internal/qs/utils.ts +265 -0
  546. package/src/internal/request-options.ts +91 -0
  547. package/src/internal/shim-types.ts +26 -0
  548. package/src/internal/shims.ts +107 -0
  549. package/src/internal/to-file.ts +154 -0
  550. package/src/internal/types.ts +95 -0
  551. package/src/internal/uploads.ts +187 -0
  552. package/src/internal/utils/base64.ts +40 -0
  553. package/src/internal/utils/bytes.ts +32 -0
  554. package/src/internal/utils/env.ts +18 -0
  555. package/src/internal/utils/log.ts +127 -0
  556. package/src/internal/utils/path.ts +88 -0
  557. package/src/internal/utils/sleep.ts +3 -0
  558. package/src/internal/utils/uuid.ts +17 -0
  559. package/src/internal/utils/values.ts +105 -0
  560. package/src/internal/utils.ts +8 -0
  561. package/src/lib/.keep +4 -0
  562. package/src/pagination.ts +2 -0
  563. package/src/resource.ts +2 -0
  564. package/src/resources/config.ts +178 -0
  565. package/src/resources/customers/bulk.ts +201 -0
  566. package/src/resources/customers/customers.ts +1687 -0
  567. package/src/resources/customers/external-accounts.ts +630 -0
  568. package/src/resources/customers/index.ts +51 -0
  569. package/src/resources/customers.ts +3 -0
  570. package/src/resources/exchange-rates.ts +127 -0
  571. package/src/resources/index.ts +104 -0
  572. package/src/resources/invitations.ts +207 -0
  573. package/src/resources/plaid.ts +128 -0
  574. package/src/resources/platform/external-accounts.ts +136 -0
  575. package/src/resources/platform/index.ts +13 -0
  576. package/src/resources/platform/platform.ts +70 -0
  577. package/src/resources/platform.ts +3 -0
  578. package/src/resources/quotes.ts +726 -0
  579. package/src/resources/receiver.ts +139 -0
  580. package/src/resources/sandbox/index.ts +10 -0
  581. package/src/resources/sandbox/internal-accounts.ts +82 -0
  582. package/src/resources/sandbox/sandbox.ts +159 -0
  583. package/src/resources/sandbox/uma.ts +61 -0
  584. package/src/resources/sandbox.ts +3 -0
  585. package/src/resources/tokens.ts +176 -0
  586. package/src/resources/transactions.ts +312 -0
  587. package/src/resources/transfer-in.ts +193 -0
  588. package/src/resources/transfer-out.ts +90 -0
  589. package/src/resources/uma-providers.ts +98 -0
  590. package/src/resources/webhooks.ts +35 -0
  591. package/src/resources.ts +1 -0
  592. package/src/tsconfig.json +11 -0
  593. package/src/uploads.ts +2 -0
  594. package/src/version.ts +1 -0
  595. package/uploads.d.mts +2 -0
  596. package/uploads.d.mts.map +1 -0
  597. package/uploads.d.ts +2 -0
  598. package/uploads.d.ts.map +1 -0
  599. package/uploads.js +6 -0
  600. package/uploads.js.map +1 -0
  601. package/uploads.mjs +2 -0
  602. package/uploads.mjs.map +1 -0
  603. package/version.d.mts +2 -0
  604. package/version.d.mts.map +1 -0
  605. package/version.d.ts +2 -0
  606. package/version.d.ts.map +1 -0
  607. package/version.js +5 -0
  608. package/version.js.map +1 -0
  609. package/version.mjs +2 -0
  610. package/version.mjs.map +1 -0
@@ -0,0 +1,726 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../core/resource';
4
+ import * as ExternalAccountsAPI from './customers/external-accounts';
5
+ import { APIPromise } from '../core/api-promise';
6
+ import { DefaultPagination, type DefaultPaginationParams, PagePromise } from '../core/pagination';
7
+ import { RequestOptions } from '../internal/request-options';
8
+ import { path } from '../internal/utils/path';
9
+
10
+ export class Quotes extends APIResource {
11
+ /**
12
+ * Generate a quote for a cross-currency transfer between any combination of
13
+ * accounts and UMA addresses. This endpoint handles currency exchange and provides
14
+ * the necessary instructions to execute the transfer.
15
+ *
16
+ * **Transfer Types Supported:**
17
+ *
18
+ * - **Account to Account**: Transfer between internal/external accounts with
19
+ * currency exchange.
20
+ * - **Account to UMA**: Transfer from an internal account to an UMA address.
21
+ * - **UMA to Account or UMA to UMA**: This transfer type will only be funded by
22
+ * payment instructions, not from an internal account.
23
+ *
24
+ * **Key Features:**
25
+ *
26
+ * - **Flexible Amount Locking**: Always specify whether you want to lock the
27
+ * sending amount or receiving amount
28
+ * - **Currency Exchange**: Handles all cross-currency transfers with real-time
29
+ * exchange rates
30
+ * - **Payment Instructions**: For UMA or customer ID sources, provides banking
31
+ * details needed for execution
32
+ *
33
+ * **Important:** If you are transferring funds in the same currency (no exchange
34
+ * required), use the `/transfer-in` or `/transfer-out` endpoints instead.
35
+ *
36
+ * **Sandbox Testing:** When using the `externalAccountDetails` destination type in
37
+ * sandbox mode, use account number patterns ending in specific digits to test
38
+ * different scenarios. These patterns should be used with the primary alias,
39
+ * address, or identifier of whatever account type you're testing. For example, the
40
+ * US account number, a CLABE, an IBAN, a spark wallet address, etc. The failure
41
+ * patterns are:
42
+ *
43
+ * - Account numbers ending in **002**: Insufficient funds (transfer-in will fail)
44
+ * - Account numbers ending in **003**: Account closed/invalid (transfers will
45
+ * fail)
46
+ * - Account numbers ending in **004**: Transfer rejected (bank rejects the
47
+ * transfer)
48
+ * - Account numbers ending in **005**: Timeout/delayed failure (stays pending
49
+ * ~30s, then fails)
50
+ * - Any other account number: Success (transfers complete normally)
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * const quote = await client.quotes.create({
55
+ * destination: {
56
+ * accountId:
57
+ * 'ExternalAccount:a12dcbd6-dced-4ec4-b756-3c3a9ea3d123',
58
+ * },
59
+ * lockedCurrencyAmount: 10000,
60
+ * lockedCurrencySide: 'SENDING',
61
+ * source: {
62
+ * accountId:
63
+ * 'InternalAccount:e85dcbd6-dced-4ec4-b756-3c3a9ea3d965',
64
+ * },
65
+ * description:
66
+ * 'Transfer between accounts, either internal or external.',
67
+ * });
68
+ * ```
69
+ */
70
+ create(body: QuoteCreateParams, options?: RequestOptions): APIPromise<Quote> {
71
+ return this._client.post('/quotes', { body, ...options });
72
+ }
73
+
74
+ /**
75
+ * Retrieve a quote by its ID. If the quote has been settled, it will include the
76
+ * transaction ID. This allows clients to track the full lifecycle of a payment
77
+ * from quote creation to settlement.
78
+ *
79
+ * @example
80
+ * ```ts
81
+ * const quote = await client.quotes.retrieve('quoteId');
82
+ * ```
83
+ */
84
+ retrieve(quoteID: string, options?: RequestOptions): APIPromise<Quote> {
85
+ return this._client.get(path`/quotes/${quoteID}`, options);
86
+ }
87
+
88
+ /**
89
+ * Retrieve a list of transfer quotes with optional filtering parameters. Returns
90
+ * all quotes that match the specified filters. If no filters are provided, returns
91
+ * all quotes (paginated).
92
+ *
93
+ * @example
94
+ * ```ts
95
+ * // Automatically fetches more pages as needed.
96
+ * for await (const quote of client.quotes.list()) {
97
+ * // ...
98
+ * }
99
+ * ```
100
+ */
101
+ list(
102
+ query: QuoteListParams | null | undefined = {},
103
+ options?: RequestOptions,
104
+ ): PagePromise<QuotesDefaultPagination, Quote> {
105
+ return this._client.getAPIList('/quotes', DefaultPagination<Quote>, { query, ...options });
106
+ }
107
+
108
+ /**
109
+ * Execute a quote by its ID. This endpoint initiates the transfer between the
110
+ * source and destination accounts.
111
+ *
112
+ * This endpoint can only be used for quotes with a `source` which is either an
113
+ * internal account, or has direct pull functionality (e.g. ACH pull with an
114
+ * external account).
115
+ *
116
+ * Once executed, the quote cannot be cancelled and the transfer will be processed.
117
+ *
118
+ * @example
119
+ * ```ts
120
+ * const quote = await client.quotes.execute(
121
+ * 'Quote:019542f5-b3e7-1d02-0000-000000000001',
122
+ * );
123
+ * ```
124
+ */
125
+ execute(quoteID: string, options?: RequestOptions): APIPromise<Quote> {
126
+ return this._client.post(path`/quotes/${quoteID}/execute`, options);
127
+ }
128
+ }
129
+
130
+ export type QuotesDefaultPagination = DefaultPagination<Quote>;
131
+
132
+ export type BaseDestination = unknown;
133
+
134
+ export type BasePaymentAccountInfo = unknown;
135
+
136
+ export type BaseQuoteSource = unknown;
137
+
138
+ export interface Currency {
139
+ /**
140
+ * Three-letter currency code (ISO 4217) for fiat currencies. Some cryptocurrencies
141
+ * may use their own ticker symbols (e.g. "BTC" for Bitcoin, "USDC" for USDC, etc.)
142
+ */
143
+ code?: string;
144
+
145
+ /**
146
+ * Number of decimal places for the currency
147
+ */
148
+ decimals?: number;
149
+
150
+ /**
151
+ * Full name of the currency
152
+ */
153
+ name?: string;
154
+
155
+ /**
156
+ * Symbol of the currency
157
+ */
158
+ symbol?: string;
159
+ }
160
+
161
+ /**
162
+ * Details about the rate and fees for an outgoing transaction or quote.
163
+ */
164
+ export interface OutgoingRateDetails {
165
+ /**
166
+ * The fixed fee charged by the counterparty institution to execute the quote in
167
+ * the smallest unit of the receiving currency (eg. cents).
168
+ */
169
+ counterpartyFixedFee: number;
170
+
171
+ /**
172
+ * The underlying multiplier from mSATs to the receiving currency as returned by
173
+ * the counterparty institution.
174
+ */
175
+ counterpartyMultiplier: number;
176
+
177
+ /**
178
+ * The fixed fee charged by the Grid product to execute the quote in the smallest
179
+ * unit of the sending currency (eg. cents).
180
+ */
181
+ gridApiFixedFee: number;
182
+
183
+ /**
184
+ * The underlying multiplier from the sending currency to mSATS, including variable
185
+ * fees.
186
+ */
187
+ gridApiMultiplier: number;
188
+
189
+ /**
190
+ * The variable fee amount charged by the Grid product to execute the quote in the
191
+ * smallest unit of the sending currency (eg. cents). This is the sending amount
192
+ * times gridApiVariableFeeRate.
193
+ */
194
+ gridApiVariableFeeAmount: number;
195
+
196
+ /**
197
+ * The variable fee rate charged by the Grid product to execute the quote as a
198
+ * percentage of the sending currency amount.
199
+ */
200
+ gridApiVariableFeeRate: number;
201
+ }
202
+
203
+ export interface PaymentInstructions {
204
+ accountOrWalletInfo:
205
+ | PaymentInstructions.PaymentClabeAccountInfo
206
+ | PaymentInstructions.PaymentUsAccountInfo
207
+ | PaymentInstructions.PixAccountInfo
208
+ | PaymentInstructions.PaymentIbanAccountInfo
209
+ | PaymentInstructions.UpiAccountInfo
210
+ | PaymentInstructions.PaymentSparkWalletInfo
211
+ | PaymentInstructions.PaymentLightningInvoiceInfo
212
+ | PaymentInstructions.PaymentSolanaWalletInfo
213
+ | PaymentInstructions.PaymentTronWalletInfo
214
+ | PaymentInstructions.PaymentPolygonWalletInfo
215
+ | PaymentInstructions.PaymentBaseWalletInfo;
216
+
217
+ /**
218
+ * Additional human-readable instructions for making the payment
219
+ */
220
+ instructionsNotes?: string;
221
+
222
+ /**
223
+ * Indicates whether the account is a platform account or a customer account.
224
+ */
225
+ isPlatformAccount?: boolean;
226
+ }
227
+
228
+ export namespace PaymentInstructions {
229
+ export interface PaymentClabeAccountInfo {
230
+ accountType: 'CLABE';
231
+
232
+ /**
233
+ * 18-digit CLABE number (Mexican banking standard)
234
+ */
235
+ clabeNumber: string;
236
+
237
+ /**
238
+ * Unique reference code that must be included with the payment to properly credit
239
+ * it
240
+ */
241
+ reference: string;
242
+ }
243
+
244
+ export interface PaymentUsAccountInfo {
245
+ /**
246
+ * Type of account (checking or savings)
247
+ */
248
+ accountCategory: 'CHECKING' | 'SAVINGS';
249
+
250
+ /**
251
+ * US bank account number
252
+ */
253
+ accountNumber: string;
254
+
255
+ accountType: 'US_ACCOUNT';
256
+
257
+ /**
258
+ * Unique reference code that must be included with the payment to properly credit
259
+ * it
260
+ */
261
+ reference: string;
262
+
263
+ /**
264
+ * ACH routing number (9 digits)
265
+ */
266
+ routingNumber: string;
267
+
268
+ /**
269
+ * Name of the bank
270
+ */
271
+ bankName?: string;
272
+ }
273
+
274
+ export interface PixAccountInfo {
275
+ accountType: 'PIX';
276
+
277
+ /**
278
+ * PIX key for Brazilian instant payments
279
+ */
280
+ pixKey: string;
281
+
282
+ /**
283
+ * Type of PIX key being used
284
+ */
285
+ pixKeyType: 'CPF' | 'CNPJ' | 'EMAIL' | 'PHONE' | 'RANDOM';
286
+
287
+ /**
288
+ * Tax ID of the account holder
289
+ */
290
+ taxId: string;
291
+ }
292
+
293
+ export interface PaymentIbanAccountInfo {
294
+ accountType: 'IBAN';
295
+
296
+ /**
297
+ * International Bank Account Number
298
+ */
299
+ iban: string;
300
+
301
+ /**
302
+ * Unique reference code that must be included with the payment to properly credit
303
+ * it
304
+ */
305
+ reference: string;
306
+
307
+ /**
308
+ * SWIFT/BIC code (8 or 11 characters)
309
+ */
310
+ swiftBic: string;
311
+ }
312
+
313
+ export interface UpiAccountInfo {
314
+ accountType: 'UPI';
315
+
316
+ /**
317
+ * Virtual Payment Address for UPI payments
318
+ */
319
+ vpa: string;
320
+ }
321
+
322
+ export interface PaymentSparkWalletInfo {
323
+ accountType: 'SPARK_WALLET';
324
+
325
+ /**
326
+ * Spark wallet address
327
+ */
328
+ address: string;
329
+
330
+ /**
331
+ * Type of asset
332
+ */
333
+ assetType: 'BTC' | 'USDB';
334
+
335
+ /**
336
+ * Invoice for the payment
337
+ */
338
+ invoice?: string;
339
+ }
340
+
341
+ export interface PaymentLightningInvoiceInfo {
342
+ /**
343
+ * Invoice for the payment
344
+ */
345
+ invoice: string;
346
+
347
+ accountType?: 'LIGHTNING';
348
+ }
349
+
350
+ export interface PaymentSolanaWalletInfo {
351
+ accountType: 'SOLANA_WALLET';
352
+
353
+ /**
354
+ * Solana wallet address
355
+ */
356
+ address: string;
357
+
358
+ /**
359
+ * Type of asset
360
+ */
361
+ assetType?: 'USDC' | 'USDT';
362
+ }
363
+
364
+ export interface PaymentTronWalletInfo {
365
+ accountType: 'TRON_WALLET';
366
+
367
+ /**
368
+ * Tron wallet address
369
+ */
370
+ address: string;
371
+
372
+ /**
373
+ * Type of asset
374
+ */
375
+ assetType?: 'USDT';
376
+ }
377
+
378
+ export interface PaymentPolygonWalletInfo {
379
+ accountType: 'POLYGON_WALLET';
380
+
381
+ /**
382
+ * Polygon eth wallet address
383
+ */
384
+ address: string;
385
+
386
+ /**
387
+ * Type of asset
388
+ */
389
+ assetType?: 'USDC';
390
+ }
391
+
392
+ export interface PaymentBaseWalletInfo {
393
+ accountType: 'BASE_WALLET';
394
+
395
+ /**
396
+ * Base eth wallet address
397
+ */
398
+ address: string;
399
+
400
+ /**
401
+ * Type of asset
402
+ */
403
+ assetType?: 'USDC';
404
+ }
405
+ }
406
+
407
+ export interface Quote {
408
+ /**
409
+ * When this quote was created
410
+ */
411
+ createdAt: string;
412
+
413
+ /**
414
+ * Destination account details
415
+ */
416
+ destination: QuoteDestinationOneOf;
417
+
418
+ /**
419
+ * Number of sending currency units per receiving currency unit.
420
+ */
421
+ exchangeRate: number;
422
+
423
+ /**
424
+ * When this quote expires (typically 1-5 minutes after creation)
425
+ */
426
+ expiresAt: string;
427
+
428
+ /**
429
+ * The fees associated with the quote in the smallest unit of the sending currency
430
+ * (eg. cents).
431
+ */
432
+ feesIncluded: number;
433
+
434
+ /**
435
+ * Unique identifier for this quote
436
+ */
437
+ quoteId: string;
438
+
439
+ /**
440
+ * Currency for the receiving amount
441
+ */
442
+ receivingCurrency: Currency;
443
+
444
+ /**
445
+ * Currency for the sending amount
446
+ */
447
+ sendingCurrency: Currency;
448
+
449
+ /**
450
+ * Source account details
451
+ */
452
+ source: QuoteSourceOneOf;
453
+
454
+ /**
455
+ * Current status of the quote
456
+ */
457
+ status: 'PENDING' | 'PROCESSING' | 'COMPLETED' | 'FAILED' | 'EXPIRED';
458
+
459
+ /**
460
+ * The total amount that will be received in the smallest unit of the receiving
461
+ * currency (eg. cents).
462
+ */
463
+ totalReceivingAmount: number;
464
+
465
+ /**
466
+ * The total amount that will be sent in the smallest unit of the sending currency
467
+ * (eg. cents).
468
+ */
469
+ totalSendingAmount: number;
470
+
471
+ /**
472
+ * The ID of the transaction created from this quote.
473
+ */
474
+ transactionId: string;
475
+
476
+ /**
477
+ * ID of the quote that is being retried
478
+ */
479
+ originalQuoteId?: string;
480
+
481
+ /**
482
+ * Payment instructions for executing the payment. This is not required when using
483
+ * an internal account source.
484
+ */
485
+ paymentInstructions?: Array<PaymentInstructions>;
486
+
487
+ /**
488
+ * Details about the rate and fees for the transaction.
489
+ */
490
+ rateDetails?: OutgoingRateDetails;
491
+ }
492
+
493
+ /**
494
+ * Destination account details
495
+ */
496
+ export type QuoteDestinationOneOf =
497
+ | QuoteDestinationOneOf.AccountDestination
498
+ | QuoteDestinationOneOf.UmaAddressDestination
499
+ | QuoteDestinationOneOf.ExternalAccountDetailsDestination;
500
+
501
+ export namespace QuoteDestinationOneOf {
502
+ /**
503
+ * Destination account details
504
+ */
505
+ export interface AccountDestination {
506
+ /**
507
+ * Destination account identifier
508
+ */
509
+ accountId: string;
510
+
511
+ destinationType: 'ACCOUNT';
512
+ }
513
+
514
+ /**
515
+ * UMA address destination details
516
+ */
517
+ export interface UmaAddressDestination {
518
+ destinationType: 'UMA_ADDRESS';
519
+
520
+ /**
521
+ * UMA address of the recipient
522
+ */
523
+ umaAddress: string;
524
+
525
+ /**
526
+ * Information about the recipient, as required by the platform in their
527
+ * configuration.
528
+ */
529
+ counterpartyInformation?: { [key: string]: unknown };
530
+
531
+ /**
532
+ * Currency code for the destination. See
533
+ * [Supported Currencies](https://grid.lightspark.com/platform-overview/core-concepts/currencies-and-rails)
534
+ * for the full list of supported fiat and crypto currencies.
535
+ */
536
+ currency?: string;
537
+ }
538
+
539
+ /**
540
+ * A convenient destination option which adds the external account and creates the
541
+ * quote in one step rather than first needing to call /external-accounts to add
542
+ * the account. Useful for one-off payments to some destination. See the external
543
+ * accounts endpoints for test values in sandbox mode.
544
+ */
545
+ export interface ExternalAccountDetailsDestination {
546
+ destinationType: 'EXTERNAL_ACCOUNT_DETAILS';
547
+
548
+ externalAccountDetails: ExternalAccountsAPI.ExternalAccountCreate;
549
+ }
550
+ }
551
+
552
+ /**
553
+ * Source account details
554
+ */
555
+ export type QuoteSourceOneOf =
556
+ | QuoteSourceOneOf.AccountQuoteSource
557
+ | QuoteSourceOneOf.RealtimeFundingQuoteSource;
558
+
559
+ export namespace QuoteSourceOneOf {
560
+ /**
561
+ * Source account details
562
+ */
563
+ export interface AccountQuoteSource {
564
+ /**
565
+ * Source account identifier
566
+ */
567
+ accountId: string;
568
+
569
+ sourceType: 'ACCOUNT';
570
+
571
+ /**
572
+ * Required when funding from an FBO account to identify the customer on whose
573
+ * behalf the transaction is being initiated. Otherwise, will default to the
574
+ * customerId of the account owner.
575
+ */
576
+ customerId?: string;
577
+ }
578
+
579
+ /**
580
+ * Fund the quote using a real-time funding source (RTP, SEPA Instant, Spark,
581
+ * Stables, etc.). This will require manual just-in-time funding using
582
+ * `paymentInstructions` in the response. Because quotes expire quickly, this
583
+ * option is only valid for instant payment methods. Do not try to fund a quote
584
+ * with a non-instant payment method (ACH, etc.).
585
+ */
586
+ export interface RealtimeFundingQuoteSource {
587
+ /**
588
+ * Currency code for the funding source. See
589
+ * [Supported Currencies](https://grid.lightspark.com/platform-overview/core-concepts/currencies-and-rails)
590
+ * for the full list of supported fiat and crypto currencies.
591
+ */
592
+ currency: string;
593
+
594
+ sourceType: 'REALTIME_FUNDING';
595
+
596
+ /**
597
+ * Source customer ID. If this transaction is being initiated on behalf of a
598
+ * customer, this is required. If customerId is not provided, the quote will be
599
+ * created on behalf of the platform itself.
600
+ */
601
+ customerId?: string;
602
+ }
603
+ }
604
+
605
+ export interface QuoteCreateParams {
606
+ /**
607
+ * Destination account details
608
+ */
609
+ destination: QuoteDestinationOneOf;
610
+
611
+ /**
612
+ * The amount to send/receive in the smallest unit of the locked currency (eg.
613
+ * cents). See `lockedCurrencySide` for more information.
614
+ */
615
+ lockedCurrencyAmount: number;
616
+
617
+ /**
618
+ * The side of the quote which should be locked and specified in the
619
+ * `lockedCurrencyAmount`. For example, if I want to send exactly $5 MXN from my
620
+ * wallet, I would set this to "sending", and the `lockedCurrencyAmount` to 500 (in
621
+ * cents). If I want the receiver to receive exactly $10 USD, I would set this to
622
+ * "receiving" and the `lockedCurrencyAmount` to 10000 (in cents).
623
+ */
624
+ lockedCurrencySide: 'SENDING' | 'RECEIVING';
625
+
626
+ /**
627
+ * Source account details
628
+ */
629
+ source: QuoteSourceOneOf;
630
+
631
+ /**
632
+ * Optional description/memo for the transfer
633
+ */
634
+ description?: string;
635
+
636
+ /**
637
+ * Whether to immediately execute the quote after creation. If true, the quote will
638
+ * be executed and the transaction will be created at the current exchange rate. It
639
+ * should only be used if you don't want to lock and view rate details before
640
+ * executing the quote. If you are executing a pre-existing quote, use the
641
+ * `/quotes/{quoteId}/execute` endpoint instead. This is false by default.
642
+ */
643
+ immediatelyExecute?: boolean;
644
+
645
+ /**
646
+ * Lookup ID from a previous receiver lookup request. If provided, this can make
647
+ * the quote creation more efficient by reusing cached lookup data. NOTE: This is
648
+ * required for UMA destinations due to counterparty institution requirements. See
649
+ * `senderCustomerInfo` for more information.
650
+ */
651
+ lookupId?: string;
652
+
653
+ /**
654
+ * Only relevant for UMA destinations. Key-value pairs of information about the
655
+ * sender which was requested by the counterparty (recipient) institution. Any
656
+ * fields specified in `requiredPayerDataFields` from the response of the
657
+ * `/receiver/uma/{receiverUmaAddress}` (lookupUma) endpoint MUST be provided here
658
+ * if they were requested. If the counterparty (recipient) institution did not
659
+ * request any information, this field can be omitted.
660
+ */
661
+ senderCustomerInfo?: { [key: string]: unknown };
662
+ }
663
+
664
+ export interface QuoteListParams extends DefaultPaginationParams {
665
+ /**
666
+ * Filter quotes created after this timestamp (inclusive)
667
+ */
668
+ createdAfter?: string;
669
+
670
+ /**
671
+ * Filter quotes created before this timestamp (inclusive)
672
+ */
673
+ createdBefore?: string;
674
+
675
+ /**
676
+ * Filter by sending customer ID
677
+ */
678
+ customerId?: string;
679
+
680
+ /**
681
+ * Maximum number of results to return (default 20, max 100)
682
+ */
683
+ limit?: number;
684
+
685
+ /**
686
+ * Filter by receiving account ID
687
+ */
688
+ receivingAccountId?: string;
689
+
690
+ /**
691
+ * Filter by receiving UMA address
692
+ */
693
+ receivingUmaAddress?: string;
694
+
695
+ /**
696
+ * Filter by sending account ID
697
+ */
698
+ sendingAccountId?: string;
699
+
700
+ /**
701
+ * Filter by sending UMA address
702
+ */
703
+ sendingUmaAddress?: string;
704
+
705
+ /**
706
+ * Filter by quote status
707
+ */
708
+ status?: 'PENDING' | 'PROCESSING' | 'COMPLETED' | 'FAILED' | 'EXPIRED';
709
+ }
710
+
711
+ export declare namespace Quotes {
712
+ export {
713
+ type BaseDestination as BaseDestination,
714
+ type BasePaymentAccountInfo as BasePaymentAccountInfo,
715
+ type BaseQuoteSource as BaseQuoteSource,
716
+ type Currency as Currency,
717
+ type OutgoingRateDetails as OutgoingRateDetails,
718
+ type PaymentInstructions as PaymentInstructions,
719
+ type Quote as Quote,
720
+ type QuoteDestinationOneOf as QuoteDestinationOneOf,
721
+ type QuoteSourceOneOf as QuoteSourceOneOf,
722
+ type QuotesDefaultPagination as QuotesDefaultPagination,
723
+ type QuoteCreateParams as QuoteCreateParams,
724
+ type QuoteListParams as QuoteListParams,
725
+ };
726
+ }