@ozura/elements 0.1.0-beta.5 → 0.1.0-beta.7

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 (37) hide show
  1. package/README.md +210 -40
  2. package/dist/frame/element-frame.html +1 -1
  3. package/dist/frame/tokenizer-frame.html +1 -1
  4. package/dist/frame/tokenizer-frame.js +40 -16
  5. package/dist/frame/tokenizer-frame.js.map +1 -1
  6. package/dist/oz-elements.esm.js +98 -41
  7. package/dist/oz-elements.esm.js.map +1 -1
  8. package/dist/oz-elements.umd.js +98 -40
  9. package/dist/oz-elements.umd.js.map +1 -1
  10. package/dist/react/frame/tokenizerFrame.d.ts +4 -4
  11. package/dist/react/index.cjs.js +127 -47
  12. package/dist/react/index.cjs.js.map +1 -1
  13. package/dist/react/index.esm.js +127 -47
  14. package/dist/react/index.esm.js.map +1 -1
  15. package/dist/react/react/index.d.ts +18 -5
  16. package/dist/react/sdk/OzVault.d.ts +40 -4
  17. package/dist/react/sdk/errors.d.ts +4 -3
  18. package/dist/react/sdk/index.d.ts +2 -2
  19. package/dist/react/server/index.d.ts +116 -16
  20. package/dist/react/types/index.d.ts +122 -6
  21. package/dist/server/frame/tokenizerFrame.d.ts +4 -4
  22. package/dist/server/index.cjs.js +218 -26
  23. package/dist/server/index.cjs.js.map +1 -1
  24. package/dist/server/index.esm.js +217 -27
  25. package/dist/server/index.esm.js.map +1 -1
  26. package/dist/server/sdk/OzVault.d.ts +40 -4
  27. package/dist/server/sdk/errors.d.ts +4 -3
  28. package/dist/server/sdk/index.d.ts +2 -2
  29. package/dist/server/server/index.d.ts +116 -16
  30. package/dist/server/types/index.d.ts +122 -6
  31. package/dist/types/frame/tokenizerFrame.d.ts +4 -4
  32. package/dist/types/sdk/OzVault.d.ts +40 -4
  33. package/dist/types/sdk/errors.d.ts +4 -3
  34. package/dist/types/sdk/index.d.ts +2 -2
  35. package/dist/types/server/index.d.ts +116 -16
  36. package/dist/types/types/index.d.ts +122 -6
  37. package/package.json +1 -1
@@ -28,6 +28,7 @@
28
28
  */
29
29
  // ─── Configuration ───────────────────────────────────────────────────────────
30
30
  const DEFAULT_API_URL = "https://ozurapay-pay-api-v2-staging-c8abbdfhfbd3c5em.eastus-01.azurewebsites.net";
31
+ const DEFAULT_VAULT_URL = "https://pci-vault-staging-drc0duhcakf4g4fr.eastus-01.azurewebsites.net";
31
32
  const DEFAULT_TIMEOUT = 30000;
32
33
  // ─── Error ───────────────────────────────────────────────────────────────────
33
34
  class OzuraError extends Error {
@@ -61,6 +62,7 @@ class Ozura {
61
62
  this.apiKey = config.apiKey;
62
63
  this.vaultKey = config.vaultKey;
63
64
  this.apiUrl = config.apiUrl || DEFAULT_API_URL;
65
+ this.vaultUrl = config.vaultUrl || DEFAULT_VAULT_URL;
64
66
  this.timeoutMs = (_a = config.timeoutMs) !== null && _a !== void 0 ? _a : DEFAULT_TIMEOUT;
65
67
  this.retries = (_b = config.retries) !== null && _b !== void 0 ? _b : DEFAULT_RETRIES;
66
68
  }
@@ -101,20 +103,6 @@ class Ozura {
101
103
  }
102
104
  return this.post('/api/v1/cardSale', body, true);
103
105
  }
