@pagci/node 0.1.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 (219) hide show
  1. package/dist/cjs/client.d.ts +65 -0
  2. package/dist/cjs/client.d.ts.map +1 -0
  3. package/dist/cjs/client.js +149 -0
  4. package/dist/cjs/client.js.map +1 -0
  5. package/dist/cjs/crypto/CryptoProvider.d.ts +25 -0
  6. package/dist/cjs/crypto/CryptoProvider.d.ts.map +1 -0
  7. package/dist/cjs/crypto/CryptoProvider.js +3 -0
  8. package/dist/cjs/crypto/CryptoProvider.js.map +1 -0
  9. package/dist/cjs/crypto/NodeCryptoProvider.d.ts +16 -0
  10. package/dist/cjs/crypto/NodeCryptoProvider.d.ts.map +1 -0
  11. package/dist/cjs/crypto/NodeCryptoProvider.js +36 -0
  12. package/dist/cjs/crypto/NodeCryptoProvider.js.map +1 -0
  13. package/dist/cjs/errors.d.ts +91 -0
  14. package/dist/cjs/errors.d.ts.map +1 -0
  15. package/dist/cjs/errors.js +171 -0
  16. package/dist/cjs/errors.js.map +1 -0
  17. package/dist/cjs/idempotency.d.ts +14 -0
  18. package/dist/cjs/idempotency.d.ts.map +1 -0
  19. package/dist/cjs/idempotency.js +26 -0
  20. package/dist/cjs/idempotency.js.map +1 -0
  21. package/dist/cjs/index.d.ts +20 -0
  22. package/dist/cjs/index.d.ts.map +1 -0
  23. package/dist/cjs/index.js +48 -0
  24. package/dist/cjs/index.js.map +1 -0
  25. package/dist/cjs/net/HttpClient.d.ts +17 -0
  26. package/dist/cjs/net/HttpClient.d.ts.map +1 -0
  27. package/dist/cjs/net/HttpClient.js +3 -0
  28. package/dist/cjs/net/HttpClient.js.map +1 -0
  29. package/dist/cjs/net/NodeHttpClient.d.ts +13 -0
  30. package/dist/cjs/net/NodeHttpClient.d.ts.map +1 -0
  31. package/dist/cjs/net/NodeHttpClient.js +132 -0
  32. package/dist/cjs/net/NodeHttpClient.js.map +1 -0
  33. package/dist/cjs/package.json +1 -0
  34. package/dist/cjs/pagination.d.ts +53 -0
  35. package/dist/cjs/pagination.d.ts.map +1 -0
  36. package/dist/cjs/pagination.js +99 -0
  37. package/dist/cjs/pagination.js.map +1 -0
  38. package/dist/cjs/querystring.d.ts +8 -0
  39. package/dist/cjs/querystring.d.ts.map +1 -0
  40. package/dist/cjs/querystring.js +20 -0
  41. package/dist/cjs/querystring.js.map +1 -0
  42. package/dist/cjs/requestSender.d.ts +40 -0
  43. package/dist/cjs/requestSender.d.ts.map +1 -0
  44. package/dist/cjs/requestSender.js +127 -0
  45. package/dist/cjs/requestSender.js.map +1 -0
  46. package/dist/cjs/resources/balance.d.ts +14 -0
  47. package/dist/cjs/resources/balance.d.ts.map +1 -0
  48. package/dist/cjs/resources/balance.js +31 -0
  49. package/dist/cjs/resources/balance.js.map +1 -0
  50. package/dist/cjs/resources/debts.d.ts +17 -0
  51. package/dist/cjs/resources/debts.d.ts.map +1 -0
  52. package/dist/cjs/resources/debts.js +35 -0
  53. package/dist/cjs/resources/debts.js.map +1 -0
  54. package/dist/cjs/resources/payments.d.ts +44 -0
  55. package/dist/cjs/resources/payments.d.ts.map +1 -0
  56. package/dist/cjs/resources/payments.js +66 -0
  57. package/dist/cjs/resources/payments.js.map +1 -0
  58. package/dist/cjs/resources/tokens.d.ts +22 -0
  59. package/dist/cjs/resources/tokens.d.ts.map +1 -0
  60. package/dist/cjs/resources/tokens.js +40 -0
  61. package/dist/cjs/resources/tokens.js.map +1 -0
  62. package/dist/cjs/resources/webhookEndpoints.d.ts +27 -0
  63. package/dist/cjs/resources/webhookEndpoints.d.ts.map +1 -0
  64. package/dist/cjs/resources/webhookEndpoints.js +55 -0
  65. package/dist/cjs/resources/webhookEndpoints.js.map +1 -0
  66. package/dist/cjs/resources/withdrawals.d.ts +23 -0
  67. package/dist/cjs/resources/withdrawals.d.ts.map +1 -0
  68. package/dist/cjs/resources/withdrawals.js +46 -0
  69. package/dist/cjs/resources/withdrawals.js.map +1 -0
  70. package/dist/cjs/retry.d.ts +34 -0
  71. package/dist/cjs/retry.d.ts.map +1 -0
  72. package/dist/cjs/retry.js +72 -0
  73. package/dist/cjs/retry.js.map +1 -0
  74. package/dist/cjs/types/balance.d.ts +35 -0
  75. package/dist/cjs/types/balance.d.ts.map +1 -0
  76. package/dist/cjs/types/balance.js +5 -0
  77. package/dist/cjs/types/balance.js.map +1 -0
  78. package/dist/cjs/types/common.d.ts +57 -0
  79. package/dist/cjs/types/common.d.ts.map +1 -0
  80. package/dist/cjs/types/common.js +5 -0
  81. package/dist/cjs/types/common.js.map +1 -0
  82. package/dist/cjs/types/debt.d.ts +49 -0
  83. package/dist/cjs/types/debt.d.ts.map +1 -0
  84. package/dist/cjs/types/debt.js +5 -0
  85. package/dist/cjs/types/debt.js.map +1 -0
  86. package/dist/cjs/types/error.d.ts +112 -0
  87. package/dist/cjs/types/error.d.ts.map +1 -0
  88. package/dist/cjs/types/error.js +132 -0
  89. package/dist/cjs/types/error.js.map +1 -0
  90. package/dist/cjs/types/index.d.ts +10 -0
  91. package/dist/cjs/types/index.d.ts.map +1 -0
  92. package/dist/cjs/types/index.js +9 -0
  93. package/dist/cjs/types/index.js.map +1 -0
  94. package/dist/cjs/types/payment.d.ts +246 -0
  95. package/dist/cjs/types/payment.d.ts.map +1 -0
  96. package/dist/cjs/types/payment.js +5 -0
  97. package/dist/cjs/types/payment.js.map +1 -0
  98. package/dist/cjs/types/token.d.ts +39 -0
  99. package/dist/cjs/types/token.d.ts.map +1 -0
  100. package/dist/cjs/types/token.js +5 -0
  101. package/dist/cjs/types/token.js.map +1 -0
  102. package/dist/cjs/types/webhook.d.ts +102 -0
  103. package/dist/cjs/types/webhook.d.ts.map +1 -0
  104. package/dist/cjs/types/webhook.js +18 -0
  105. package/dist/cjs/types/webhook.js.map +1 -0
  106. package/dist/cjs/types/withdrawal.d.ts +89 -0
  107. package/dist/cjs/types/withdrawal.d.ts.map +1 -0
  108. package/dist/cjs/types/withdrawal.js +5 -0
  109. package/dist/cjs/types/withdrawal.js.map +1 -0
  110. package/dist/esm/client.d.ts +65 -0
  111. package/dist/esm/client.d.ts.map +1 -0
  112. package/dist/esm/client.js +145 -0
  113. package/dist/esm/client.js.map +1 -0
  114. package/dist/esm/crypto/CryptoProvider.d.ts +25 -0
  115. package/dist/esm/crypto/CryptoProvider.d.ts.map +1 -0
  116. package/dist/esm/crypto/CryptoProvider.js +2 -0
  117. package/dist/esm/crypto/CryptoProvider.js.map +1 -0
  118. package/dist/esm/crypto/NodeCryptoProvider.d.ts +16 -0
  119. package/dist/esm/crypto/NodeCryptoProvider.d.ts.map +1 -0
  120. package/dist/esm/crypto/NodeCryptoProvider.js +32 -0
  121. package/dist/esm/crypto/NodeCryptoProvider.js.map +1 -0
  122. package/dist/esm/errors.d.ts +91 -0
  123. package/dist/esm/errors.d.ts.map +1 -0
  124. package/dist/esm/errors.js +155 -0
  125. package/dist/esm/errors.js.map +1 -0
  126. package/dist/esm/idempotency.d.ts +14 -0
  127. package/dist/esm/idempotency.d.ts.map +1 -0
  128. package/dist/esm/idempotency.js +23 -0
  129. package/dist/esm/idempotency.js.map +1 -0
  130. package/dist/esm/index.d.ts +20 -0
  131. package/dist/esm/index.d.ts.map +1 -0
  132. package/dist/esm/index.js +19 -0
  133. package/dist/esm/index.js.map +1 -0
  134. package/dist/esm/net/HttpClient.d.ts +17 -0
  135. package/dist/esm/net/HttpClient.d.ts.map +1 -0
  136. package/dist/esm/net/HttpClient.js +2 -0
  137. package/dist/esm/net/HttpClient.js.map +1 -0
  138. package/dist/esm/net/NodeHttpClient.d.ts +13 -0
  139. package/dist/esm/net/NodeHttpClient.d.ts.map +1 -0
  140. package/dist/esm/net/NodeHttpClient.js +95 -0
  141. package/dist/esm/net/NodeHttpClient.js.map +1 -0
  142. package/dist/esm/package.json +1 -0
  143. package/dist/esm/pagination.d.ts +53 -0
  144. package/dist/esm/pagination.d.ts.map +1 -0
  145. package/dist/esm/pagination.js +95 -0
  146. package/dist/esm/pagination.js.map +1 -0
  147. package/dist/esm/querystring.d.ts +8 -0
  148. package/dist/esm/querystring.d.ts.map +1 -0
  149. package/dist/esm/querystring.js +17 -0
  150. package/dist/esm/querystring.js.map +1 -0
  151. package/dist/esm/requestSender.d.ts +40 -0
  152. package/dist/esm/requestSender.d.ts.map +1 -0
  153. package/dist/esm/requestSender.js +123 -0
  154. package/dist/esm/requestSender.js.map +1 -0
  155. package/dist/esm/resources/balance.d.ts +14 -0
  156. package/dist/esm/resources/balance.d.ts.map +1 -0
  157. package/dist/esm/resources/balance.js +27 -0
  158. package/dist/esm/resources/balance.js.map +1 -0
  159. package/dist/esm/resources/debts.d.ts +17 -0
  160. package/dist/esm/resources/debts.d.ts.map +1 -0
  161. package/dist/esm/resources/debts.js +31 -0
  162. package/dist/esm/resources/debts.js.map +1 -0
  163. package/dist/esm/resources/payments.d.ts +44 -0
  164. package/dist/esm/resources/payments.d.ts.map +1 -0
  165. package/dist/esm/resources/payments.js +62 -0
  166. package/dist/esm/resources/payments.js.map +1 -0
  167. package/dist/esm/resources/tokens.d.ts +22 -0
  168. package/dist/esm/resources/tokens.d.ts.map +1 -0
  169. package/dist/esm/resources/tokens.js +36 -0
  170. package/dist/esm/resources/tokens.js.map +1 -0
  171. package/dist/esm/resources/webhookEndpoints.d.ts +27 -0
  172. package/dist/esm/resources/webhookEndpoints.d.ts.map +1 -0
  173. package/dist/esm/resources/webhookEndpoints.js +51 -0
  174. package/dist/esm/resources/webhookEndpoints.js.map +1 -0
  175. package/dist/esm/resources/withdrawals.d.ts +23 -0
  176. package/dist/esm/resources/withdrawals.d.ts.map +1 -0
  177. package/dist/esm/resources/withdrawals.js +42 -0
  178. package/dist/esm/resources/withdrawals.js.map +1 -0
  179. package/dist/esm/retry.d.ts +34 -0
  180. package/dist/esm/retry.d.ts.map +1 -0
  181. package/dist/esm/retry.js +66 -0
  182. package/dist/esm/retry.js.map +1 -0
  183. package/dist/esm/types/balance.d.ts +35 -0
  184. package/dist/esm/types/balance.d.ts.map +1 -0
  185. package/dist/esm/types/balance.js +4 -0
  186. package/dist/esm/types/balance.js.map +1 -0
  187. package/dist/esm/types/common.d.ts +57 -0
  188. package/dist/esm/types/common.d.ts.map +1 -0
  189. package/dist/esm/types/common.js +4 -0
  190. package/dist/esm/types/common.js.map +1 -0
  191. package/dist/esm/types/debt.d.ts +49 -0
  192. package/dist/esm/types/debt.d.ts.map +1 -0
  193. package/dist/esm/types/debt.js +4 -0
  194. package/dist/esm/types/debt.js.map +1 -0
  195. package/dist/esm/types/error.d.ts +112 -0
  196. package/dist/esm/types/error.d.ts.map +1 -0
  197. package/dist/esm/types/error.js +129 -0
  198. package/dist/esm/types/error.js.map +1 -0
  199. package/dist/esm/types/index.d.ts +10 -0
  200. package/dist/esm/types/index.d.ts.map +1 -0
  201. package/dist/esm/types/index.js +4 -0
  202. package/dist/esm/types/index.js.map +1 -0
  203. package/dist/esm/types/payment.d.ts +246 -0
  204. package/dist/esm/types/payment.d.ts.map +1 -0
  205. package/dist/esm/types/payment.js +4 -0
  206. package/dist/esm/types/payment.js.map +1 -0
  207. package/dist/esm/types/token.d.ts +39 -0
  208. package/dist/esm/types/token.d.ts.map +1 -0
  209. package/dist/esm/types/token.js +4 -0
  210. package/dist/esm/types/token.js.map +1 -0
  211. package/dist/esm/types/webhook.d.ts +102 -0
  212. package/dist/esm/types/webhook.d.ts.map +1 -0
  213. package/dist/esm/types/webhook.js +15 -0
  214. package/dist/esm/types/webhook.js.map +1 -0
  215. package/dist/esm/types/withdrawal.d.ts +89 -0
  216. package/dist/esm/types/withdrawal.d.ts.map +1 -0
  217. package/dist/esm/types/withdrawal.js +4 -0
  218. package/dist/esm/types/withdrawal.js.map +1 -0
  219. package/package.json +49 -0
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RequestSender = void 0;
4
+ const retry_js_1 = require("./retry.js");
5
+ const errors_js_1 = require("./errors.js");
6
+ // ── SDK version (injected as User-Agent) ─────────────────────────────
7
+ const SDK_VERSION = '0.1.0';
8
+ // ── RequestSender ────────────────────────────────────────────────────
9
+ /**
10
+ * Core HTTP engine. Handles:
11
+ * - Header construction (auth, content-type, idempotency)
12
+ * - JSON serialization / deserialization
13
+ * - Retry loop with exponential backoff + jitter
14
+ * - Error mapping (HTTP status → PagciError subclass)
15
+ */
16
+ class RequestSender {
17
+ apiKey;
18
+ baseUrl;
19
+ httpClient;
20
+ retryConfig;
21
+ defaultTimeout;
22
+ constructor(apiKey, baseUrl, httpClient, retryConfig, defaultTimeout) {
23
+ this.apiKey = apiKey;
24
+ this.baseUrl = baseUrl;
25
+ this.httpClient = httpClient;
26
+ this.retryConfig = retryConfig;
27
+ this.defaultTimeout = defaultTimeout;
28
+ }
29
+ async request(method, path, body, options) {
30
+ const url = `${this.baseUrl}${path}`;
31
+ const timeout = options?.timeout ?? this.defaultTimeout;
32
+ const maxRetries = options?.maxRetries ?? this.retryConfig.maxRetries;
33
+ const idempotencyKey = options?.idempotencyKey;
34
+ const headers = {
35
+ Authorization: `Bearer ${this.apiKey}`,
36
+ Accept: 'application/json',
37
+ 'User-Agent': `pagci-node/${SDK_VERSION}`,
38
+ };
39
+ let serializedBody;
40
+ if (body !== undefined) {
41
+ headers['Content-Type'] = 'application/json';
42
+ serializedBody = JSON.stringify(body);
43
+ }
44
+ if (idempotencyKey) {
45
+ headers['Idempotency-Key'] = idempotencyKey;
46
+ }
47
+ // ── Retry loop ─────────────────────────────────────────────────
48
+ let lastError;
49
+ for (let attempt = 0; attempt <= maxRetries; attempt++) {
50
+ // Wait before retries (not before the first attempt)
51
+ if (attempt > 0) {
52
+ const delay = (0, retry_js_1.retryDelay)(attempt - 1, lastError?.status === 429
53
+ ? lastError.rawResponse?.['retry-after']
54
+ : undefined, this.retryConfig);
55
+ await sleep(delay);
56
+ }
57
+ try {
58
+ const res = await this.httpClient.request(method, url, headers, serializedBody, timeout);
59
+ // ── Success ──────────────────────────────────────────────
60
+ if (res.status >= 200 && res.status < 300) {
61
+ const parsed = (res.body.length > 0 ? JSON.parse(res.body) : {});
62
+ const response = Object.assign(parsed, {
63
+ _response: {
64
+ status: res.status,
65
+ headers: res.headers,
66
+ requestId: res.headers['x-request-id'] ?? '',
67
+ },
68
+ });
69
+ return response;
70
+ }
71
+ // ── Error response ───────────────────────────────────────
72
+ let parsedBody;
73
+ try {
74
+ parsedBody = res.body.length > 0 ? JSON.parse(res.body) : {};
75
+ }
76
+ catch {
77
+ parsedBody = { detail: res.body };
78
+ }
79
+ const apiErr = (0, errors_js_1.errorFromResponse)(res.status, parsedBody, res.headers);
80
+ if (attempt < maxRetries &&
81
+ (0, retry_js_1.shouldRetry)(res.status, method, idempotencyKey !== undefined)) {
82
+ // Use Retry-After from response headers for delay calc
83
+ lastError = apiErr;
84
+ // Store retry-after on the error for delay calculation
85
+ if (res.headers['retry-after']) {
86
+ lastError._retryAfter =
87
+ res.headers['retry-after'];
88
+ }
89
+ continue;
90
+ }
91
+ throw apiErr;
92
+ }
93
+ catch (err) {
94
+ // Re-throw PagciError subclasses (already mapped)
95
+ if (err instanceof errors_js_1.PagciError) {
96
+ throw err;
97
+ }
98
+ // Connection / timeout errors
99
+ const error = err;
100
+ const isTimeout = error.code === 'ETIMEDOUT' ||
101
+ error.message?.includes('timed out');
102
+ if (isTimeout) {
103
+ const timeoutErr = new errors_js_1.TimeoutError(timeout);
104
+ if (attempt < maxRetries) {
105
+ lastError = timeoutErr;
106
+ continue;
107
+ }
108
+ throw timeoutErr;
109
+ }
110
+ if ((0, retry_js_1.isRetriableConnectionError)(err) && attempt < maxRetries) {
111
+ lastError = new errors_js_1.ConnectionError(error.message, error);
112
+ continue;
113
+ }
114
+ throw new errors_js_1.ConnectionError(error.message ?? 'Unknown error', error);
115
+ }
116
+ }
117
+ // Should be unreachable — the loop always throws or returns.
118
+ // But satisfy the compiler:
119
+ throw lastError ?? new errors_js_1.ConnectionError('Request failed after retries');
120
+ }
121
+ }
122
+ exports.RequestSender = RequestSender;
123
+ // ── Helpers ──────────────────────────────────────────────────────────
124
+ function sleep(ms) {
125
+ return new Promise((resolve) => setTimeout(resolve, ms));
126
+ }
127
+ //# sourceMappingURL=requestSender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestSender.js","sourceRoot":"","sources":["../../src/requestSender.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { RequestSender, ApiResponse, RequestOptions } from '../requestSender.js';
2
+ import type { Balance, TotalBalance, WalletListParams } from '../types/index.js';
3
+ import { Page } from '../pagination.js';
4
+ export declare class BalanceResource {
5
+ private readonly sender;
6
+ constructor(sender: RequestSender);
7
+ /** Get account-level total balance (sum across all wallets). */
8
+ getTotal(options?: RequestOptions): Promise<ApiResponse<TotalBalance>>;
9
+ /** Get balance for a specific wallet. */
10
+ getWallet(walletId: string, options?: RequestOptions): Promise<ApiResponse<Balance>>;
11
+ /** List all wallets with their balances. */
12
+ listWallets(params?: WalletListParams): Page<Balance>;
13
+ }
14
+ //# sourceMappingURL=balance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../../src/resources/balance.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAEjF,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAGxC,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAElD,gEAAgE;IAC1D,QAAQ,CACZ,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IASrC,yCAAyC;IACnC,SAAS,CACb,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAShC,4CAA4C;IAC5C,WAAW,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC;CAQtD"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ // ── Balance resource ────────────────────────────────────────────────
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.BalanceResource = void 0;
5
+ const pagination_js_1 = require("../pagination.js");
6
+ const querystring_js_1 = require("../querystring.js");
7
+ class BalanceResource {
8
+ sender;
9
+ constructor(sender) {
10
+ this.sender = sender;
11
+ }
12
+ /** Get account-level total balance (sum across all wallets). */
13
+ async getTotal(options) {
14
+ return this.sender.request('GET', '/user/balance', undefined, options);
15
+ }
16
+ /** Get balance for a specific wallet. */
17
+ async getWallet(walletId, options) {
18
+ return this.sender.request('GET', `/user/wallets/${walletId}/balance`, undefined, options);
19
+ }
20
+ /** List all wallets with their balances. */
21
+ listWallets(params) {
22
+ return new pagination_js_1.Page((cursor) => {
23
+ const query = (0, querystring_js_1.buildQueryString)({ ...params, cursor });
24
+ return this.sender
25
+ .request('GET', `/user/wallets${query}`)
26
+ .then((res) => res);
27
+ });
28
+ }
29
+ }
30
+ exports.BalanceResource = BalanceResource;
31
+ //# sourceMappingURL=balance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"balance.js","sourceRoot":"","sources":["../../../src/resources/balance.ts"],"names":[],"mappings":";AAAA,uEAAuE;;;AAKvE,oDAAwC;AACxC,sDAAqD;AAErD,MAAa,eAAe;IACG;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,gEAAgE;IAChE,KAAK,CAAC,QAAQ,CACZ,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,eAAe,EACf,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,yCAAyC;IACzC,KAAK,CAAC,SAAS,CACb,QAAgB,EAChB,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,iBAAiB,QAAQ,UAAU,EACnC,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,WAAW,CAAC,MAAyB;QACnC,OAAO,IAAI,oBAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,IAAA,iCAAgB,EAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,MAAM;iBACf,OAAO,CAAwB,KAAK,EAAE,gBAAgB,KAAK,EAAE,CAAC;iBAC9D,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAA4B,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AArCD,0CAqCC"}
@@ -0,0 +1,17 @@
1
+ import type { RequestSender, ApiResponse, RequestOptions } from '../requestSender.js';
2
+ import type { CreateDebtParams, CreateDebtResponse, DebtListItem, DebtListParams } from '../types/index.js';
3
+ import type { StatusResponse } from '../types/common.js';
4
+ import { Page } from '../pagination.js';
5
+ export declare class DebtsResource {
6
+ private readonly sender;
7
+ constructor(sender: RequestSender);
8
+ /** Create a new debt. */
9
+ create(params: CreateDebtParams, options?: RequestOptions): Promise<ApiResponse<CreateDebtResponse>>;
10
+ /** List debts with cursor-based pagination. */
11
+ list(params?: DebtListParams): Page<DebtListItem>;
12
+ /** Cancel a pending debt. */
13
+ cancel(id: string, options?: RequestOptions): Promise<ApiResponse<StatusResponse>>;
14
+ /** Reverse a paid debt. */
15
+ reverse(id: string, options?: RequestOptions): Promise<ApiResponse<StatusResponse>>;
16
+ }
17
+ //# sourceMappingURL=debts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debts.d.ts","sourceRoot":"","sources":["../../../src/resources/debts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAGxC,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAElD,yBAAyB;IACnB,MAAM,CACV,MAAM,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;IAS3C,+CAA+C;IAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC;IASjD,6BAA6B;IACvB,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASvC,2BAA2B;IACrB,OAAO,CACX,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;CAQxC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ // ── Debts resource ──────────────────────────────────────────────────
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.DebtsResource = void 0;
5
+ const pagination_js_1 = require("../pagination.js");
6
+ const querystring_js_1 = require("../querystring.js");
7
+ class DebtsResource {
8
+ sender;
9
+ constructor(sender) {
10
+ this.sender = sender;
11
+ }
12
+ /** Create a new debt. */
13
+ async create(params, options) {
14
+ return this.sender.request('POST', '/debts', params, options);
15
+ }
16
+ /** List debts with cursor-based pagination. */
17
+ list(params) {
18
+ return new pagination_js_1.Page((cursor) => {
19
+ const query = (0, querystring_js_1.buildQueryString)({ ...params, cursor });
20
+ return this.sender
21
+ .request('GET', `/debts${query}`)
22
+ .then((res) => res);
23
+ });
24
+ }
25
+ /** Cancel a pending debt. */
26
+ async cancel(id, options) {
27
+ return this.sender.request('DELETE', `/debts/${id}`, undefined, options);
28
+ }
29
+ /** Reverse a paid debt. */
30
+ async reverse(id, options) {
31
+ return this.sender.request('POST', `/debts/${id}/reverse`, undefined, options);
32
+ }
33
+ }
34
+ exports.DebtsResource = DebtsResource;
35
+ //# sourceMappingURL=debts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debts.js","sourceRoot":"","sources":["../../../src/resources/debts.ts"],"names":[],"mappings":";AAAA,uEAAuE;;;AAUvE,oDAAwC;AACxC,sDAAqD;AAErD,MAAa,aAAa;IACK;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,yBAAyB;IACzB,KAAK,CAAC,MAAM,CACV,MAAwB,EACxB,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,+CAA+C;IAC/C,IAAI,CAAC,MAAuB;QAC1B,OAAO,IAAI,oBAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,IAAA,iCAAgB,EAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,MAAM;iBACf,OAAO,CAA6B,KAAK,EAAE,SAAS,KAAK,EAAE,CAAC;iBAC5D,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAiC,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,6BAA6B;IAC7B,KAAK,CAAC,MAAM,CACV,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,QAAQ,EACR,UAAU,EAAE,EAAE,EACd,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,2BAA2B;IAC3B,KAAK,CAAC,OAAO,CACX,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,UAAU,EAAE,UAAU,EACtB,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AAnDD,sCAmDC"}
@@ -0,0 +1,44 @@
1
+ import type { RequestSender, ApiResponse, RequestOptions } from '../requestSender.js';
2
+ import type { Payment, PaymentCompact, CreatePaymentParams, RefundParams, RefundResponse, PaymentListParams, StatusCount } from '../types/index.js';
3
+ import type { ListResponse, StatusResponse } from '../types/common.js';
4
+ import { Page } from '../pagination.js';
5
+ /** Payment list response includes status_counts alongside data. */
6
+ export interface PaymentListResponse extends ListResponse<PaymentCompact> {
7
+ status_counts: StatusCount[];
8
+ }
9
+ export declare class PaymentsResource {
10
+ private readonly sender;
11
+ constructor(sender: RequestSender);
12
+ /**
13
+ * Create a new PIX payment.
14
+ *
15
+ * Automatically generates an idempotency key if none is provided.
16
+ */
17
+ create(params: CreatePaymentParams, options?: RequestOptions): Promise<ApiResponse<Payment>>;
18
+ /**
19
+ * List payments with cursor-based pagination.
20
+ *
21
+ * Returns a `Page` that supports async iteration, manual navigation,
22
+ * and `autoPagingToArray()`.
23
+ */
24
+ list(params?: PaymentListParams): Page<PaymentCompact>;
25
+ /** Get a single payment by ID. */
26
+ get(id: string, options?: RequestOptions): Promise<ApiResponse<Payment>>;
27
+ /**
28
+ * Refund a payment (fully or partially).
29
+ *
30
+ * Pass `{ amount }` for proportional refund or `{ recipients }` for
31
+ * per-recipient distribution. These are mutually exclusive.
32
+ */
33
+ refund(id: string, params: RefundParams, options?: RequestOptions): Promise<ApiResponse<RefundResponse>>;
34
+ /** Release a held recipient on a payment. */
35
+ releaseRecipient(paymentId: string, walletId: string, options?: RequestOptions): Promise<ApiResponse<StatusResponse>>;
36
+ /**
37
+ * Get the receipt for a confirmed payment.
38
+ *
39
+ * Returns the raw response; the receipt format depends on the API
40
+ * (typically PDF binary or a JSON with a URL).
41
+ */
42
+ getReceipt(id: string, options?: RequestOptions): Promise<ApiResponse<Record<string, unknown>>>;
43
+ }
44
+ //# sourceMappingURL=payments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payments.d.ts","sourceRoot":"","sources":["../../../src/resources/payments.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EACV,OAAO,EACP,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAIxC,mEAAmE;AACnE,MAAM,WAAW,mBAAoB,SAAQ,YAAY,CAAC,cAAc,CAAC;IACvE,aAAa,EAAE,WAAW,EAAE,CAAC;CAC9B;AAED,qBAAa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAElD;;;;OAIG;IACG,MAAM,CACV,MAAM,EAAE,mBAAmB,EAC3B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAOhC;;;;;OAKG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC;IAStD,kCAAkC;IAC5B,GAAG,CACP,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAIhC;;;;;OAKG;IACG,MAAM,CACV,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,YAAY,EACpB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASvC,6CAA6C;IACvC,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASvC;;;;;OAKG;IACG,UAAU,CACd,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAQjD"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ // ── Payments resource ───────────────────────────────────────────────
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.PaymentsResource = void 0;
5
+ const pagination_js_1 = require("../pagination.js");
6
+ const idempotency_js_1 = require("../idempotency.js");
7
+ const querystring_js_1 = require("../querystring.js");
8
+ class PaymentsResource {
9
+ sender;
10
+ constructor(sender) {
11
+ this.sender = sender;
12
+ }
13
+ /**
14
+ * Create a new PIX payment.
15
+ *
16
+ * Automatically generates an idempotency key if none is provided.
17
+ */
18
+ async create(params, options) {
19
+ return this.sender.request('POST', '/payments', params, {
20
+ ...options,
21
+ idempotencyKey: options?.idempotencyKey ?? (0, idempotency_js_1.generateIdempotencyKey)(),
22
+ });
23
+ }
24
+ /**
25
+ * List payments with cursor-based pagination.
26
+ *
27
+ * Returns a `Page` that supports async iteration, manual navigation,
28
+ * and `autoPagingToArray()`.
29
+ */
30
+ list(params) {
31
+ return new pagination_js_1.Page((cursor) => {
32
+ const query = (0, querystring_js_1.buildQueryString)({ ...params, cursor });
33
+ return this.sender
34
+ .request('GET', `/payments${query}`)
35
+ .then((res) => res);
36
+ });
37
+ }
38
+ /** Get a single payment by ID. */
39
+ async get(id, options) {
40
+ return this.sender.request('GET', `/payments/${id}`, undefined, options);
41
+ }
42
+ /**
43
+ * Refund a payment (fully or partially).
44
+ *
45
+ * Pass `{ amount }` for proportional refund or `{ recipients }` for
46
+ * per-recipient distribution. These are mutually exclusive.
47
+ */
48
+ async refund(id, params, options) {
49
+ return this.sender.request('POST', `/payments/${id}/refund`, params, options);
50
+ }
51
+ /** Release a held recipient on a payment. */
52
+ async releaseRecipient(paymentId, walletId, options) {
53
+ return this.sender.request('POST', `/payments/${paymentId}/recipients/${walletId}/release`, undefined, options);
54
+ }
55
+ /**
56
+ * Get the receipt for a confirmed payment.
57
+ *
58
+ * Returns the raw response; the receipt format depends on the API
59
+ * (typically PDF binary or a JSON with a URL).
60
+ */
61
+ async getReceipt(id, options) {
62
+ return this.sender.request('GET', `/payments/${id}/receipt`, undefined, options);
63
+ }
64
+ }
65
+ exports.PaymentsResource = PaymentsResource;
66
+ //# sourceMappingURL=payments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payments.js","sourceRoot":"","sources":["../../../src/resources/payments.ts"],"names":[],"mappings":";AAAA,uEAAuE;;;AAavE,oDAAwC;AACxC,sDAA2D;AAC3D,sDAAqD;AAOrD,MAAa,gBAAgB;IACE;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD;;;;OAIG;IACH,KAAK,CAAC,MAAM,CACV,MAA2B,EAC3B,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAU,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE;YAC/D,GAAG,OAAO;YACV,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,IAAA,uCAAsB,GAAE;SACpE,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,MAA0B;QAC7B,OAAO,IAAI,oBAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,IAAA,iCAAgB,EAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,MAAM;iBACf,OAAO,CAAsB,KAAK,EAAE,YAAY,KAAK,EAAE,CAAC;iBACxD,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAmC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kCAAkC;IAClC,KAAK,CAAC,GAAG,CACP,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAU,KAAK,EAAE,aAAa,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACpF,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,EAAU,EACV,MAAoB,EACpB,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,aAAa,EAAE,SAAS,EACxB,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,6CAA6C;IAC7C,KAAK,CAAC,gBAAgB,CACpB,SAAiB,EACjB,QAAgB,EAChB,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,aAAa,SAAS,eAAe,QAAQ,UAAU,EACvD,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,UAAU,CACd,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,aAAa,EAAE,UAAU,EACzB,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AA3FD,4CA2FC"}
@@ -0,0 +1,22 @@
1
+ import type { RequestSender, ApiResponse, RequestOptions } from '../requestSender.js';
2
+ import type { CreateAccessTokenParams, CreateAccessTokenResponse, CreateAPIKeyParams, CreateAPIKeyResponse, UpdateTokenScopesParams } from '../types/index.js';
3
+ import type { StatusResponse } from '../types/common.js';
4
+ export declare class TokensResource {
5
+ private readonly sender;
6
+ constructor(sender: RequestSender);
7
+ /** Create a wallet-scoped access token. */
8
+ createAccessToken(params: CreateAccessTokenParams, options?: RequestOptions): Promise<ApiResponse<CreateAccessTokenResponse>>;
9
+ /** Create an account-level API key. */
10
+ createAPIKey(params: CreateAPIKeyParams, options?: RequestOptions): Promise<ApiResponse<CreateAPIKeyResponse>>;
11
+ /** List all active tokens (login, API keys, access tokens). */
12
+ list(options?: RequestOptions): Promise<ApiResponse<Record<string, unknown>[]>>;
13
+ /** List access tokens only. */
14
+ listAccessTokens(options?: RequestOptions): Promise<ApiResponse<Record<string, unknown>[]>>;
15
+ /** Revoke (delete) a token by ID. */
16
+ revoke(id: string, options?: RequestOptions): Promise<ApiResponse<StatusResponse>>;
17
+ /** Update the scopes of a token. */
18
+ updateScopes(id: string, params: UpdateTokenScopesParams, options?: RequestOptions): Promise<ApiResponse<StatusResponse>>;
19
+ /** Copy (duplicate) a token with the same scopes. */
20
+ copy(id: string, options?: RequestOptions): Promise<ApiResponse<Record<string, unknown>>>;
21
+ }
22
+ //# sourceMappingURL=tokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/resources/tokens.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EACV,uBAAuB,EACvB,yBAAyB,EACzB,kBAAkB,EAClB,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAElD,2CAA2C;IACrC,iBAAiB,CACrB,MAAM,EAAE,uBAAuB,EAC/B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,yBAAyB,CAAC,CAAC;IASlD,uCAAuC;IACjC,YAAY,CAChB,MAAM,EAAE,kBAAkB,EAC1B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAC;IAS7C,+DAA+D;IACzD,IAAI,CACR,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IASlD,+BAA+B;IACzB,gBAAgB,CACpB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IASlD,qCAAqC;IAC/B,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASvC,oCAAoC;IAC9B,YAAY,CAChB,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,uBAAuB,EAC/B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASvC,qDAAqD;IAC/C,IAAI,CACR,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAQjD"}
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ // ── Tokens resource ─────────────────────────────────────────────────
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.TokensResource = void 0;
5
+ class TokensResource {
6
+ sender;
7
+ constructor(sender) {
8
+ this.sender = sender;
9
+ }
10
+ /** Create a wallet-scoped access token. */
11
+ async createAccessToken(params, options) {
12
+ return this.sender.request('POST', '/tokens/access', params, options);
13
+ }
14
+ /** Create an account-level API key. */
15
+ async createAPIKey(params, options) {
16
+ return this.sender.request('POST', '/tokens/api-key', params, options);
17
+ }
18
+ /** List all active tokens (login, API keys, access tokens). */
19
+ async list(options) {
20
+ return this.sender.request('GET', '/tokens', undefined, options);
21
+ }
22
+ /** List access tokens only. */
23
+ async listAccessTokens(options) {
24
+ return this.sender.request('GET', '/tokens/access', undefined, options);
25
+ }
26
+ /** Revoke (delete) a token by ID. */
27
+ async revoke(id, options) {
28
+ return this.sender.request('DELETE', `/tokens/${id}`, undefined, options);
29
+ }
30
+ /** Update the scopes of a token. */
31
+ async updateScopes(id, params, options) {
32
+ return this.sender.request('PUT', `/tokens/${id}/scopes`, params, options);
33
+ }
34
+ /** Copy (duplicate) a token with the same scopes. */
35
+ async copy(id, options) {
36
+ return this.sender.request('POST', `/tokens/${id}/copy`, undefined, options);
37
+ }
38
+ }
39
+ exports.TokensResource = TokensResource;
40
+ //# sourceMappingURL=tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../src/resources/tokens.ts"],"names":[],"mappings":";AAAA,uEAAuE;;;AAYvE,MAAa,cAAc;IACI;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,2CAA2C;IAC3C,KAAK,CAAC,iBAAiB,CACrB,MAA+B,EAC/B,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,gBAAgB,EAChB,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,uCAAuC;IACvC,KAAK,CAAC,YAAY,CAChB,MAA0B,EAC1B,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,iBAAiB,EACjB,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,+DAA+D;IAC/D,KAAK,CAAC,IAAI,CACR,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,SAAS,EACT,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,+BAA+B;IAC/B,KAAK,CAAC,gBAAgB,CACpB,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,gBAAgB,EAChB,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,MAAM,CACV,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,QAAQ,EACR,WAAW,EAAE,EAAE,EACf,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,oCAAoC;IACpC,KAAK,CAAC,YAAY,CAChB,EAAU,EACV,MAA+B,EAC/B,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,WAAW,EAAE,SAAS,EACtB,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,KAAK,CAAC,IAAI,CACR,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,WAAW,EAAE,OAAO,EACpB,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AA5FD,wCA4FC"}
@@ -0,0 +1,27 @@
1
+ import type { RequestSender, ApiResponse, RequestOptions } from '../requestSender.js';
2
+ import type { WebhookEndpoint, WebhookEndpointsListResponse, RegisterWebhooksParams, WebhookEndpointInput, WebhookDelivery, WebhookDeliveryListParams, WebhookTestParams, WebhookTestResponse } from '../types/index.js';
3
+ import type { StatusResponse } from '../types/common.js';
4
+ import { Page } from '../pagination.js';
5
+ export declare class WebhookEndpointsResource {
6
+ private readonly sender;
7
+ constructor(sender: RequestSender);
8
+ /** Register one or more webhook endpoints. */
9
+ register(params: RegisterWebhooksParams, options?: RequestOptions): Promise<ApiResponse<WebhookEndpointsListResponse>>;
10
+ /** List all webhook endpoints. */
11
+ list(options?: RequestOptions): Promise<ApiResponse<WebhookEndpointsListResponse>>;
12
+ /** Update a webhook endpoint. */
13
+ update(id: string, params: WebhookEndpointInput, options?: RequestOptions): Promise<ApiResponse<WebhookEndpoint>>;
14
+ /** Delete a webhook endpoint. */
15
+ delete(id: string, options?: RequestOptions): Promise<ApiResponse<StatusResponse>>;
16
+ /** List webhook deliveries with cursor-based pagination. */
17
+ listDeliveries(params?: WebhookDeliveryListParams): Page<WebhookDelivery>;
18
+ /** Get a single webhook delivery by ID. */
19
+ getDelivery(id: string, options?: RequestOptions): Promise<ApiResponse<WebhookDelivery>>;
20
+ /** Resend a single webhook delivery. */
21
+ resend(id: string, options?: RequestOptions): Promise<ApiResponse<StatusResponse>>;
22
+ /** Bulk resend webhook deliveries matching a filter. */
23
+ bulkResend(params: WebhookDeliveryListParams, options?: RequestOptions): Promise<ApiResponse<StatusResponse>>;
24
+ /** Send a test webhook to a specific endpoint. */
25
+ test(params: WebhookTestParams, options?: RequestOptions): Promise<ApiResponse<WebhookTestResponse>>;
26
+ }
27
+ //# sourceMappingURL=webhookEndpoints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhookEndpoints.d.ts","sourceRoot":"","sources":["../../../src/resources/webhookEndpoints.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EACV,eAAe,EACf,4BAA4B,EAC5B,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAgB,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAGxC,qBAAa,wBAAwB;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAElD,8CAA8C;IACxC,QAAQ,CACZ,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;IASrD,kCAAkC;IAC5B,IAAI,CACR,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;IASrD,iCAAiC;IAC3B,MAAM,CACV,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IASxC,iCAAiC;IAC3B,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASvC,4DAA4D;IAC5D,cAAc,CAAC,MAAM,CAAC,EAAE,yBAAyB,GAAG,IAAI,CAAC,eAAe,CAAC;IASzE,2CAA2C;IACrC,WAAW,CACf,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IASxC,wCAAwC;IAClC,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASvC,wDAAwD;IAClD,UAAU,CACd,MAAM,EAAE,yBAAyB,EACjC,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IASvC,kDAAkD;IAC5C,IAAI,CACR,MAAM,EAAE,iBAAiB,EACzB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC;CAQ7C"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ // ── Webhook Endpoints resource ──────────────────────────────────────
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.WebhookEndpointsResource = void 0;
5
+ const pagination_js_1 = require("../pagination.js");
6
+ const querystring_js_1 = require("../querystring.js");
7
+ class WebhookEndpointsResource {
8
+ sender;
9
+ constructor(sender) {
10
+ this.sender = sender;
11
+ }
12
+ /** Register one or more webhook endpoints. */
13
+ async register(params, options) {
14
+ return this.sender.request('POST', '/hooks', params, options);
15
+ }
16
+ /** List all webhook endpoints. */
17
+ async list(options) {
18
+ return this.sender.request('GET', '/hooks', undefined, options);
19
+ }
20
+ /** Update a webhook endpoint. */
21
+ async update(id, params, options) {
22
+ return this.sender.request('PUT', `/hooks/${id}`, params, options);
23
+ }
24
+ /** Delete a webhook endpoint. */
25
+ async delete(id, options) {
26
+ return this.sender.request('DELETE', `/hooks/${id}`, undefined, options);
27
+ }
28
+ /** List webhook deliveries with cursor-based pagination. */
29
+ listDeliveries(params) {
30
+ return new pagination_js_1.Page((cursor) => {
31
+ const query = (0, querystring_js_1.buildQueryString)({ ...params, cursor });
32
+ return this.sender
33
+ .request('GET', `/hooks/deliveries${query}`)
34
+ .then((res) => res);
35
+ });
36
+ }
37
+ /** Get a single webhook delivery by ID. */
38
+ async getDelivery(id, options) {
39
+ return this.sender.request('GET', `/hooks/deliveries/${id}`, undefined, options);
40
+ }
41
+ /** Resend a single webhook delivery. */
42
+ async resend(id, options) {
43
+ return this.sender.request('POST', `/hooks/deliveries/${id}/resend`, undefined, options);
44
+ }
45
+ /** Bulk resend webhook deliveries matching a filter. */
46
+ async bulkResend(params, options) {
47
+ return this.sender.request('POST', '/hooks/deliveries/bulk-resend', params, options);
48
+ }
49
+ /** Send a test webhook to a specific endpoint. */
50
+ async test(params, options) {
51
+ return this.sender.request('POST', '/hooks/test', params, options);
52
+ }
53
+ }
54
+ exports.WebhookEndpointsResource = WebhookEndpointsResource;
55
+ //# sourceMappingURL=webhookEndpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhookEndpoints.js","sourceRoot":"","sources":["../../../src/resources/webhookEndpoints.ts"],"names":[],"mappings":";AAAA,uEAAuE;;;AAcvE,oDAAwC;AACxC,sDAAqD;AAErD,MAAa,wBAAwB;IACN;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD,8CAA8C;IAC9C,KAAK,CAAC,QAAQ,CACZ,MAA8B,EAC9B,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,QAAQ,EACR,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,kCAAkC;IAClC,KAAK,CAAC,IAAI,CACR,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,QAAQ,EACR,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,iCAAiC;IACjC,KAAK,CAAC,MAAM,CACV,EAAU,EACV,MAA4B,EAC5B,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,UAAU,EAAE,EAAE,EACd,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,iCAAiC;IACjC,KAAK,CAAC,MAAM,CACV,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,QAAQ,EACR,UAAU,EAAE,EAAE,EACd,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,4DAA4D;IAC5D,cAAc,CAAC,MAAkC;QAC/C,OAAO,IAAI,oBAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,IAAA,iCAAgB,EAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,MAAM;iBACf,OAAO,CAAgC,KAAK,EAAE,oBAAoB,KAAK,EAAE,CAAC;iBAC1E,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAoC,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,2CAA2C;IAC3C,KAAK,CAAC,WAAW,CACf,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,qBAAqB,EAAE,EAAE,EACzB,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,wCAAwC;IACxC,KAAK,CAAC,MAAM,CACV,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,qBAAqB,EAAE,SAAS,EAChC,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,wDAAwD;IACxD,KAAK,CAAC,UAAU,CACd,MAAiC,EACjC,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,+BAA+B,EAC/B,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,IAAI,CACR,MAAyB,EACzB,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,aAAa,EACb,MAAM,EACN,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AApHD,4DAoHC"}
@@ -0,0 +1,23 @@
1
+ import type { RequestSender, ApiResponse, RequestOptions } from '../requestSender.js';
2
+ import type { Withdrawal, CreateWithdrawalParams, CreateWithdrawalResponse, WithdrawalListParams } from '../types/index.js';
3
+ import { Page } from '../pagination.js';
4
+ export declare class WithdrawalsResource {
5
+ private readonly sender;
6
+ constructor(sender: RequestSender);
7
+ /**
8
+ * Create a new withdrawal (PIX payout).
9
+ *
10
+ * Returns 202 Accepted. The withdrawal is processed asynchronously.
11
+ * Automatically generates an idempotency key if none is provided.
12
+ */
13
+ create(params: CreateWithdrawalParams, options?: RequestOptions): Promise<ApiResponse<CreateWithdrawalResponse>>;
14
+ /**
15
+ * List withdrawals with cursor-based pagination.
16
+ */
17
+ list(params?: WithdrawalListParams): Page<Withdrawal>;
18
+ /** Get a single withdrawal by ID. */
19
+ get(id: string, options?: RequestOptions): Promise<ApiResponse<Withdrawal>>;
20
+ /** Get the receipt for a settled withdrawal. */
21
+ getReceipt(id: string, options?: RequestOptions): Promise<ApiResponse<Record<string, unknown>>>;
22
+ }
23
+ //# sourceMappingURL=withdrawals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withdrawals.d.ts","sourceRoot":"","sources":["../../../src/resources/withdrawals.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACtF,OAAO,KAAK,EACV,UAAU,EACV,sBAAsB,EACtB,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAIxC,qBAAa,mBAAmB;IAClB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,aAAa;IAElD;;;;;OAKG;IACG,MAAM,CACV,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;IAYjD;;OAEG;IACH,IAAI,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC;IASrD,qCAAqC;IAC/B,GAAG,CACP,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IASnC,gDAAgD;IAC1C,UAAU,CACd,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CAQjD"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ // ── Withdrawals resource ────────────────────────────────────────────
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.WithdrawalsResource = void 0;
5
+ const pagination_js_1 = require("../pagination.js");
6
+ const idempotency_js_1 = require("../idempotency.js");
7
+ const querystring_js_1 = require("../querystring.js");
8
+ class WithdrawalsResource {
9
+ sender;
10
+ constructor(sender) {
11
+ this.sender = sender;
12
+ }
13
+ /**
14
+ * Create a new withdrawal (PIX payout).
15
+ *
16
+ * Returns 202 Accepted. The withdrawal is processed asynchronously.
17
+ * Automatically generates an idempotency key if none is provided.
18
+ */
19
+ async create(params, options) {
20
+ return this.sender.request('POST', '/withdrawals', params, {
21
+ ...options,
22
+ idempotencyKey: options?.idempotencyKey ?? (0, idempotency_js_1.generateIdempotencyKey)(),
23
+ });
24
+ }
25
+ /**
26
+ * List withdrawals with cursor-based pagination.
27
+ */
28
+ list(params) {
29
+ return new pagination_js_1.Page((cursor) => {
30
+ const query = (0, querystring_js_1.buildQueryString)({ ...params, cursor });
31
+ return this.sender
32
+ .request('GET', `/withdrawals${query}`)
33
+ .then((res) => res);
34
+ });
35
+ }
36
+ /** Get a single withdrawal by ID. */
37
+ async get(id, options) {
38
+ return this.sender.request('GET', `/withdrawals/${id}`, undefined, options);
39
+ }
40
+ /** Get the receipt for a settled withdrawal. */
41
+ async getReceipt(id, options) {
42
+ return this.sender.request('GET', `/withdrawals/${id}/receipt`, undefined, options);
43
+ }
44
+ }
45
+ exports.WithdrawalsResource = WithdrawalsResource;
46
+ //# sourceMappingURL=withdrawals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"withdrawals.js","sourceRoot":"","sources":["../../../src/resources/withdrawals.ts"],"names":[],"mappings":";AAAA,uEAAuE;;;AAUvE,oDAAwC;AACxC,sDAA2D;AAC3D,sDAAqD;AAErD,MAAa,mBAAmB;IACD;IAA7B,YAA6B,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAG,CAAC;IAEtD;;;;;OAKG;IACH,KAAK,CAAC,MAAM,CACV,MAA8B,EAC9B,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,MAAM,EACN,cAAc,EACd,MAAM,EACN;YACE,GAAG,OAAO;YACV,cAAc,EAAE,OAAO,EAAE,cAAc,IAAI,IAAA,uCAAsB,GAAE;SACpE,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,CAAC,MAA6B;QAChC,OAAO,IAAI,oBAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,MAAM,KAAK,GAAG,IAAA,iCAAgB,EAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC,MAAM;iBACf,OAAO,CAA2B,KAAK,EAAE,eAAe,KAAK,EAAE,CAAC;iBAChE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAA+B,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,qCAAqC;IACrC,KAAK,CAAC,GAAG,CACP,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,gBAAgB,EAAE,EAAE,EACpB,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;IAED,gDAAgD;IAChD,KAAK,CAAC,UAAU,CACd,EAAU,EACV,OAAwB;QAExB,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,KAAK,EACL,gBAAgB,EAAE,UAAU,EAC5B,SAAS,EACT,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AA7DD,kDA6DC"}