coinbase-api 0.3.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (218) hide show
  1. package/README.md +438 -14
  2. package/dist/cjs/CBAdvancedTradeClient.d.ts +559 -0
  3. package/dist/cjs/CBAdvancedTradeClient.js +574 -0
  4. package/dist/cjs/CBAdvancedTradeClient.js.map +1 -0
  5. package/dist/cjs/CBAppClient.d.ts +359 -0
  6. package/dist/cjs/CBAppClient.js +336 -0
  7. package/dist/cjs/CBAppClient.js.map +1 -0
  8. package/dist/cjs/CBCommerceClient.d.ts +110 -0
  9. package/dist/cjs/CBCommerceClient.js +105 -0
  10. package/dist/cjs/CBCommerceClient.js.map +1 -0
  11. package/dist/cjs/CBExchangeClient.d.ts +640 -0
  12. package/dist/cjs/CBExchangeClient.js +751 -0
  13. package/dist/cjs/CBExchangeClient.js.map +1 -0
  14. package/dist/cjs/CBInternationalClient.d.ts +381 -0
  15. package/dist/cjs/CBInternationalClient.js +437 -0
  16. package/dist/cjs/CBInternationalClient.js.map +1 -0
  17. package/dist/cjs/CBPrimeClient.d.ts +363 -0
  18. package/dist/cjs/CBPrimeClient.js +451 -0
  19. package/dist/cjs/CBPrimeClient.js.map +1 -0
  20. package/dist/cjs/WebsocketClient.d.ts +78 -0
  21. package/dist/cjs/WebsocketClient.js +534 -0
  22. package/dist/cjs/WebsocketClient.js.map +1 -0
  23. package/dist/cjs/index.d.ts +13 -0
  24. package/dist/cjs/index.js +30 -0
  25. package/dist/cjs/index.js.map +1 -0
  26. package/dist/cjs/lib/BaseRestClient.d.ts +66 -0
  27. package/dist/cjs/lib/BaseRestClient.js +436 -0
  28. package/dist/cjs/lib/BaseRestClient.js.map +1 -0
  29. package/dist/cjs/lib/BaseWSClient.d.ts +169 -0
  30. package/dist/cjs/lib/BaseWSClient.js +638 -0
  31. package/dist/cjs/lib/BaseWSClient.js.map +1 -0
  32. package/dist/cjs/lib/jwtNode.d.ts +13 -0
  33. package/dist/cjs/lib/jwtNode.js +52 -0
  34. package/dist/cjs/lib/jwtNode.js.map +1 -0
  35. package/dist/cjs/lib/misc-util.d.ts +1 -0
  36. package/dist/cjs/lib/misc-util.js +7 -0
  37. package/dist/cjs/lib/misc-util.js.map +1 -0
  38. package/dist/cjs/lib/requestUtils.d.ts +98 -0
  39. package/dist/cjs/lib/requestUtils.js +75 -0
  40. package/dist/cjs/lib/requestUtils.js.map +1 -0
  41. package/dist/cjs/lib/webCryptoAPI.d.ts +10 -0
  42. package/dist/cjs/lib/webCryptoAPI.js +83 -0
  43. package/dist/cjs/lib/webCryptoAPI.js.map +1 -0
  44. package/dist/cjs/lib/websocket/WsStore.d.ts +63 -0
  45. package/dist/cjs/lib/websocket/WsStore.js +254 -0
  46. package/dist/cjs/lib/websocket/WsStore.js.map +1 -0
  47. package/dist/cjs/lib/websocket/WsStore.types.d.ts +49 -0
  48. package/dist/cjs/lib/websocket/WsStore.types.js +14 -0
  49. package/dist/cjs/lib/websocket/WsStore.types.js.map +1 -0
  50. package/dist/cjs/lib/websocket/logger.d.ts +6 -0
  51. package/dist/cjs/lib/websocket/logger.js +16 -0
  52. package/dist/cjs/lib/websocket/logger.js.map +1 -0
  53. package/dist/cjs/lib/websocket/typeGuards.d.ts +27 -0
  54. package/dist/cjs/lib/websocket/typeGuards.js +86 -0
  55. package/dist/cjs/lib/websocket/typeGuards.js.map +1 -0
  56. package/dist/cjs/lib/websocket/websocket-util.d.ts +120 -0
  57. package/dist/cjs/lib/websocket/websocket-util.js +173 -0
  58. package/dist/cjs/lib/websocket/websocket-util.js.map +1 -0
  59. package/dist/cjs/package.json +3 -0
  60. package/dist/cjs/types/request/advanced-trade-client.d.ts +194 -0
  61. package/dist/cjs/types/request/advanced-trade-client.js +18 -0
  62. package/dist/cjs/types/request/advanced-trade-client.js.map +1 -0
  63. package/dist/cjs/types/request/coinbase-app-client.d.ts +80 -0
  64. package/dist/cjs/types/request/coinbase-app-client.js +28 -0
  65. package/dist/cjs/types/request/coinbase-app-client.js.map +1 -0
  66. package/dist/cjs/types/request/coinbase-exchange.d.ts +332 -0
  67. package/dist/cjs/types/request/coinbase-exchange.js +3 -0
  68. package/dist/cjs/types/request/coinbase-exchange.js.map +1 -0
  69. package/dist/cjs/types/request/coinbase-international.d.ts +160 -0
  70. package/dist/cjs/types/request/coinbase-international.js +13 -0
  71. package/dist/cjs/types/request/coinbase-international.js.map +1 -0
  72. package/dist/cjs/types/request/coinbase-prime.d.ts +298 -0
  73. package/dist/cjs/types/request/coinbase-prime.js +8 -0
  74. package/dist/cjs/types/request/coinbase-prime.js.map +1 -0
  75. package/dist/cjs/types/response/advanced-trade-client.d.ts +759 -0
  76. package/dist/cjs/types/response/advanced-trade-client.js +8 -0
  77. package/dist/cjs/types/response/advanced-trade-client.js.map +1 -0
  78. package/dist/cjs/types/response/coinbase-app-client.d.ts +168 -0
  79. package/dist/cjs/types/response/coinbase-app-client.js +18 -0
  80. package/dist/cjs/types/response/coinbase-app-client.js.map +1 -0
  81. package/dist/cjs/types/response/coinbase-exchange.d.ts +80 -0
  82. package/dist/cjs/types/response/coinbase-exchange.js +82 -0
  83. package/dist/cjs/types/response/coinbase-exchange.js.map +1 -0
  84. package/dist/cjs/types/response/coinbase-international.d.ts +40 -0
  85. package/dist/cjs/types/response/coinbase-international.js +42 -0
  86. package/dist/cjs/types/response/coinbase-international.js.map +1 -0
  87. package/dist/cjs/types/response/coinbase-prime.d.ts +70 -0
  88. package/dist/cjs/types/response/coinbase-prime.js +72 -0
  89. package/dist/cjs/types/response/coinbase-prime.js.map +1 -0
  90. package/dist/cjs/types/response/ws.d.ts +7 -0
  91. package/dist/cjs/types/response/ws.js +3 -0
  92. package/dist/cjs/types/response/ws.js.map +1 -0
  93. package/dist/cjs/types/shared.types.d.ts +60 -0
  94. package/dist/cjs/types/shared.types.js +3 -0
  95. package/dist/cjs/types/shared.types.js.map +1 -0
  96. package/dist/cjs/types/websockets/client.d.ts +73 -0
  97. package/dist/cjs/types/websockets/client.js +3 -0
  98. package/dist/cjs/types/websockets/client.js.map +1 -0
  99. package/dist/cjs/types/websockets/events.d.ts +40 -0
  100. package/dist/cjs/types/websockets/events.js +3 -0
  101. package/dist/cjs/types/websockets/events.js.map +1 -0
  102. package/dist/cjs/types/websockets/requests.d.ts +76 -0
  103. package/dist/cjs/types/websockets/requests.js +3 -0
  104. package/dist/cjs/types/websockets/requests.js.map +1 -0
  105. package/dist/cjs/types/websockets/wsAPI.d.ts +9 -0
  106. package/dist/cjs/types/websockets/wsAPI.js +3 -0
  107. package/dist/cjs/types/websockets/wsAPI.js.map +1 -0
  108. package/dist/mjs/CBAdvancedTradeClient.d.ts +559 -0
  109. package/dist/mjs/CBAdvancedTradeClient.js +570 -0
  110. package/dist/mjs/CBAdvancedTradeClient.js.map +1 -0
  111. package/dist/mjs/CBAppClient.d.ts +359 -0
  112. package/dist/mjs/CBAppClient.js +332 -0
  113. package/dist/mjs/CBAppClient.js.map +1 -0
  114. package/dist/mjs/CBCommerceClient.d.ts +110 -0
  115. package/dist/mjs/CBCommerceClient.js +101 -0
  116. package/dist/mjs/CBCommerceClient.js.map +1 -0
  117. package/dist/mjs/CBExchangeClient.d.ts +640 -0
  118. package/dist/mjs/CBExchangeClient.js +747 -0
  119. package/dist/mjs/CBExchangeClient.js.map +1 -0
  120. package/dist/mjs/CBInternationalClient.d.ts +381 -0
  121. package/dist/mjs/CBInternationalClient.js +433 -0
  122. package/dist/mjs/CBInternationalClient.js.map +1 -0
  123. package/dist/mjs/CBPrimeClient.d.ts +363 -0
  124. package/dist/mjs/CBPrimeClient.js +447 -0
  125. package/dist/mjs/CBPrimeClient.js.map +1 -0
  126. package/dist/mjs/WebsocketClient.d.ts +78 -0
  127. package/dist/mjs/WebsocketClient.js +530 -0
  128. package/dist/mjs/WebsocketClient.js.map +1 -0
  129. package/dist/mjs/index.d.ts +13 -0
  130. package/dist/mjs/index.js +14 -0
  131. package/dist/mjs/index.js.map +1 -0
  132. package/dist/mjs/lib/BaseRestClient.d.ts +66 -0
  133. package/dist/mjs/lib/BaseRestClient.js +429 -0
  134. package/dist/mjs/lib/BaseRestClient.js.map +1 -0
  135. package/dist/mjs/lib/BaseWSClient.d.ts +169 -0
  136. package/dist/mjs/lib/BaseWSClient.js +631 -0
  137. package/dist/mjs/lib/BaseWSClient.js.map +1 -0
  138. package/dist/mjs/lib/jwtNode.d.ts +13 -0
  139. package/dist/mjs/lib/jwtNode.js +45 -0
  140. package/dist/mjs/lib/jwtNode.js.map +1 -0
  141. package/dist/mjs/lib/misc-util.d.ts +1 -0
  142. package/dist/mjs/lib/misc-util.js +4 -0
  143. package/dist/mjs/lib/misc-util.js.map +1 -0
  144. package/dist/mjs/lib/requestUtils.d.ts +98 -0
  145. package/dist/mjs/lib/requestUtils.js +69 -0
  146. package/dist/mjs/lib/requestUtils.js.map +1 -0
  147. package/dist/mjs/lib/webCryptoAPI.d.ts +10 -0
  148. package/dist/mjs/lib/webCryptoAPI.js +79 -0
  149. package/dist/mjs/lib/webCryptoAPI.js.map +1 -0
  150. package/dist/mjs/lib/websocket/WsStore.d.ts +63 -0
  151. package/dist/mjs/lib/websocket/WsStore.js +249 -0
  152. package/dist/mjs/lib/websocket/WsStore.js.map +1 -0
  153. package/dist/mjs/lib/websocket/WsStore.types.d.ts +49 -0
  154. package/dist/mjs/lib/websocket/WsStore.types.js +11 -0
  155. package/dist/mjs/lib/websocket/WsStore.types.js.map +1 -0
  156. package/dist/mjs/lib/websocket/logger.d.ts +6 -0
  157. package/dist/mjs/lib/websocket/logger.js +13 -0
  158. package/dist/mjs/lib/websocket/logger.js.map +1 -0
  159. package/dist/mjs/lib/websocket/typeGuards.d.ts +27 -0
  160. package/dist/mjs/lib/websocket/typeGuards.js +78 -0
  161. package/dist/mjs/lib/websocket/typeGuards.js.map +1 -0
  162. package/dist/mjs/lib/websocket/websocket-util.d.ts +120 -0
  163. package/dist/mjs/lib/websocket/websocket-util.js +164 -0
  164. package/dist/mjs/lib/websocket/websocket-util.js.map +1 -0
  165. package/dist/mjs/package.json +3 -0
  166. package/dist/mjs/types/request/advanced-trade-client.d.ts +194 -0
  167. package/dist/mjs/types/request/advanced-trade-client.js +17 -0
  168. package/dist/mjs/types/request/advanced-trade-client.js.map +1 -0
  169. package/dist/mjs/types/request/coinbase-app-client.d.ts +80 -0
  170. package/dist/mjs/types/request/coinbase-app-client.js +27 -0
  171. package/dist/mjs/types/request/coinbase-app-client.js.map +1 -0
  172. package/dist/mjs/types/request/coinbase-exchange.d.ts +332 -0
  173. package/dist/mjs/types/request/coinbase-exchange.js +2 -0
  174. package/dist/mjs/types/request/coinbase-exchange.js.map +1 -0
  175. package/dist/mjs/types/request/coinbase-international.d.ts +160 -0
  176. package/dist/mjs/types/request/coinbase-international.js +12 -0
  177. package/dist/mjs/types/request/coinbase-international.js.map +1 -0
  178. package/dist/mjs/types/request/coinbase-prime.d.ts +298 -0
  179. package/dist/mjs/types/request/coinbase-prime.js +7 -0
  180. package/dist/mjs/types/request/coinbase-prime.js.map +1 -0
  181. package/dist/mjs/types/response/advanced-trade-client.d.ts +759 -0
  182. package/dist/mjs/types/response/advanced-trade-client.js +7 -0
  183. package/dist/mjs/types/response/advanced-trade-client.js.map +1 -0
  184. package/dist/mjs/types/response/coinbase-app-client.d.ts +168 -0
  185. package/dist/mjs/types/response/coinbase-app-client.js +17 -0
  186. package/dist/mjs/types/response/coinbase-app-client.js.map +1 -0
  187. package/dist/mjs/types/response/coinbase-exchange.d.ts +80 -0
  188. package/dist/mjs/types/response/coinbase-exchange.js +82 -0
  189. package/dist/mjs/types/response/coinbase-exchange.js.map +1 -0
  190. package/dist/mjs/types/response/coinbase-international.d.ts +40 -0
  191. package/dist/mjs/types/response/coinbase-international.js +42 -0
  192. package/dist/mjs/types/response/coinbase-international.js.map +1 -0
  193. package/dist/mjs/types/response/coinbase-prime.d.ts +70 -0
  194. package/dist/mjs/types/response/coinbase-prime.js +72 -0
  195. package/dist/mjs/types/response/coinbase-prime.js.map +1 -0
  196. package/dist/mjs/types/response/ws.d.ts +7 -0
  197. package/dist/mjs/types/response/ws.js +2 -0
  198. package/dist/mjs/types/response/ws.js.map +1 -0
  199. package/dist/mjs/types/shared.types.d.ts +60 -0
  200. package/dist/mjs/types/shared.types.js +2 -0
  201. package/dist/mjs/types/shared.types.js.map +1 -0
  202. package/dist/mjs/types/websockets/client.d.ts +73 -0
  203. package/dist/mjs/types/websockets/client.js +2 -0
  204. package/dist/mjs/types/websockets/client.js.map +1 -0
  205. package/dist/mjs/types/websockets/events.d.ts +40 -0
  206. package/dist/mjs/types/websockets/events.js +2 -0
  207. package/dist/mjs/types/websockets/events.js.map +1 -0
  208. package/dist/mjs/types/websockets/requests.d.ts +76 -0
  209. package/dist/mjs/types/websockets/requests.js +2 -0
  210. package/dist/mjs/types/websockets/requests.js.map +1 -0
  211. package/dist/mjs/types/websockets/wsAPI.d.ts +9 -0
  212. package/dist/mjs/types/websockets/wsAPI.js +2 -0
  213. package/dist/mjs/types/websockets/wsAPI.js.map +1 -0
  214. package/package.json +42 -30
  215. package/index.js +0 -1
  216. package/lib/index.d.ts +0 -1
  217. package/lib/index.js +0 -16
  218. package/lib/index.js.map +0 -1