104
- /**
105
- * Retrieve a single transaction by ID.
106
- *
107
- * **Known issue:** The Pay API requires the API key as a query parameter
108
- * (`access_token`), which means it can appear in server logs, CDN caches,
109
- * and HTTP Referer headers. This is a Pay API design issue — the SDK will
110
- * switch to header-based auth once the backend supports it.
111
- *
112
- * Rate limit: 100 requests/minute per merchant.
113
- */
114
- async getTransaction(transactionId) {
115
- const qs = new URLSearchParams({ access_token: this.apiKey });
116
- return this.get(`/api/v1/transactions/${encodeURIComponent(transactionId)}?${qs}`);
117
- }
118
106
  /**
119
107
  * List transactions by date range with pagination.
120
108
  *
@@ -122,6 +110,8 @@ class Ozura {
122
110
  */
123
111
  async listTransactions(input = {}) {
124
112
  const params = { merchantId: this.merchantId };
113
+ if (input.transactionId)
114
+ params.transactionId = input.transactionId;
125
115
  if (input.dateFrom)
126
116
  params.dateFrom = input.dateFrom;
127
117
  if (input.dateTo)
@@ -142,6 +132,102 @@ class Ozura {
142
132
  const raw = await this.getRaw(`/api/v1/transQuery?${qs}`);
143
133
  return { transactions: raw.data, pagination: raw.pagination };
144
134
  }
135
+ // ─── Wax key helpers ─────────────────────────────────────────────────────
136
+ /**
137
+ * Mint a short-lived wax key from the vault.
138
+ *
139
+ * Call this server-side to implement the `fetchWaxKey` callback required by
140
+ * `OzVault.create()` on the frontend. The wax key replaces the vault secret
141
+ * on every browser tokenize call — the secret never leaves your server.
142
+ *
143
+ * The `tokenizationSessionId` passed to `fetchWaxKey` by the SDK should be
144
+ * forwarded here for correlation; it is stored by the vault alongside the
145
+ * wax key but is not used for authentication.
146
+ *
147
+ * @example
148
+ * // Next.js API route
149
+ * export async function POST(req: Request) {
150
+ * const { sessionId } = await req.json();
151
+ * const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
152
+ * return Response.json({ waxKey });
153
+ * }
154
+ */
155
+ async mintWaxKey(options) {
156
+ var _a, _b;
157
+ const body = {};
158
+ if (options === null || options === void 0 ? void 0 : options.tokenizationSessionId) {
159
+ body.checkout_session_id = options.tokenizationSessionId;
160
+ }
161
+ let res;
162
+ try {
163
+ res = await fetch(`${this.vaultUrl}/internal/wax-session`, {
164
+ method: 'POST',
165
+ headers: {
166
+ 'Content-Type': 'application/json',
167
+ 'X-API-Key': this.vaultKey,
168
+ },
169
+ body: JSON.stringify(body),
170
+ signal: AbortSignal.timeout(this.timeoutMs),
171
+ });
172
+ }
173
+ catch (err) {
174
+ const msg = err instanceof Error ? err.message : 'Network error';
175
+ throw new OzuraError(`Wax key mint failed: ${msg}`, 0, msg);
176
+ }
177
+ const json = await res.json().catch(() => ({}));
178
+ if (res.status === 201) {
179
+ const data = json.data;
180
+ const waxKey = String((_a = data === null || data === void 0 ? void 0 : data.wax_key) !== null && _a !== void 0 ? _a : '');
181
+ if (!waxKey) {
182
+ throw new OzuraError('Vault mint response missing data.wax_key', res.status, JSON.stringify(json));
183
+ }
184
+ return {
185
+ waxKey,
186
+ expiresInSeconds: Number((_b = data === null || data === void 0 ? void 0 : data.expires_in_seconds) !== null && _b !== void 0 ? _b : 1800),
187
+ };
188
+ }
189
+ const errorCode = json.error_code || '';
190
+ const message = json.message || json.error || `Wax mint failed (HTTP ${res.status})`;
191
+ throw new OzuraError(errorCode ? `${message} [${errorCode}]` : message, res.status, errorCode || JSON.stringify(json));
192
+ }
193
+ /**
194
+ * Revoke a previously minted wax key.
195
+ *
196
+ * Best-effort: never throws. Call this when the user's session ends (payment
197
+ * complete, cancelled, or expired) to close the exposure window before the
198
+ * vault TTL (30 min) elapses.
199
+ *
200
+ * - 200 = revoked successfully.
201
+ * - 404 = key already expired or not found — treated as success.
202
+ * - 503 = Redis error; the wax may still be valid. Retry if needed.
203
+ *
204
+ * @example
205
+ * // After a successful card sale:
206
+ * await ozura.revokeWaxKey(waxKey);
207
+ */
208
+ async revokeWaxKey(waxKey) {
209
+ var _a, _b;
210
+ if (!waxKey)
211
+ return;
212
+ try {
213
+ const res = await fetch(`${this.vaultUrl}/internal/wax-session/revoke`, {
214
+ method: 'POST',
215
+ headers: {
216
+ 'Content-Type': 'application/json',
217
+ 'X-API-Key': this.vaultKey,
218
+ },
219
+ body: JSON.stringify({ wax_key: waxKey }),
220
+ signal: AbortSignal.timeout(3000),
221
+ });
222
+ if (res.status === 200 || res.status === 404)
223
+ return;
224
+ const json = await res.json().catch(() => ({}));
225
+ console.warn('[Ozura] revokeWaxKey: unexpected status', res.status, (_b = (_a = json.error_code) !== null && _a !== void 0 ? _a : json.message) !== null && _b !== void 0 ? _b : '');
226
+ }
227
+ catch (err) {
228
+ console.warn('[Ozura] revokeWaxKey: best-effort call failed:', err instanceof Error ? err.message : err);
229
+ }
230
+ }
145
231
  // ─── HTTP helpers ────────────────────────────────────────────────────────
146
232
  /**
147
233
  * Execute a fetch with retry on 5xx / network errors.
@@ -187,6 +273,13 @@ class Ozura {
187
273
  throw new OzuraError('Network error', 0);
188
274
  }
189
275
  async post(path, body, includeVaultKey) {
276
+ // Enforce: the server SDK sends x-api-key on every request, so it must
277
+ // never be used to call the vault tokenize endpoint. Tokenization is
278
+ // client-side only (OzVault + tokenizerFrame). Surface misuse immediately.
279
+ if (/\/tokenize\b/i.test(path)) {
280
+ throw new OzuraError('The server SDK must not call the vault tokenize endpoint. ' +
281
+ 'Tokenization must be performed client-side via the OzVault SDK.', 0);
282
+ }
190
283
  const headers = {
191
284
  'Content-Type': 'application/json',
192
285
  'x-api-key': this.apiKey,
@@ -201,14 +294,12 @@ class Ozura {
201
294
  });
202
295
  return this.handleResponse(res);
203
296
  }
204
- async get(path) {
205
- const res = await this.fetchWithRetry(`${this.apiUrl}${path}`, {
206
- method: 'GET',
207
- headers: { 'x-api-key': this.apiKey },
208
- });
209
- return this.handleResponse(res);
210
- }
211
297
  async getRaw(path) {
298
+ // Enforce: same rule as post() — x-api-key must never reach /tokenize.
299
+ if (/\/tokenize\b/i.test(path)) {
300
+ throw new OzuraError('The server SDK must not call the vault tokenize endpoint. ' +
301
+ 'Tokenization must be performed client-side via the OzVault SDK.', 0);
302
+ }
212
303
  const res = await this.fetchWithRetry(`${this.apiUrl}${path}`, {
213
304
  method: 'GET',
214
305
  headers: { 'x-api-key': this.apiKey },
@@ -240,11 +331,103 @@ class Ozura {
240
331
  return ((_a = json.data) !== null && _a !== void 0 ? _a : json);
241
332
  }
242
333
  }
334
+ /**
335
+ * Creates a ready-to-use Fetch API route handler for minting wax keys.
336
+ *
337
+ * Drop-in for Next.js App Router, Cloudflare Workers, Vercel Edge, and any
338
+ * runtime built on the standard Web API `Request` / `Response`.
339
+ *
340
+ * The handler reads `sessionId` (or `tokenizationSessionId`) from the JSON
341
+ * request body, calls `ozura.mintWaxKey()`, and returns `{ waxKey }`.
342
+ * On error it returns `{ error }` with an appropriate HTTP status.
343
+ *
344
+ * @example
345
+ * // app/api/mint-wax/route.ts (Next.js App Router)
346
+ * import { Ozura, createMintWaxHandler } from '@ozura/elements/server';
347
+ *
348
+ * const ozura = new Ozura({
349
+ * merchantId: process.env.MERCHANT_ID!,
350
+ * apiKey: process.env.MERCHANT_API_KEY!,
351
+ * vaultKey: process.env.VAULT_API_KEY!,
352
+ * });
353
+ *
354
+ * export const POST = createMintWaxHandler(ozura);
355
+ */
356
+ function createMintWaxHandler(ozura) {
357
+ return async (req) => {
358
+ var _a;
359
+ let sessionId;
360
+ try {
361
+ const body = await req.json().catch(() => ({}));
362
+ const raw = (_a = body.sessionId) !== null && _a !== void 0 ? _a : body.tokenizationSessionId;
363
+ if (typeof raw === 'string' && raw)
364
+ sessionId = raw;
365
+ }
366
+ catch (_b) {
367
+ // unreadable body — proceed without sessionId
368
+ }
369
+ try {
370
+ const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
371
+ return Response.json({ waxKey });
372
+ }
373
+ catch (err) {
374
+ const status = err instanceof OzuraError && err.statusCode >= 400 ? err.statusCode : 502;
375
+ const message = err instanceof Error ? err.message : 'Failed to mint wax key';
376
+ return Response.json({ error: message }, { status });
377
+ }
378
+ };
379
+ }
380
+ /**
381
+ * Creates a ready-to-use Express / Connect middleware for minting wax keys.
382
+ *
383
+ * Requires `express.json()` (or equivalent body-parser) to be registered
384
+ * before this middleware so `req.body` is available.
385
+ *
386
+ * The middleware reads `sessionId` (or `tokenizationSessionId`) from
387
+ * `req.body`, calls `ozura.mintWaxKey()`, and sends `{ waxKey }`.
388
+ * On error it sends `{ error }` with an appropriate HTTP status.
389
+ *
390
+ * @example
391
+ * // Express
392
+ * import express from 'express';
393
+ * import { Ozura, createMintWaxMiddleware } from '@ozura/elements/server';
394
+ *
395
+ * const ozura = new Ozura({
396
+ * merchantId: process.env.MERCHANT_ID!,
397
+ * apiKey: process.env.MERCHANT_API_KEY!,
398
+ * vaultKey: process.env.VAULT_API_KEY!,
399
+ * });
400
+ *
401
+ * const app = express();
402
+ * app.use(express.json());
403
+ * app.post('/api/mint-wax', createMintWaxMiddleware(ozura));
404
+ */
405
+ function createMintWaxMiddleware(ozura) {
406
+ return async (req, res) => {
407
+ var _a, _b;
408
+ const body = ((_a = req.body) !== null && _a !== void 0 ? _a : {});
409
+ const raw = (_b = body.sessionId) !== null && _b !== void 0 ? _b : body.tokenizationSessionId;
410
+ const sessionId = typeof raw === 'string' && raw ? raw : undefined;
411
+ try {
412
+ const { waxKey } = await ozura.mintWaxKey({ tokenizationSessionId: sessionId });
413
+ res.json({ waxKey });
414
+ }
415
+ catch (err) {
416
+ const status = err instanceof OzuraError && err.statusCode >= 400 ? err.statusCode : 502;
417
+ const message = err instanceof Error ? err.message : 'Failed to mint wax key';
418
+ res.status(status).json({ error: message });
419
+ }
420
+ };
421
+ }
243
422
  // ─── Utilities ────────────────────────────────────────────────────────────────
244
423
  /**
245
424
  * Extract the client IP address from a server request object.
246
425
  * Works with Express (`req.ip`), Fastify (`request.ip`), Next.js App Router
247
- * (`req.headers.get('x-forwarded-for')`), and raw Node.js `IncomingMessage`.
426
+ * (`req.headers.get()`), and raw Node.js `IncomingMessage`.
427
+ *
428
+ * Header priority: `req.ip` (framework-resolved) → `cf-connecting-ip`
429
+ * (Cloudflare) → `x-forwarded-for` (reverse proxy) → `x-real-ip` →
430
+ * `socket.remoteAddress` → `"0.0.0.0"`.
248
431
  *
249
432
  * @example
250
433
  * // Express / Fastify
@@ -257,19 +440,26 @@ function getClientIp(req) {
257
440
  // Express / Fastify: req.ip
258
441
  if (typeof req.ip === 'string' && req.ip)
259
442
  return req.ip;
260
- // Next.js App Router: req.headers.get('x-forwarded-for')
443
+ // Headers API (Next.js App Router, Fetch API)
261
444
  const headers = req.headers;
262
445
  if (headers && typeof headers.get === 'function') {
263
- const xff = headers.get('x-forwarded-for');
446
+ const get = (name) => headers.get(name);
447
+ const cfIp = get('cf-connecting-ip');
448
+ if (cfIp)
449
+ return cfIp;
450
+ const xff = get('x-forwarded-for');
264
451
  if (xff)
265
452
  return xff.split(',')[0].trim();
266
- const realIp = headers.get('x-real-ip');
453
+ const realIp = get('x-real-ip');
267
454
  if (realIp)
268
455
  return realIp;
269
456
  }
270
- // Node.js IncomingMessage: req.headers['x-forwarded-for']
457
+ // Node.js IncomingMessage: req.headers object
271
458
  if (headers && typeof headers === 'object') {
272
459
  const h = headers;
460
+ const cfIp = h['cf-connecting-ip'];
461
+ if (typeof cfIp === 'string' && cfIp)
462
+ return cfIp;
273
463
  const xff = h['x-forwarded-for'];
274
464
  if (typeof xff === 'string' && xff)
275
465
  return xff.split(',')[0].trim();
@@ -286,5 +476,5 @@ function getClientIp(req) {
286
476
  return '0.0.0.0';
287
477
  }
288
478
 
289
- export { Ozura, OzuraError, getClientIp };
479
+ export { Ozura, OzuraError, createMintWaxHandler, createMintWaxMiddleware, getClientIp };
290
480
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.esm.js","sources":["../../src/server/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.esm.js","sources":["../../src/server/index.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -4,8 +4,20 @@ import { ElementType, BankElementType, ElementOptions, VaultOptions, TokenizeOpt
4
4
  * The main entry point for OzElements. Creates and manages iframe-based
5
5
  * card input elements that keep raw card data isolated from the merchant page.
6
6
  *
7
+ * Use the static `OzVault.create()` factory — do not call `new OzVault()` directly.
8
+ *
7
9
  * @example
8
- * const vault = new OzVault('your_vault_api_key');
10
+ * const vault = await OzVault.create({
11
+ * pubKey: 'pk_live_...',
12
+ * fetchWaxKey: async (sessionId) => {
13
+ * // Call your backend — which calls ozura.mintWaxKey() from oz-elements/server
14
+ * const { waxKey } = await fetch('/api/mint-wax', {
15
+ * method: 'POST',
16
+ * body: JSON.stringify({ sessionId }),
17
+ * }).then(r => r.json());
18
+ * return waxKey;
19
+ * },
20
+ * });
9
21
  * const cardNum = vault.createElement('cardNumber');
10
22
  * cardNum.mount('#card-number');
11
23
  * const { token, cvcSession } = await vault.createToken({
@@ -13,9 +25,9 @@ import { ElementType, BankElementType, ElementOptions, VaultOptions, TokenizeOpt
13
25
  * });
14
26
  */
15
27
  export declare class OzVault {
16
- private apiKey;
28
+ private waxKey;
29
+ private tokenizationSessionId;
17
30
  private pubKey;
18
- private apiUrl;
19
31
  private frameBaseUrl;
20
32
  private frameOrigin;
21
33
  private fonts;
@@ -36,7 +48,30 @@ export declare class OzVault {
36
48
  private boundHandleMessage;
37
49
  private _pendingMount;
38
50
  private loadErrorTimeoutId;
39
- constructor(apiKey: string, options: VaultOptions);
51
+ /**
52
+ * Internal constructor — use `OzVault.create()` instead.
53
+ * The constructor mounts the tokenizer iframe immediately so it can start
54
+ * loading in parallel while `fetchWaxKey` is being awaited.
55
+ */
56
+ private constructor();
57
+ /**
58
+ * Creates and returns a ready `OzVault` instance.
59
+ *
60
+ * Internally this:
61
+ * 1. Generates a `tokenizationSessionId` (UUID).
62
+ * 2. Starts loading the hidden tokenizer iframe immediately.
63
+ * 3. Calls `options.fetchWaxKey(tokenizationSessionId)` concurrently — your
64
+ * backend mints a session-bound wax key from the vault and returns it.
65
+ * 4. Resolves with the vault instance once the wax key is stored. The iframe
66
+ * has been loading the whole time, so `isReady` may already be true or
67
+ * will fire shortly after.
68
+ *
69
+ * The returned vault is ready to create elements immediately. `createToken()`
70
+ * additionally requires `vault.isReady` (tokenizer iframe loaded).
71
+ *
72
+ * @throws {OzError} if `fetchWaxKey` throws or returns an empty string.
73
+ */
74
+ static create(options: VaultOptions): Promise<OzVault>;
40
75
  /**
41
76
  * True once the hidden tokenizer iframe has loaded and signalled ready.
42
77
  * Use this to gate the pay button when building custom UIs without React.
@@ -63,6 +98,7 @@ export declare class OzVault {
63
98
  createBankElement(type: BankElementType, options?: ElementOptions): OzElement;
64
99
  /** Returns the existing bank element of the given type, or null if none has been created. */
65
100
  getBankElement(type: BankElementType): OzElement | null;
101
+ private createElementInto;
66
102
  /**
67
103
  * Tokenizes mounted bank account elements. Raw account and routing numbers
68
104
  * never leave the Ozura-origin iframes — the tokenizer iframe POSTs directly
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * errors.ts — error types and normalisation for OzElements.
3
3
  *
4
- * Two normalisation functions:
5
- * - normalizeVaultError — maps raw vault /tokenize errors to user-facing messages
6
- * - normalizeCardSaleError — maps raw cardSale API errors to user-facing messages
4
+ * Three normalisation functions:
5
+ * - normalizeVaultError — maps raw vault /tokenize errors to user-facing messages (card flows)
6
+ * - normalizeBankVaultError — maps raw vault /tokenize errors to user-facing messages (bank/ACH flows)
7
+ * - normalizeCardSaleError — maps raw cardSale API errors to user-facing messages
7
8
  *
8
9
  * Error keys in normalizeCardSaleError are taken directly from checkout's
9
10
  * errorMapping.ts so the same error strings produce the same user-facing copy.
@@ -1,5 +1,5 @@
1
1
  export { OzVault } from './OzVault';
2
2
  export { OzElement } from './OzElement';
3
- export { OzError, normalizeVaultError, normalizeCardSaleError } from './errors';
3
+ export { OzError, normalizeVaultError, normalizeBankVaultError, normalizeCardSaleError } from './errors';
4
4
  export type { OzErrorCode } from './errors';
5
- export type { ElementType, BankElementType, ElementOptions, ElementStyleConfig, ElementStyle, ElementChangeEvent, VaultOptions, TokenizeOptions, BankTokenizeOptions, TokenResponse, BankTokenResponse, CardMetadata, BankAccountMetadata, FontSource, CssFontSource, CustomFontSource, BillingDetails, BillingAddress, CardSaleRequest, CardSaleResponseData, CardSaleApiResponse, Appearance, AppearanceVariables, OzTheme, TransactionQueryParams, TransactionQueryPagination, TransactionQueryResponse, } from '../types';
5
+ export type { ElementType, BankElementType, ElementOptions, ElementStyleConfig, ElementStyle, ElementChangeEvent, VaultOptions, TokenizeOptions, BankTokenizeOptions, TokenResponse, BankTokenResponse, CardMetadata, BankAccountMetadata, FontSource, CssFontSource, CustomFontSource, BillingDetails, BillingAddress, CardSaleRequest, CardSaleResponseData, CardSaleApiResponse, Appearance, AppearanceVariables, OzTheme, TransactionQueryParams, TransactionQueryPagination, TransactionQueryResponse, TransactionType, CardTransactionType, AchTransactionType, CryptoTransactionType, TransactionBase, CardTransactionData, AchTransactionData, CryptoTransactionData, TransactionData, } from '../types';