@@ -0,0 +1,359 @@
1
+ import { AxiosRequestConfig } from 'axios';
2
+ import { BaseRestClient } from './lib/BaseRestClient.js';
3
+ import { RestClientOptions, RestClientType } from './lib/requestUtils.js';
4
+ import { CBAppDepositFundsRequest, CBAppSendMoneyRequest, CBAppTransferMoneyRequest, CBAppWithdrawFundsRequest } from './types/request/coinbase-app-client.js';
5
+ import { CBAppAccount, CBAppAddress, CBAppCryptocurrency, CBAppDepositWithdrawal, CBAppFiatCurrency, CBAppPagination, CBAppTransaction } from './types/response/coinbase-app-client.js';
6
+ /**
7
+ * REST client for Coinbase's Coinbase App API:
8
+ * https://docs.cdp.coinbase.com/coinbase-app/docs/welcome
9
+ */
10
+ export declare class CBAppClient extends BaseRestClient {
11
+ constructor(restClientOptions?: RestClientOptions, requestOptions?: AxiosRequestConfig);
12
+ getClientType(): RestClientType;
13
+ /**
14
+ *
15
+ * Account Endpoints
16
+ *
17
+ */
18
+ /**
19
+ * List Accounts
20
+ *
21
+ * List a current user's accounts to which the authentication method has access to.
22
+ *
23
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
24
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of accounts.
25
+ */
26
+ getAccounts(params?: {
27
+ paginationURL?: string;
28
+ }): Promise<{
29
+ data: CBAppAccount[];
30
+ pagination: CBAppPagination;
31
+ }>;
32
+ /**
33
+ * Show Account
34
+ *
35
+ * Get a current user's account by account ID or currency string.
36
+ */
37
+ getAccount(params: {
38
+ account_id: string;
39
+ }): Promise<{
40
+ data: CBAppAccount;
41
+ }>;
42
+ /**
43
+ *
44
+ * Address Endpoints
45
+ *
46
+ */
47
+ /**
48
+ * Create Address
49
+ *
50
+ * Creates a new address for an account. Addresses can be created for wallet account types.
51
+ */
52
+ createAddress(params: {
53
+ account_id: string;
54
+ name?: string;
55
+ }): Promise<{
56
+ data: CBAppAddress;
57
+ }>;
58
+ /**
59
+ * List Addresses
60
+ *
61
+ * Lists addresses for an account.
62
+ *
63
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
64
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of addresses.
65
+ */
66
+ getAddresses(params: {
67
+ account_id: string;
68
+ paginationURL?: string;
69
+ }): Promise<{
70
+ pagination: CBAppPagination;
71
+ data: CBAppAddress[];
72
+ }>;
73
+ /**
74
+ * Show Address
75
+ *
76
+ * Get an single address for an account.
77
+ * A regular cryptocurrency address can be used in place of address_id but the address must be associated with the correct account.
78
+ *
79
+ * !! An address can only be associated with one account. See Create Address to create new addresses.
80
+ */
81
+ getAddress(params: {
82
+ account_id: string;
83
+ addressId: string;
84
+ }): Promise<{
85
+ data: CBAppAddress;
86
+ }>;
87
+ /**
88
+ * List Address Transactions
89
+ *
90
+ * List transactions that have been sent to a specific address.
91
+ * A regular cryptocurrency address can be used in place of address_id but the address must be associated with the correct account.
92
+ *
93
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
94
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of transactions.
95
+ */
96
+ getAddressTransactions(params: {
97
+ account_id: string;
98
+ addressId: string;
99
+ paginationURL?: string;
100
+ }): Promise<{
101
+ pagination: CBAppPagination;
102
+ data: CBAppTransaction[];
103
+ }>;
104
+ /**
105
+ *
106
+ * Transactions Endpoints
107
+ *
108
+ */
109
+ /**
110
+ * Send Money
111
+ *
112
+ * Send funds to a network address for any Coinbase supported asset, or email address of the recipient.
113
+ * No transaction fees are required for off-blockchain cryptocurrency transactions.
114
+ */
115
+ sendMoney(params: CBAppSendMoneyRequest): Promise<{
116
+ data: CBAppTransaction;
117
+ }>;
118
+ /**
119
+ * Transfer Money
120
+ *
121
+ * Transfer any Coinbase supported digital asset between two of a single user's accounts.
122
+ * Accounts must support the same currency for transfers to be successful.
123
+ */
124
+ transferMoney(params: CBAppTransferMoneyRequest): Promise<{
125
+ data: CBAppTransaction;
126
+ }>;
127
+ /**
128
+ * List Transactions
129
+ *
130
+ * Lists the transactions of an account by account ID.
131
+ *
132
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
133
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of transactions.
134
+ */
135
+ getTransactions(params: {
136
+ account_id: string;
137
+ paginationURL?: string;
138
+ }): Promise<{
139
+ pagination: CBAppPagination;
140
+ data: CBAppTransaction[];
141
+ }>;
142
+ /**
143
+ * Show Transaction
144
+ *
145
+ * Get a single transaction for an account.
146
+ */
147
+ getTransaction(params: {
148
+ account_id: string;
149
+ transactionId: string;
150
+ }): Promise<{
151
+ data: CBAppTransaction;
152
+ }>;
153
+ /**
154
+ *
155
+ * Deposits Endpoints
156
+ *
157
+ */
158
+ /**
159
+ * Deposit Funds
160
+ *
161
+ * Deposits user-defined amount of funds to a fiat account.
162
+ */
163
+ depositFunds(params: CBAppDepositFundsRequest): Promise<{
164
+ data: CBAppDepositWithdrawal;
165
+ }>;
166
+ /**
167
+ * Commit Deposit
168
+ *
169
+ * Completes a deposit that is created in commit: false state.
170
+ */
171
+ commitDeposit(params: {
172
+ account_id: string;
173
+ deposit_id: string;
174
+ }): Promise<{
175
+ data: CBAppDepositWithdrawal;
176
+ }>;
177
+ /**
178
+ * List Deposits
179
+ *
180
+ * Lists fiat deposits for an account.
181
+ *
182
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
183
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of deposits.
184
+ */
185
+ getDeposits(params: {
186
+ account_id: string;
187
+ paginationURL?: string;
188
+ }): Promise<{
189
+ pagination: CBAppPagination;
190
+ data: CBAppDepositWithdrawal[];
191
+ }>;
192
+ /**
193
+ * Show Deposit
194
+ *
195
+ * Get one deposit by deposit Id.
196
+ */
197
+ getDeposit(params: {
198
+ account_id: string;
199
+ deposit_id: string;
200
+ }): Promise<{
201
+ data: CBAppDepositWithdrawal;
202
+ }>;
203
+ /**
204
+ *
205
+ * Withdrawals Endpoints
206
+ *
207
+ */
208
+ /**
209
+ * Withdraw Funds
210
+ *
211
+ * Withdraws a user-defined amount of funds from a fiat account.
212
+ */
213
+ withdrawFunds(params: CBAppWithdrawFundsRequest): Promise<{
214
+ data: CBAppDepositWithdrawal;
215
+ }>;
216
+ /**
217
+ * Commit Withdrawal
218
+ *
219
+ * Completes a withdrawal that is created in commit: false state.
220
+ */
221
+ commitWithdrawal(params: {
222
+ account_id: string;
223
+ withdrawal_id: string;
224
+ }): Promise<{
225
+ data: CBAppDepositWithdrawal;
226
+ }>;
227
+ /**
228
+ * List Withdrawals
229
+ *
230
+ * Lists withdrawals for an account.
231
+ *
232
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
233
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of withdrawals.
234
+ */
235
+ getWithdrawals(params: {
236
+ account_id: string;
237
+ paginationURL?: string;
238
+ }): Promise<{
239
+ pagination: CBAppPagination;
240
+ data: CBAppDepositWithdrawal[];
241
+ }>;
242
+ /**
243
+ * Show Withdrawal
244
+ *
245
+ * Get a single withdrawal.
246
+ */
247
+ getWithdrawal(params: {
248
+ account_id: string;
249
+ withdrawal_id: string;
250
+ }): Promise<{
251
+ data: CBAppDepositWithdrawal;
252
+ }>;
253
+ /**
254
+ *
255
+ * DATA - Currencies Endpoints
256
+ *
257
+ */
258
+ /**
259
+ * Get Fiat Currencies
260
+ *
261
+ * Lists known fiat currencies. Currency codes conform to the ISO 4217 standard where possible.
262
+ * Currencies with no representation in ISO 4217 may use a custom code.
263
+ */
264
+ getFiatCurrencies(): Promise<{
265
+ data: CBAppFiatCurrency[];
266
+ }>;
267
+ /**
268
+ * Get Cryptocurrencies
269
+ *
270
+ * Lists known cryptocurrencies.
271
+ */
272
+ getCryptocurrencies(): Promise<CBAppCryptocurrency[]>;
273
+ /**
274
+ *
275
+ * DATA- Exchange rates Endpoints
276
+ *
277
+ */
278
+ /**
279
+ * Get Exchange Rates
280
+ *
281
+ * Get current exchange rates. Default base currency is USD but it can be defined as any supported currency.
282
+ * Returned rates will define the exchange rate for one unit of the base currency.
283
+ */
284
+ getExchangeRates(params?: {
285
+ currency?: string;
286
+ }): Promise<{
287
+ data: {
288
+ currency: string;
289
+ rates: {
290
+ [key: string]: string;
291
+ };
292
+ };
293
+ }>;
294
+ /**
295
+ *
296
+ * DATA - Prices Endpoints
297
+ *
298
+ */
299
+ /**
300
+ * Get Buy Price
301
+ *
302
+ * Get the total price to buy one bitcoin or ether.
303
+ * This endpoint doesn't require authentication.
304
+ */
305
+ getBuyPrice(params: {
306
+ currencyPair: string;
307
+ }): Promise<{
308
+ data: {
309
+ amount: string;
310
+ currency: string;
311
+ };
312
+ }>;
313
+ /**
314
+ * Get Sell Price
315
+ *
316
+ * Get the total price to sell one bitcoin or ether.
317
+ * This endpoint doesn't require authentication.
318
+ */
319
+ getSellPrice(params: {
320
+ currencyPair: string;
321
+ }): Promise<{
322
+ data: {
323
+ amount: string;
324
+ currency: string;
325
+ };
326
+ }>;
327
+ /**
328
+ * Get Spot Price
329
+ *
330
+ * Get the current market price for bitcoin. This is usually somewhere in between the buy and sell price.
331
+ * This endpoint doesn't require authentication.
332
+ */
333
+ getSpotPrice(params: {
334
+ currencyPair: string;
335
+ date?: string;
336
+ }): Promise<{
337
+ data: {
338
+ amount: string;
339
+ currency: string;
340
+ };
341
+ }>;
342
+ /**
343
+ *
344
+ * DATA - Time Endpoints
345
+ *
346
+ */
347
+ /**
348
+ * Get Current Time
349
+ *
350
+ * Get the API server time.
351
+ * This endpoint doesn't require authentication.
352
+ */
353
+ getCurrentTime(): Promise<{
354
+ data: {
355
+ iso: string;
356
+ epoch: number;
357
+ };
358
+ }>;
359
+ }
@@ -0,0 +1,336 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CBAppClient = void 0;
4
+ const BaseRestClient_js_1 = require("./lib/BaseRestClient.js");
5
+ const requestUtils_js_1 = require("./lib/requestUtils.js");
6
+ /**
7
+ * REST client for Coinbase's Coinbase App API:
8
+ * https://docs.cdp.coinbase.com/coinbase-app/docs/welcome
9
+ */
10
+ class CBAppClient extends BaseRestClient_js_1.BaseRestClient {
11
+ constructor(restClientOptions = {}, requestOptions = {}) {
12
+ super(restClientOptions, {
13
+ ...requestOptions,
14
+ headers: {
15
+ // Some endpoints return a warning if a version header isn't included: https://docs.cdp.coinbase.com/coinbase-app/docs/versioning
16
+ // Currently set to a date from the changelog: https://docs.cdp.coinbase.com/coinbase-app/docs/changelog
17
+ 'CB-VERSION': '2024-09-13',
18
+ ...requestOptions.headers,
19
+ },
20
+ });
21
+ return this;
22
+ }
23
+ getClientType() {
24
+ return requestUtils_js_1.REST_CLIENT_TYPE_ENUM.coinbaseApp;
25
+ }
26
+ /**
27
+ *
28
+ * Account Endpoints
29
+ *
30
+ */
31
+ /**
32
+ * List Accounts
33
+ *
34
+ * List a current user's accounts to which the authentication method has access to.
35
+ *
36
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
37
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of accounts.
38
+ */
39
+ getAccounts(params) {
40
+ if (params?.paginationURL) {
41
+ return this.getPrivate(params.paginationURL);
42
+ }
43
+ return this.getPrivate('/v2/accounts');
44
+ }
45
+ /**
46
+ * Show Account
47
+ *
48
+ * Get a current user's account by account ID or currency string.
49
+ */
50
+ getAccount(params) {
51
+ return this.getPrivate(`/v2/accounts/${params.account_id}`);
52
+ }
53
+ /**
54
+ *
55
+ * Address Endpoints
56
+ *
57
+ */
58
+ /**
59
+ * Create Address
60
+ *
61
+ * Creates a new address for an account. Addresses can be created for wallet account types.
62
+ */
63
+ createAddress(params) {
64
+ return this.postPrivate(`/v2/accounts/${params.account_id}/addresses`, {
65
+ body: params,
66
+ });
67
+ }
68
+ /**
69
+ * List Addresses
70
+ *
71
+ * Lists addresses for an account.
72
+ *
73
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
74
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of addresses.
75
+ */
76
+ getAddresses(params) {
77
+ if (params?.paginationURL) {
78
+ return this.getPrivate(params.paginationURL);
79
+ }
80
+ return this.getPrivate(`/v2/accounts/${params.account_id}/addresses`);
81
+ }
82
+ /**
83
+ * Show Address
84
+ *
85
+ * Get an single address for an account.
86
+ * A regular cryptocurrency address can be used in place of address_id but the address must be associated with the correct account.
87
+ *
88
+ * !! An address can only be associated with one account. See Create Address to create new addresses.
89
+ */
90
+ getAddress(params) {
91
+ return this.getPrivate(`/v2/accounts/${params.account_id}/addresses/${params.addressId}`);
92
+ }
93
+ /**
94
+ * List Address Transactions
95
+ *
96
+ * List transactions that have been sent to a specific address.
97
+ * A regular cryptocurrency address can be used in place of address_id but the address must be associated with the correct account.
98
+ *
99
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
100
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of transactions.
101
+ */
102
+ getAddressTransactions(params) {
103
+ if (params?.paginationURL) {
104
+ return this.getPrivate(params.paginationURL);
105
+ }
106
+ return this.getPrivate(`/v2/accounts/${params.account_id}/addresses/${params.addressId}/transactions`);
107
+ }
108
+ /**
109
+ *
110
+ * Transactions Endpoints
111
+ *
112
+ */
113
+ /**
114
+ * Send Money
115
+ *
116
+ * Send funds to a network address for any Coinbase supported asset, or email address of the recipient.
117
+ * No transaction fees are required for off-blockchain cryptocurrency transactions.
118
+ */
119
+ sendMoney(params) {
120
+ const { account_id, ...restParams } = params;
121
+ return this.postPrivate(`/v2/accounts/${account_id}/transactions`, {
122
+ body: restParams,
123
+ });
124
+ }
125
+ /**
126
+ * Transfer Money
127
+ *
128
+ * Transfer any Coinbase supported digital asset between two of a single user's accounts.
129
+ * Accounts must support the same currency for transfers to be successful.
130
+ */
131
+ transferMoney(params) {
132
+ const { account_id, ...restParams } = params;
133
+ return this.postPrivate(`/v2/accounts/${account_id}/transactions`, {
134
+ body: restParams,
135
+ });
136
+ }
137
+ /**
138
+ * List Transactions
139
+ *
140
+ * Lists the transactions of an account by account ID.
141
+ *
142
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
143
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of transactions.
144
+ */
145
+ getTransactions(params) {
146
+ if (params?.paginationURL) {
147
+ return this.getPrivate(params.paginationURL);
148
+ }
149
+ return this.getPrivate(`/v2/accounts/${params.account_id}/transactions`);
150
+ }
151
+ /**
152
+ * Show Transaction
153
+ *
154
+ * Get a single transaction for an account.
155
+ */
156
+ getTransaction(params) {
157
+ return this.getPrivate(`/v2/accounts/${params.account_id}/transactions/${params.transactionId}`);
158
+ }
159
+ /**
160
+ *
161
+ * Deposits Endpoints
162
+ *
163
+ */
164
+ /**
165
+ * Deposit Funds
166
+ *
167
+ * Deposits user-defined amount of funds to a fiat account.
168
+ */
169
+ depositFunds(params) {
170
+ const { account_id, ...restParams } = params;
171
+ return this.postPrivate(`/v2/accounts/${account_id}/deposits`, {
172
+ body: restParams,
173
+ });
174
+ }
175
+ /**
176
+ * Commit Deposit
177
+ *
178
+ * Completes a deposit that is created in commit: false state.
179
+ */
180
+ commitDeposit(params) {
181
+ return this.postPrivate(`/v2/accounts/${params.account_id}/deposits/${params.deposit_id}/commit`);
182
+ }
183
+ /**
184
+ * List Deposits
185
+ *
186
+ * Lists fiat deposits for an account.
187
+ *
188
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
189
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of deposits.
190
+ */
191
+ getDeposits(params) {
192
+ if (params?.paginationURL) {
193
+ return this.getPrivate(params.paginationURL);
194
+ }
195
+ return this.getPrivate(`/v2/accounts/${params.account_id}/deposits`);
196
+ }
197
+ /**
198
+ * Show Deposit
199
+ *
200
+ * Get one deposit by deposit Id.
201
+ */
202
+ getDeposit(params) {
203
+ return this.getPrivate(`/v2/accounts/${params.account_id}/deposits/${params.deposit_id}`);
204
+ }
205
+ /**
206
+ *
207
+ * Withdrawals Endpoints
208
+ *
209
+ */
210
+ /**
211
+ * Withdraw Funds
212
+ *
213
+ * Withdraws a user-defined amount of funds from a fiat account.
214
+ */
215
+ withdrawFunds(params) {
216
+ const { account_id, ...restParams } = params;
217
+ return this.postPrivate(`/v2/accounts/${account_id}/withdrawals`, {
218
+ body: restParams,
219
+ });
220
+ }
221
+ /**
222
+ * Commit Withdrawal
223
+ *
224
+ * Completes a withdrawal that is created in commit: false state.
225
+ */
226
+ commitWithdrawal(params) {
227
+ return this.postPrivate(`/v2/accounts/${params.account_id}/withdrawals/${params.withdrawal_id}/commit`);
228
+ }
229
+ /**
230
+ * List Withdrawals
231
+ *
232
+ * Lists withdrawals for an account.
233
+ *
234
+ * This endpoint is paginated. In case you are calling it first time, leave paginationURL empty.
235
+ * If you are paginating, provide the paginationURL value from the previous response and you will receive the next page of withdrawals.
236
+ */
237
+ getWithdrawals(params) {
238
+ if (params?.paginationURL) {
239
+ return this.getPrivate(params.paginationURL);
240
+ }
241
+ return this.getPrivate(`/v2/accounts/${params.account_id}/withdrawals`);
242
+ }
243
+ /**
244
+ * Show Withdrawal
245
+ *
246
+ * Get a single withdrawal.
247
+ */
248
+ getWithdrawal(params) {
249
+ return this.getPrivate(`/v2/accounts/${params.account_id}/withdrawals/${params.withdrawal_id}`);
250
+ }
251
+ /**
252
+ *
253
+ * DATA - Currencies Endpoints
254
+ *
255
+ */
256
+ /**
257
+ * Get Fiat Currencies
258
+ *
259
+ * Lists known fiat currencies. Currency codes conform to the ISO 4217 standard where possible.
260
+ * Currencies with no representation in ISO 4217 may use a custom code.
261
+ */
262
+ getFiatCurrencies() {
263
+ return this.get('/v2/currencies');
264
+ }
265
+ /**
266
+ * Get Cryptocurrencies
267
+ *
268
+ * Lists known cryptocurrencies.
269
+ */
270
+ getCryptocurrencies() {
271
+ return this.get('/v2/currencies/crypto');
272
+ }
273
+ /**
274
+ *
275
+ * DATA- Exchange rates Endpoints
276
+ *
277
+ */
278
+ /**
279
+ * Get Exchange Rates
280
+ *
281
+ * Get current exchange rates. Default base currency is USD but it can be defined as any supported currency.
282
+ * Returned rates will define the exchange rate for one unit of the base currency.
283
+ */
284
+ getExchangeRates(params) {
285
+ return this.get(`/v2/exchange-rates`, params);
286
+ }
287
+ /**
288
+ *
289
+ * DATA - Prices Endpoints
290
+ *
291
+ */
292
+ /**
293
+ * Get Buy Price
294
+ *
295
+ * Get the total price to buy one bitcoin or ether.
296
+ * This endpoint doesn't require authentication.
297
+ */
298
+ getBuyPrice(params) {
299
+ return this.get(`/v2/prices/${params.currencyPair}/buy`);
300
+ }
301
+ /**
302
+ * Get Sell Price
303
+ *
304
+ * Get the total price to sell one bitcoin or ether.
305
+ * This endpoint doesn't require authentication.
306
+ */
307
+ getSellPrice(params) {
308
+ return this.get(`/v2/prices/${params.currencyPair}/sell`);
309
+ }
310
+ /**
311
+ * Get Spot Price
312
+ *
313
+ * Get the current market price for bitcoin. This is usually somewhere in between the buy and sell price.
314
+ * This endpoint doesn't require authentication.
315
+ */
316
+ getSpotPrice(params) {
317
+ const { currencyPair, ...query } = params;
318
+ return this.get(`/v2/prices/${currencyPair}/spot`, query);
319
+ }
320
+ /**
321
+ *
322
+ * DATA - Time Endpoints
323
+ *
324
+ */
325
+ /**
326
+ * Get Current Time
327
+ *
328
+ * Get the API server time.
329
+ * This endpoint doesn't require authentication.
330
+ */
331
+ getCurrentTime() {
332
+ return this.get('/v2/time');
333
+ }
334
+ }
335
+ exports.CBAppClient = CBAppClient;
336
+ //# sourceMappingURL=CBAppClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CBAppClient.js","sourceRoot":"","sources":["../../src/CBAppClient.ts"],"names":[],"mappings":";;;AAEA,+DAAyD;AACzD,2DAI+B;AAiB/B;;;GAGG;AACH,MAAa,WAAY,SAAQ,kCAAc;IAC7C,YACE,oBAAuC,EAAE,EACzC,iBAAqC,EAAE;QAEvC,KAAK,CAAC,iBAAiB,EAAE;YACvB,GAAG,cAAc;YACjB,OAAO,EAAE;gBACP,iIAAiI;gBACjI,wGAAwG;gBACxG,YAAY,EAAE,YAAY;gBAC1B,GAAG,cAAc,CAAC,OAAO;aAC1B;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa;QACX,OAAO,uCAAqB,CAAC,WAAW,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IAEH;;;;;;;OAOG;IACH,WAAW,CAAC,MAAmC;QAI7C,IAAI,MAAM,EAAE,aAAa,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,MAA8B;QAGvC,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IAEH;;;;OAIG;IACH,aAAa,CAAC,MAA6C;QAGzD,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,MAAM,CAAC,UAAU,YAAY,EAAE;YACrE,IAAI,EAAE,MAAM;SACb,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,MAGZ;QAIC,IAAI,MAAM,EAAE,aAAa,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,MAAM,CAAC,UAAU,YAAY,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;OAOG;IACH,UAAU,CAAC,MAAiD;QAG1D,OAAO,IAAI,CAAC,UAAU,CACpB,gBAAgB,MAAM,CAAC,UAAU,cAAc,MAAM,CAAC,SAAS,EAAE,CAClE,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,sBAAsB,CAAC,MAItB;QAIC,IAAI,MAAM,EAAE,aAAa,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CACpB,gBAAgB,MAAM,CAAC,UAAU,cAAc,MAAM,CAAC,SAAS,eAAe,CAC/E,CAAC;IACJ,CAAC;IAED;;;;OAIG;IAEH;;;;;OAKG;IACH,SAAS,CACP,MAA6B;QAE7B,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,UAAU,eAAe,EAAE;YACjE,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,aAAa,CACX,MAAiC;QAEjC,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,UAAU,eAAe,EAAE;YACjE,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,eAAe,CAAC,MAGf;QAIC,IAAI,MAAM,EAAE,aAAa,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,MAAM,CAAC,UAAU,eAAe,CAAC,CAAC;IAC3E,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,MAGd;QAGC,OAAO,IAAI,CAAC,UAAU,CACpB,gBAAgB,MAAM,CAAC,UAAU,iBAAiB,MAAM,CAAC,aAAa,EAAE,CACzE,CAAC;IACJ,CAAC;IAED;;;;OAIG;IAEH;;;;OAIG;IACH,YAAY,CACV,MAAgC;QAEhC,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,UAAU,WAAW,EAAE;YAC7D,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,MAGb;QACC,OAAO,IAAI,CAAC,WAAW,CACrB,gBAAgB,MAAM,CAAC,UAAU,aAAa,MAAM,CAAC,UAAU,SAAS,CACzE,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,WAAW,CAAC,MAAsD;QAIhE,IAAI,MAAM,EAAE,aAAa,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,MAAM,CAAC,UAAU,WAAW,CAAC,CAAC;IACvE,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,MAAkD;QAG3D,OAAO,IAAI,CAAC,UAAU,CACpB,gBAAgB,MAAM,CAAC,UAAU,aAAa,MAAM,CAAC,UAAU,EAAE,CAClE,CAAC;IACJ,CAAC;IAED;;;;OAIG;IAEH;;;;OAIG;IACH,aAAa,CACX,MAAiC;QAEjC,MAAM,EAAE,UAAU,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,gBAAgB,UAAU,cAAc,EAAE;YAChE,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,MAGhB;QACC,OAAO,IAAI,CAAC,WAAW,CACrB,gBAAgB,MAAM,CAAC,UAAU,gBAAgB,MAAM,CAAC,aAAa,SAAS,CAC/E,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,cAAc,CAAC,MAGd;QAIC,IAAI,MAAM,EAAE,aAAa,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,MAAM,CAAC,UAAU,cAAc,CAAC,CAAC;IAC1E,CAAC;IAED;;;;OAIG;IACH,aAAa,CAAC,MAGb;QAGC,OAAO,IAAI,CAAC,UAAU,CACpB,gBAAgB,MAAM,CAAC,UAAU,gBAAgB,MAAM,CAAC,aAAa,EAAE,CACxE,CAAC;IACJ,CAAC;IAED;;;;OAIG;IAEH;;;;;OAKG;IACH,iBAAiB;QAGf,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IAEH;;;;;OAKG;IACH,gBAAgB,CAAC,MAA8B;QAM7C,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IAEH;;;;;OAKG;IACH,WAAW,CAAC,MAAgC;QAM1C,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,YAAY,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,MAAgC;QAM3C,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,YAAY,OAAO,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,MAA+C;QAM1D,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,GAAG,MAAM,CAAC;QAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,YAAY,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IAEH;;;;;OAKG;IACH,cAAc;QAMZ,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;CACF;AAldD,kCAkdC"}