@marcohefti/request-network-api-client 0.5.11 → 0.6.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 (82) hide show
  1. package/README.md +4 -4
  2. package/dist/cjs/domains/currencies/v1/index.js +288 -0
  3. package/dist/cjs/domains/currencies/v1/index.js.map +1 -0
  4. package/dist/cjs/domains/pay/index.js +251 -0
  5. package/dist/cjs/domains/pay/index.js.map +1 -0
  6. package/dist/cjs/domains/pay/v1/index.js +241 -0
  7. package/dist/cjs/domains/pay/v1/index.js.map +1 -0
  8. package/dist/cjs/domains/payer/v1/index.js +355 -0
  9. package/dist/cjs/domains/payer/v1/index.js.map +1 -0
  10. package/dist/cjs/domains/payer/v2/index.js +355 -0
  11. package/dist/cjs/domains/payer/v2/index.js.map +1 -0
  12. package/dist/cjs/domains/payments/index.js +274 -0
  13. package/dist/cjs/domains/payments/index.js.map +1 -0
  14. package/dist/cjs/domains/requests/index.js +40 -12
  15. package/dist/cjs/domains/requests/index.js.map +1 -1
  16. package/dist/cjs/domains/requests/v1/index.js +499 -0
  17. package/dist/cjs/domains/requests/v1/index.js.map +1 -0
  18. package/dist/cjs/domains/secure-payments/index.js +248 -0
  19. package/dist/cjs/domains/secure-payments/index.js.map +1 -0
  20. package/dist/cjs/index.js +238 -246
  21. package/dist/cjs/index.js.map +1 -1
  22. package/dist/esm/{index-y-zLkaVo.d.mts → currencies.v1.facade-ROQlpyCp.d.mts} +2 -34
  23. package/dist/esm/domains/client-ids/index.d.mts +2 -2
  24. package/dist/esm/domains/currencies/index.d.mts +3 -2
  25. package/dist/esm/domains/currencies/v1/index.d.mts +3 -0
  26. package/dist/esm/domains/currencies/v1/index.js +286 -0
  27. package/dist/esm/domains/currencies/v1/index.js.map +1 -0
  28. package/dist/esm/domains/pay/index.d.mts +3 -0
  29. package/dist/esm/domains/pay/index.js +248 -0
  30. package/dist/esm/domains/pay/index.js.map +1 -0
  31. package/dist/esm/domains/pay/v1/index.d.mts +2 -0
  32. package/dist/esm/domains/pay/v1/index.js +239 -0
  33. package/dist/esm/domains/pay/v1/index.js.map +1 -0
  34. package/dist/esm/domains/payer/index.d.mts +4 -2
  35. package/dist/esm/domains/payer/v1/index.d.mts +2 -0
  36. package/dist/esm/domains/payer/v1/index.js +353 -0
  37. package/dist/esm/domains/payer/v1/index.js.map +1 -0
  38. package/dist/esm/domains/payer/v2/index.d.mts +2 -0
  39. package/dist/esm/domains/payer/v2/index.js +353 -0
  40. package/dist/esm/domains/payer/v2/index.js.map +1 -0
  41. package/dist/esm/domains/payments/index.d.mts +3 -0
  42. package/dist/esm/domains/payments/index.js +272 -0
  43. package/dist/esm/domains/payments/index.js.map +1 -0
  44. package/dist/esm/domains/payouts/index.d.mts +2 -2
  45. package/dist/esm/domains/requests/index.d.mts +3 -2
  46. package/dist/esm/domains/requests/index.js +40 -12
  47. package/dist/esm/domains/requests/index.js.map +1 -1
  48. package/dist/esm/domains/requests/v1/index.d.mts +3 -0
  49. package/dist/esm/domains/requests/v1/index.js +497 -0
  50. package/dist/esm/domains/requests/v1/index.js.map +1 -0
  51. package/dist/esm/domains/secure-payments/index.d.mts +2 -0
  52. package/dist/esm/domains/secure-payments/index.js +246 -0
  53. package/dist/esm/domains/secure-payments/index.js.map +1 -0
  54. package/dist/esm/index-4zmukpkJ.d.mts +12 -0
  55. package/dist/esm/index-BPikysYP.d.mts +10 -0
  56. package/dist/esm/index-BlEg0bI1.d.mts +25 -0
  57. package/dist/esm/{index-CTQxsAHa.d.mts → index-CBcZqEQp.d.mts} +1 -1
  58. package/dist/esm/index-CS9UrTd6.d.mts +10 -0
  59. package/dist/esm/index-CeMw0yOZ.d.mts +3393 -0
  60. package/dist/esm/index-DPVFRK3h.d.mts +36 -0
  61. package/dist/esm/{index-B5uZTITr.d.mts → index-DPx06HBi.d.mts} +18 -58
  62. package/dist/esm/index-DZ0iw_Xz.d.mts +10 -0
  63. package/dist/esm/index-DpFThmL3.d.mts +57 -0
  64. package/dist/esm/{index-DzdJCXFj.d.mts → index-DuMayMNI.d.mts} +1 -1
  65. package/dist/esm/index-Kx46FKbk.d.mts +38 -0
  66. package/dist/esm/index-srhKdWh7.d.mts +21 -0
  67. package/dist/esm/index.d.mts +31 -3520
  68. package/dist/esm/index.js +238 -246
  69. package/dist/esm/index.js.map +1 -1
  70. package/dist/esm/{openapi-types-D-zUdw-r.d.mts → openapi-types-JhYQOcil.d.mts} +263 -128
  71. package/dist/esm/pay.v1.facade-wxvuDX9t.d.mts +17 -0
  72. package/dist/esm/payer.v1.facade-Rcl1BBPl.d.mts +31 -0
  73. package/dist/esm/payer.v2.facade-BqcIOIBY.d.mts +31 -0
  74. package/dist/esm/request.helpers-DgzNANMt.d.mts +51 -0
  75. package/package.json +11 -10
  76. package/dist/cjs/domains/payee-destination/index.js +0 -276
  77. package/dist/cjs/domains/payee-destination/index.js.map +0 -1
  78. package/dist/esm/domains/payee-destination/index.d.mts +0 -2
  79. package/dist/esm/domains/payee-destination/index.js +0 -274
  80. package/dist/esm/domains/payee-destination/index.js.map +0 -1
  81. package/dist/esm/index-BDVvifym.d.mts +0 -31
  82. package/dist/esm/index-CvPDycgF.d.mts +0 -79
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/core/http/validation.config.ts","../../../../../src/validation/schema.registry.ts","../../../../../src/validation/zod.helpers.ts","../../../../../src/core/http/operation.helper.ts","../../../../../src/domains/requests/request.helpers.ts","../../../../../src/domains/requests/v1/requests.v1.facade.ts","../../../../../src/validation/generated/groups/request.schemas.generated.ts"],"names":["z"],"mappings":"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","file":"index.js","sourcesContent":["import type { RuntimeValidationConfig, RuntimeValidationOption } from \"./http.types\";\n\nconst DEFAULT_RUNTIME_VALIDATION: RuntimeValidationConfig = {\n requests: true,\n responses: true,\n errors: true,\n};\n\nfunction normaliseBoolean(flag: boolean | undefined, fallback: boolean): boolean {\n return typeof flag === \"boolean\" ? flag : fallback;\n}\n\nexport function normaliseRuntimeValidation(option?: RuntimeValidationOption): RuntimeValidationConfig {\n if (typeof option === \"boolean\") {\n return {\n requests: option,\n responses: option,\n errors: option,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(option?.requests, DEFAULT_RUNTIME_VALIDATION.requests),\n responses: normaliseBoolean(option?.responses, DEFAULT_RUNTIME_VALIDATION.responses),\n errors: normaliseBoolean(option?.errors, DEFAULT_RUNTIME_VALIDATION.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function mergeRuntimeValidation(base: RuntimeValidationConfig, override?: RuntimeValidationOption): RuntimeValidationConfig {\n if (override === undefined) {\n return base;\n }\n\n if (typeof override === \"boolean\") {\n return {\n requests: override,\n responses: override,\n errors: override,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(override.requests, base.requests),\n responses: normaliseBoolean(override.responses, base.responses),\n errors: normaliseBoolean(override.errors, base.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function cloneRuntimeValidation(config: RuntimeValidationConfig): RuntimeValidationConfig {\n return { ...config };\n}\n","import type { ZodTypeAny } from \"zod\";\n\nexport type SchemaKind = \"request\" | \"response\" | \"webhook\";\n\nexport interface SchemaKey {\n operationId: string;\n kind: SchemaKind;\n variant?: string;\n status?: number;\n}\n\nexport interface SchemaEntry<TSchema extends ZodTypeAny = ZodTypeAny> {\n key: SchemaKey;\n schema: TSchema;\n}\n\nfunction serialiseKey(key: SchemaKey): string {\n const variant = key.variant ?? \"default\";\n const status = key.status?.toString() ?? \"any\";\n return `${key.operationId}|${key.kind}|${variant}|${status}`;\n}\n\n/**\n * Lightweight registry that associates OpenAPI operation IDs with validation schemas.\n * Generators can populate this map while domain modules retrieve the schemas at runtime.\n */\nexport class SchemaRegistry {\n private readonly store = new Map<string, SchemaEntry>();\n\n register(entry: SchemaEntry): void {\n const id = serialiseKey(entry.key);\n this.store.set(id, entry);\n }\n\n get(key: SchemaKey): ZodTypeAny | undefined {\n const id = serialiseKey(key);\n return this.store.get(id)?.schema;\n }\n\n /**\n * Removes every registered schema — primarily useful in tests.\n */\n clear(): void {\n this.store.clear();\n }\n}\n\nexport const schemaRegistry = new SchemaRegistry();\n","import { type SafeParseReturnType, type ZodTypeAny } from \"zod\";\n\nimport type { SchemaKey } from \"./schema.registry\";\nimport { schemaRegistry } from \"./schema.registry\";\n\nexport type SchemaOutput<TSchema extends ZodTypeAny> = TSchema[\"_output\"];\n\nexport interface ParseWithSchemaOptions<TSchema extends ZodTypeAny> {\n schema: TSchema;\n value: unknown;\n description?: string;\n}\n\nexport interface ParseRegistryOptions {\n key: SchemaKey;\n value: unknown;\n description?: string;\n skipOnMissingSchema?: boolean;\n}\n\nexport interface ParseResult<T> {\n success: boolean;\n data?: T;\n error?: unknown;\n}\n\nexport class ValidationError extends Error {\n constructor(message: string, readonly cause?: unknown) {\n super(message, { cause });\n this.name = \"ClientValidationError\";\n }\n}\n\nexport function parseWithSchema<TSchema extends ZodTypeAny>(\n options: ParseWithSchemaOptions<TSchema>,\n): ParseResult<SchemaOutput<TSchema>> {\n const { schema, value, description } = options;\n const outcome: SafeParseReturnType<unknown, SchemaOutput<TSchema>> = schema.safeParse(value);\n if (outcome.success) {\n return { success: true, data: outcome.data };\n }\n\n const error = new ValidationError(description ?? \"Validation failed\", outcome.error);\n return { success: false, error };\n}\n\nexport function parseWithRegistry<TSchema extends ZodTypeAny>(options: ParseRegistryOptions): ParseResult<SchemaOutput<TSchema>> {\n const schema = schemaRegistry.get(options.key) as TSchema | undefined;\n if (!schema) {\n if (options.skipOnMissingSchema) {\n return { success: true, data: options.value as SchemaOutput<TSchema> };\n }\n return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };\n }\n\n return parseWithSchema({ schema, value: options.value, description: options.description });\n}\n","import type { HttpClient, HttpMethod, RequestOptions, RuntimeValidationOption } from \"./http.types\";\nimport { mergeRuntimeValidation } from \"./validation.config\";\nimport type { SchemaKey } from \"../../validation/schema.registry\";\nimport { parseWithRegistry } from \"../../validation/zod.helpers\";\n\ntype Query = NonNullable<RequestOptions[\"query\"]>;\n\nexport interface RequestJsonParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n schemaKey: SchemaKey;\n requestSchemaKey?: SchemaKey;\n description?: string;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestJson<T>(http: HttpClient, params: RequestJsonParams): Promise<T> {\n const {\n operationId,\n method,\n path,\n query,\n body,\n schemaKey,\n requestSchemaKey,\n description,\n querySerializer,\n signal,\n timeoutMs,\n validation,\n meta,\n } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${description ?? operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n const res = await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n\n if (!runtimeValidation.responses) {\n return res.data as T;\n }\n\n const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });\n if (!parsedResponse.success) throw parsedResponse.error;\n return parsedResponse.data as T;\n}\n\nexport interface RequestVoidParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n requestSchemaKey?: SchemaKey;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestVoid(http: HttpClient, params: RequestVoidParams): Promise<void> {\n const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n}\n","import type { RequestOptions } from \"../../core/http/http.types\";\nimport type { operations } from \"../../generated/openapi-types\";\n\ntype QueryValue = string | number | boolean | (string | number | boolean)[];\n\n/**\n * Builds a query object while stripping out undefined entries so the HTTP helper\n * does not emit spurious `param=undefined` pairs.\n */\nexport function buildRequestQuery(input?: Record<string, unknown>): RequestOptions[\"query\"] | undefined {\n if (!input) return undefined;\n const entries = Object.entries(input).filter(([, value]) => value !== undefined);\n if (entries.length === 0) return undefined;\n return Object.fromEntries(entries) as Record<string, QueryValue | undefined>;\n}\n\ntype LegacyStatusApiResponse =\n operations[\"RequestControllerV1_getRequestStatus_v1\"][\"responses\"][200][\"content\"][\"application/json\"];\ntype StatusApiResponseV2 =\n operations[\"RequestControllerV2_getRequestStatus_v2\"][\"responses\"][200][\"content\"][\"application/json\"];\n\nexport interface RequestStatusAddress {\n street?: string;\n city?: string;\n state?: string;\n postalCode?: string;\n country?: string;\n}\n\nexport interface RequestStatusCustomerInfo {\n firstName?: string;\n lastName?: string;\n email?: string;\n address?: RequestStatusAddress;\n}\n\nexport type RequestStatusKind = \"paid\" | \"pending\" | \"cancelled\" | \"overdue\" | \"unknown\";\n\ninterface RequestStatusBase {\n paymentReference?: string;\n requestId?: string;\n isListening?: boolean;\n txHash: string | null;\n status?: string;\n recurrence?: Record<string, unknown>;\n originalRequestId?: string;\n originalRequestPaymentReference?: string;\n isRecurrenceStopped?: boolean;\n isCryptoToFiatAvailable?: boolean;\n payments?: Array<Record<string, unknown>>;\n customerInfo?: RequestStatusCustomerInfo | null;\n reference?: string | null;\n hasBeenPaid?: boolean;\n}\n\nexport type RequestStatusResult =\n | (RequestStatusBase & { kind: \"paid\"; hasBeenPaid: true })\n | (RequestStatusBase & { kind: \"pending\"; hasBeenPaid?: boolean })\n | (RequestStatusBase & { kind: \"cancelled\"; hasBeenPaid?: boolean })\n | (RequestStatusBase & { kind: \"overdue\"; hasBeenPaid?: boolean })\n | (RequestStatusBase & { kind: \"unknown\"; hasBeenPaid?: boolean });\n\nexport type LegacyRequestStatusResult = Extract<RequestStatusResult, { kind: \"paid\" | \"pending\" }>;\n\nconst STATUS_KIND_MAP: Record<string, RequestStatusKind> = {\n paid: \"paid\",\n completed: \"paid\",\n settled: \"paid\",\n pending: \"pending\",\n processing: \"pending\",\n open: \"pending\",\n awaitingpayment: \"pending\",\n awaiting_payment: \"pending\",\n cancelled: \"cancelled\",\n canceled: \"cancelled\",\n voided: \"cancelled\",\n overdue: \"overdue\",\n expired: \"overdue\",\n};\n\nfunction normalizeReference(value: string | null | undefined): string | null | undefined {\n if (value === undefined) return undefined;\n return value;\n}\n\nfunction normalizeCustomerInfo(value: RequestStatusCustomerInfo | null | undefined): RequestStatusCustomerInfo | null | undefined {\n if (value === undefined) return undefined;\n if (value === null) return null;\n return {\n firstName: value.firstName ?? undefined,\n lastName: value.lastName ?? undefined,\n email: value.email ?? undefined,\n address: value.address\n ? {\n street: value.address.street ?? undefined,\n city: value.address.city ?? undefined,\n state: value.address.state ?? undefined,\n postalCode: value.address.postalCode ?? undefined,\n country: value.address.country ?? undefined,\n }\n : undefined,\n };\n}\n\nfunction normalizePayments(payments: StatusApiResponseV2[\"payments\"]): Array<Record<string, unknown>> | undefined {\n if (!payments) return undefined;\n return payments.map((payment) => ({ ...payment })) as Array<Record<string, unknown>>;\n}\n\nfunction buildStatusBase(\n raw: LegacyStatusApiResponse | StatusApiResponseV2,\n overrides?: Partial<RequestStatusBase>,\n): RequestStatusBase {\n return {\n paymentReference: raw.paymentReference ?? undefined,\n requestId: raw.requestId ?? undefined,\n isListening: \"isListening\" in raw ? raw.isListening ?? undefined : undefined,\n txHash: raw.txHash ?? null,\n hasBeenPaid: raw.hasBeenPaid ?? false,\n status: \"status\" in raw ? (raw).status ?? undefined : undefined,\n recurrence:\n \"recurrence\" in raw ? ((raw).recurrence as Record<string, unknown> | undefined) : undefined,\n originalRequestId: \"originalRequestId\" in raw ? (raw).originalRequestId ?? undefined : undefined,\n originalRequestPaymentReference:\n \"originalRequestPaymentReference\" in raw\n ? (raw).originalRequestPaymentReference ?? undefined\n : undefined,\n isRecurrenceStopped:\n \"isRecurrenceStopped\" in raw ? (raw).isRecurrenceStopped ?? undefined : undefined,\n isCryptoToFiatAvailable:\n \"isCryptoToFiatAvailable\" in raw\n ? (raw).isCryptoToFiatAvailable ?? undefined\n : undefined,\n payments: \"payments\" in raw ? normalizePayments((raw).payments) : undefined,\n customerInfo:\n \"customerInfo\" in raw\n ? normalizeCustomerInfo(\n (raw).customerInfo as RequestStatusCustomerInfo | null | undefined,\n )\n : undefined,\n reference:\n \"reference\" in raw ? normalizeReference((raw).reference ?? null) : undefined,\n ...overrides,\n };\n}\n\nexport function normalizeLegacyStatusResponse(raw: LegacyStatusApiResponse): LegacyRequestStatusResult {\n if (raw.hasBeenPaid) {\n return {\n kind: \"paid\",\n ...buildStatusBase(raw, { hasBeenPaid: true }),\n hasBeenPaid: true,\n };\n }\n\n return {\n kind: \"pending\",\n ...buildStatusBase(raw, { hasBeenPaid: false }),\n hasBeenPaid: false,\n };\n}\n\nexport function normalizeRequestStatusResponse(raw: StatusApiResponseV2): RequestStatusResult {\n const statusKey = raw.status?.trim().toLowerCase();\n const mapped = statusKey ? STATUS_KIND_MAP[statusKey] : undefined;\n const kind: RequestStatusKind = raw.hasBeenPaid\n ? \"paid\"\n : mapped ?? (statusKey ? \"unknown\" : \"pending\");\n\n if (kind === \"paid\") {\n return {\n kind,\n ...buildStatusBase(raw, { hasBeenPaid: true }),\n hasBeenPaid: true,\n };\n }\n\n return {\n kind,\n ...buildStatusBase(raw, { hasBeenPaid: false }),\n hasBeenPaid: false,\n };\n}\n","import type { HttpClient, RequestOptions, RuntimeValidationOption } from \"../../../core/http/http.types\";\nimport { requestJson, requestVoid } from \"../../../core/http/operation.helper\";\nimport type { operations } from \"../../../generated/openapi-types\";\nimport { ValidationError } from \"../../../validation/zod.helpers\";\nimport {\n buildRequestQuery,\n normalizeLegacyStatusResponse,\n type LegacyRequestStatusResult,\n} from \"../request.helpers\";\n\nconst OP_CREATE = \"RequestControllerV1_createRequest_v1\" as const;\nconst OP_PAYMENT_ROUTES = \"RequestControllerV1_getRequestPaymentRoutes_v1\" as const;\nconst OP_PAYMENT_CALLDATA = \"RequestControllerV1_getPaymentCalldata_v1\" as const;\nconst OP_REQUEST_STATUS = \"RequestControllerV1_getRequestStatus_v1\" as const;\nconst OP_SEND_PAYMENT_INTENT = \"RequestControllerV1_sendPaymentIntent_v1\" as const;\nconst OP_STOP_RECURRENCE = \"RequestControllerV1_stopRecurrenceRequest_v1\" as const;\n\ntype CreateRequestBody = operations[typeof OP_CREATE][\"requestBody\"][\"content\"][\"application/json\"];\ntype CreateRequestResponse = operations[typeof OP_CREATE][\"responses\"][201][\"content\"][\"application/json\"];\n\ntype PaymentRoutesResponse = operations[typeof OP_PAYMENT_ROUTES][\"responses\"][200][\"content\"][\"application/json\"];\ntype PaymentRoutesQuery = operations[typeof OP_PAYMENT_ROUTES][\"parameters\"][\"query\"];\n\ntype PaymentCalldataQuery = NonNullable<operations[typeof OP_PAYMENT_CALLDATA][\"parameters\"][\"query\"]>;\ntype RawPaymentCalldata = operations[typeof OP_PAYMENT_CALLDATA][\"responses\"][200][\"content\"][\"application/json\"];\n\ntype RawStatusResponse = operations[typeof OP_REQUEST_STATUS][\"responses\"][200][\"content\"][\"application/json\"];\n\ntype PaymentIntentPayload = Extract<RawPaymentCalldata, { paymentIntentId: string }>;\ntype CalldataPayload = Extract<RawPaymentCalldata, { transactions: unknown }>;\n\nconst KIND_CALLDATA = \"calldata\" as const;\nconst KIND_PAYMENT_INTENT = \"paymentIntent\" as const;\n\nfunction isPaymentIntentPayload(payload: RawPaymentCalldata): payload is PaymentIntentPayload {\n return \"paymentIntentId\" in payload;\n}\n\nfunction isCalldataPayload(payload: RawPaymentCalldata): payload is CalldataPayload {\n return \"transactions\" in payload;\n}\n\nexport interface RequestV1OperationOptions {\n signal?: AbortSignal;\n timeoutMs?: number;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport type GetPaymentRoutesOptions = RequestV1OperationOptions & {\n wallet: PaymentRoutesQuery[\"wallet\"];\n} & Partial<Omit<PaymentRoutesQuery, \"wallet\">>;\n\nexport type GetPaymentCalldataOptions = RequestV1OperationOptions & Partial<PaymentCalldataQuery>;\n\nexport type RequestStatusResult = LegacyRequestStatusResult;\n\nexport type SendPaymentIntentBody = operations[typeof OP_SEND_PAYMENT_INTENT][\"requestBody\"][\"content\"][\"application/json\"];\n\nexport interface RequestsV1Api {\n create(body: CreateRequestBody, options?: RequestV1OperationOptions): Promise<CreateRequestResponse>;\n getPaymentRoutes(paymentReference: string, options: GetPaymentRoutesOptions): Promise<PaymentRoutesResponse>;\n getPaymentCalldata(paymentReference: string, options?: GetPaymentCalldataOptions): Promise<\n | ({ kind: \"calldata\" } & CalldataPayload)\n | ({ kind: \"paymentIntent\" } & PaymentIntentPayload)\n >;\n getRequestStatus(paymentReference: string, options?: RequestV1OperationOptions): Promise<RequestStatusResult>;\n sendPaymentIntent(paymentIntentId: string, body: SendPaymentIntentBody, options?: RequestV1OperationOptions): Promise<void>;\n stopRecurrence(paymentReference: string, options?: RequestV1OperationOptions): Promise<void>;\n}\n\nexport function createRequestsV1Api(http: HttpClient): RequestsV1Api {\n return {\n async create(body, options) {\n return requestJson<CreateRequestResponse>(http, {\n operationId: OP_CREATE,\n method: \"POST\",\n path: \"/v1/request\",\n body,\n requestSchemaKey: { operationId: OP_CREATE, kind: \"request\", variant: \"application/json\" },\n schemaKey: { operationId: OP_CREATE, kind: \"response\", status: 201 },\n description: \"Create legacy request\",\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n },\n\n async getPaymentRoutes(paymentReference, options) {\n const path = `/v1/request/${encodeURIComponent(paymentReference)}/routes`;\n return requestJson<PaymentRoutesResponse>(http, {\n operationId: OP_PAYMENT_ROUTES,\n method: \"GET\",\n path,\n query: buildRequestQuery({\n wallet: options.wallet,\n amount: options.amount,\n feePercentage: options.feePercentage,\n feeAddress: options.feeAddress,\n }),\n schemaKey: { operationId: OP_PAYMENT_ROUTES, kind: \"response\", status: 200 },\n description: \"Legacy payment routes\",\n signal: options.signal,\n timeoutMs: options.timeoutMs,\n validation: options.validation,\n meta: options.meta,\n });\n },\n\n async getPaymentCalldata(paymentReference, options) {\n const path = `/v1/request/${encodeURIComponent(paymentReference)}/pay`;\n const query = buildRequestQuery({\n wallet: options?.wallet,\n chain: options?.chain,\n token: options?.token,\n amount: options?.amount,\n });\n\n const raw = await requestJson<RawPaymentCalldata>(http, {\n operationId: OP_PAYMENT_CALLDATA,\n method: \"GET\",\n path,\n query,\n schemaKey: { operationId: OP_PAYMENT_CALLDATA, kind: \"response\", status: 200 },\n description: \"Legacy payment calldata\",\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n\n if (isCalldataPayload(raw)) {\n return { kind: KIND_CALLDATA, ...raw };\n }\n if (isPaymentIntentPayload(raw)) {\n return { kind: KIND_PAYMENT_INTENT, ...raw };\n }\n\n throw new ValidationError(\"Unexpected payment calldata response\", raw);\n },\n\n async getRequestStatus(paymentReference, options) {\n const path = `/v1/request/${encodeURIComponent(paymentReference)}`;\n const rawStatus = await requestJson<RawStatusResponse>(http, {\n operationId: OP_REQUEST_STATUS,\n method: \"GET\",\n path,\n schemaKey: { operationId: OP_REQUEST_STATUS, kind: \"response\", status: 200 },\n description: \"Legacy request status\",\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n\n return normalizeLegacyStatusResponse(rawStatus);\n },\n\n async sendPaymentIntent(paymentIntentId, body, options) {\n const path = `/v1/request/${encodeURIComponent(paymentIntentId)}/send`;\n await requestVoid(http, {\n operationId: OP_SEND_PAYMENT_INTENT,\n method: \"POST\",\n path,\n body,\n requestSchemaKey: { operationId: OP_SEND_PAYMENT_INTENT, kind: \"request\", variant: \"application/json\" },\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n },\n\n async stopRecurrence(paymentReference, options) {\n const path = `/v1/request/${encodeURIComponent(paymentReference)}/stop-recurrence`;\n await requestVoid(http, {\n operationId: OP_STOP_RECURRENCE,\n method: \"PATCH\",\n path,\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n },\n };\n}\n","// Auto-generated by scripts/generate-zod.mjs. Do not edit.\nimport { z } from 'zod';\n\nimport { schemaRegistry } from '../../schema.registry';\n\nconst ErrorDetailSchema = z\n .object({\n message: z.string(),\n code: z.string().optional(),\n field: z.string().optional(),\n source: z\n .object({\n pointer: z.string().optional(),\n parameter: z.string().optional(),\n })\n .passthrough()\n .optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\nconst ErrorEnvelopeSchema = z\n .object({\n status: z.number().optional(),\n statusCode: z.number().optional(),\n code: z.string().optional(),\n error: z.string().optional(),\n message: z\n .union([\n z.string(),\n z.array(z.union([z.string(), ErrorDetailSchema])),\n ErrorDetailSchema,\n ])\n .optional(),\n detail: z.unknown().optional(),\n errors: z.array(ErrorDetailSchema).optional(),\n requestId: z.string().optional(),\n correlationId: z.string().optional(),\n retryAfter: z.union([z.number(), z.string()]).optional(),\n retryAfterMs: z.number().optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\n// POST /v1/request -> RequestControllerV1_createRequest_v1 request (application/json)\nexport const RequestControllerV1_createRequest_v1_Request = z.object({ \"payer\": (z.string()).optional(), \"payee\": z.string(), \"amount\": z.string(), \"invoiceCurrency\": z.string(), \"paymentCurrency\": z.string(), \"recurrence\": (z.object({ \"startDate\": z.string(), \"frequency\": z.enum(['DAILY', 'WEEKLY', 'MONTHLY', 'YEARLY']) }).passthrough()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_createRequest_v1', kind: 'request', variant: 'application/json' }, schema: RequestControllerV1_createRequest_v1_Request });\n\n// POST /v1/request -> RequestControllerV1_createRequest_v1 (201)\nexport const RequestControllerV1_createRequest_v1_201 = z.object({ \"paymentReference\": (z.string()).optional(), \"requestID\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_createRequest_v1', kind: 'response', status: 201 }, schema: RequestControllerV1_createRequest_v1_201 });\n\n// POST /v1/request -> RequestControllerV1_createRequest_v1 (400)\nexport const RequestControllerV1_createRequest_v1_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_createRequest_v1', kind: 'response', status: 400 }, schema: RequestControllerV1_createRequest_v1_400 });\n\n// POST /v1/request -> RequestControllerV1_createRequest_v1 (401)\nexport const RequestControllerV1_createRequest_v1_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_createRequest_v1', kind: 'response', status: 401 }, schema: RequestControllerV1_createRequest_v1_401 });\n\n// POST /v1/request -> RequestControllerV1_createRequest_v1 (404)\nexport const RequestControllerV1_createRequest_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_createRequest_v1', kind: 'response', status: 404 }, schema: RequestControllerV1_createRequest_v1_404 });\n\n// POST /v1/request -> RequestControllerV1_createRequest_v1 (429)\nexport const RequestControllerV1_createRequest_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_createRequest_v1', kind: 'response', status: 429 }, schema: RequestControllerV1_createRequest_v1_429 });\n\n// GET /v1/request/{paymentReference} -> RequestControllerV1_getRequestStatus_v1 (200)\nexport const RequestControllerV1_getRequestStatus_v1_200 = z.object({ \"hasBeenPaid\": (z.boolean()).optional(), \"paymentReference\": (z.string()).optional(), \"requestId\": (z.string()).optional(), \"isListening\": (z.boolean()).optional(), \"txHash\": (z.string().nullable()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestStatus_v1', kind: 'response', status: 200 }, schema: RequestControllerV1_getRequestStatus_v1_200 });\n\n// GET /v1/request/{paymentReference} -> RequestControllerV1_getRequestStatus_v1 (401)\nexport const RequestControllerV1_getRequestStatus_v1_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestStatus_v1', kind: 'response', status: 401 }, schema: RequestControllerV1_getRequestStatus_v1_401 });\n\n// GET /v1/request/{paymentReference} -> RequestControllerV1_getRequestStatus_v1 (404)\nexport const RequestControllerV1_getRequestStatus_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestStatus_v1', kind: 'response', status: 404 }, schema: RequestControllerV1_getRequestStatus_v1_404 });\n\n// GET /v1/request/{paymentReference} -> RequestControllerV1_getRequestStatus_v1 (429)\nexport const RequestControllerV1_getRequestStatus_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestStatus_v1', kind: 'response', status: 429 }, schema: RequestControllerV1_getRequestStatus_v1_429 });\n\n// PATCH /v1/request/{paymentReference}/stop-recurrence -> RequestControllerV1_stopRecurrenceRequest_v1 (200)\nexport const RequestControllerV1_stopRecurrenceRequest_v1_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_stopRecurrenceRequest_v1', kind: 'response', status: 200 }, schema: RequestControllerV1_stopRecurrenceRequest_v1_200 });\n\n// PATCH /v1/request/{paymentReference}/stop-recurrence -> RequestControllerV1_stopRecurrenceRequest_v1 (401)\nexport const RequestControllerV1_stopRecurrenceRequest_v1_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_stopRecurrenceRequest_v1', kind: 'response', status: 401 }, schema: RequestControllerV1_stopRecurrenceRequest_v1_401 });\n\n// PATCH /v1/request/{paymentReference}/stop-recurrence -> RequestControllerV1_stopRecurrenceRequest_v1 (404)\nexport const RequestControllerV1_stopRecurrenceRequest_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_stopRecurrenceRequest_v1', kind: 'response', status: 404 }, schema: RequestControllerV1_stopRecurrenceRequest_v1_404 });\n\n// PATCH /v1/request/{paymentReference}/stop-recurrence -> RequestControllerV1_stopRecurrenceRequest_v1 (429)\nexport const RequestControllerV1_stopRecurrenceRequest_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_stopRecurrenceRequest_v1', kind: 'response', status: 429 }, schema: RequestControllerV1_stopRecurrenceRequest_v1_429 });\n\n// GET /v1/request/{paymentReference}/pay -> RequestControllerV1_getPaymentCalldata_v1 (200)\nexport const RequestControllerV1_getPaymentCalldata_v1_200 = z.union([z.object({ \"transactions\": z.array(z.object({ \"data\": z.string(), \"to\": z.string(), \"value\": z.object({ \"type\": (z.enum(['BigNumber'])).optional(), \"hex\": (z.string()).optional() }).passthrough() }).passthrough()), \"metadata\": z.object({ \"stepsRequired\": z.number(), \"needsApproval\": z.boolean(), \"approvalTransactionIndex\": (z.number().nullable()).optional(), \"hasEnoughBalance\": z.boolean(), \"hasEnoughGas\": z.boolean() }).passthrough() }).passthrough(), z.object({ \"paymentIntentId\": z.string(), \"paymentIntent\": z.string(), \"approvalPermitPayload\": (z.string().nullable()).optional(), \"approvalCalldata\": (z.object({ \"to\": (z.string()).optional(), \"data\": (z.string()).optional(), \"value\": (z.string()).optional() }).passthrough().nullable()).optional(), \"metadata\": z.object({ \"supportsEIP2612\": z.boolean() }).passthrough() }).passthrough()]);\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getPaymentCalldata_v1', kind: 'response', status: 200 }, schema: RequestControllerV1_getPaymentCalldata_v1_200 });\n\n// GET /v1/request/{paymentReference}/pay -> RequestControllerV1_getPaymentCalldata_v1 (400)\nexport const RequestControllerV1_getPaymentCalldata_v1_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getPaymentCalldata_v1', kind: 'response', status: 400 }, schema: RequestControllerV1_getPaymentCalldata_v1_400 });\n\n// GET /v1/request/{paymentReference}/pay -> RequestControllerV1_getPaymentCalldata_v1 (401)\nexport const RequestControllerV1_getPaymentCalldata_v1_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getPaymentCalldata_v1', kind: 'response', status: 401 }, schema: RequestControllerV1_getPaymentCalldata_v1_401 });\n\n// GET /v1/request/{paymentReference}/pay -> RequestControllerV1_getPaymentCalldata_v1 (404)\nexport const RequestControllerV1_getPaymentCalldata_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getPaymentCalldata_v1', kind: 'response', status: 404 }, schema: RequestControllerV1_getPaymentCalldata_v1_404 });\n\n// GET /v1/request/{paymentReference}/pay -> RequestControllerV1_getPaymentCalldata_v1 (429)\nexport const RequestControllerV1_getPaymentCalldata_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getPaymentCalldata_v1', kind: 'response', status: 429 }, schema: RequestControllerV1_getPaymentCalldata_v1_429 });\n\n// GET /v1/request/{paymentReference}/routes -> RequestControllerV1_getRequestPaymentRoutes_v1 (200)\nexport const RequestControllerV1_getRequestPaymentRoutes_v1_200 = z.object({ \"routes\": z.array(z.object({ \"id\": z.string(), \"fee\": z.number(), \"feeBreakdown\": (z.array(z.object({ \"type\": (z.enum(['gas', 'platform', 'crosschain', 'crypto-to-fiat', 'offramp', 'protocol'])).optional(), \"stage\": (z.enum(['sending', 'receiving', 'proxying', 'refunding', 'overall'])).optional(), \"provider\": (z.string()).optional(), \"amount\": (z.string().nullable()).optional(), \"amountInUSD\": (z.string().nullable()).optional(), \"currency\": (z.string()).optional(), \"receiverAddress\": (z.string()).optional(), \"network\": (z.string()).optional(), \"rateProvider\": (z.string()).optional() }).passthrough())).optional(), \"speed\": z.union([z.string(), z.number()]), \"price_impact\": (z.number()).optional(), \"chain\": z.string(), \"token\": z.string() }).passthrough()) }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestPaymentRoutes_v1', kind: 'response', status: 200 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_200 });\n\n// GET /v1/request/{paymentReference}/routes -> RequestControllerV1_getRequestPaymentRoutes_v1 (400)\nexport const RequestControllerV1_getRequestPaymentRoutes_v1_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestPaymentRoutes_v1', kind: 'response', status: 400 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_400 });\n\n// GET /v1/request/{paymentReference}/routes -> RequestControllerV1_getRequestPaymentRoutes_v1 (401)\nexport const RequestControllerV1_getRequestPaymentRoutes_v1_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestPaymentRoutes_v1', kind: 'response', status: 401 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_401 });\n\n// GET /v1/request/{paymentReference}/routes -> RequestControllerV1_getRequestPaymentRoutes_v1 (404)\nexport const RequestControllerV1_getRequestPaymentRoutes_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestPaymentRoutes_v1', kind: 'response', status: 404 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_404 });\n\n// GET /v1/request/{paymentReference}/routes -> RequestControllerV1_getRequestPaymentRoutes_v1 (429)\nexport const RequestControllerV1_getRequestPaymentRoutes_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_getRequestPaymentRoutes_v1', kind: 'response', status: 429 }, schema: RequestControllerV1_getRequestPaymentRoutes_v1_429 });\n\n// POST /v1/request/{paymentIntentId}/send -> RequestControllerV1_sendPaymentIntent_v1 request (application/json)\nexport const RequestControllerV1_sendPaymentIntent_v1_Request = z.object({ \"signedPaymentIntent\": z.object({ \"signature\": z.string(), \"nonce\": z.string(), \"deadline\": z.string() }).passthrough(), \"signedApprovalPermit\": (z.object({ \"signature\": z.string(), \"nonce\": z.string(), \"deadline\": z.string() }).passthrough()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_sendPaymentIntent_v1', kind: 'request', variant: 'application/json' }, schema: RequestControllerV1_sendPaymentIntent_v1_Request });\n\n// POST /v1/request/{paymentIntentId}/send -> RequestControllerV1_sendPaymentIntent_v1 (401)\nexport const RequestControllerV1_sendPaymentIntent_v1_401 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_sendPaymentIntent_v1', kind: 'response', status: 401 }, schema: RequestControllerV1_sendPaymentIntent_v1_401 });\n\n// POST /v1/request/{paymentIntentId}/send -> RequestControllerV1_sendPaymentIntent_v1 (404)\nexport const RequestControllerV1_sendPaymentIntent_v1_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_sendPaymentIntent_v1', kind: 'response', status: 404 }, schema: RequestControllerV1_sendPaymentIntent_v1_404 });\n\n// POST /v1/request/{paymentIntentId}/send -> RequestControllerV1_sendPaymentIntent_v1 (429)\nexport const RequestControllerV1_sendPaymentIntent_v1_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV1_sendPaymentIntent_v1', kind: 'response', status: 429 }, schema: RequestControllerV1_sendPaymentIntent_v1_429 });\n\n// GET /v2/request -> RequestControllerV2_listRequests_v2 (200)\nexport const RequestControllerV2_listRequests_v2_200 = z.object({ \"requests\": z.array(z.object({ \"requestId\": (z.string()).optional(), \"paymentReference\": (z.string()).optional(), \"amount\": (z.string().nullable()).optional(), \"invoiceCurrency\": (z.string()).optional(), \"paymentCurrency\": (z.string()).optional(), \"hasBeenPaid\": (z.boolean()).optional(), \"status\": (z.string().nullable()).optional(), \"reference\": (z.string().nullable()).optional(), \"createdAt\": (z.string().nullable()).optional(), \"txHash\": (z.string().nullable()).optional(), \"payee\": (z.string().nullable()).optional(), \"payer\": (z.string().nullable()).optional() }).passthrough()), \"pagination\": z.object({ \"total\": (z.number()).optional(), \"limit\": (z.number()).optional(), \"offset\": (z.number()).optional() }).passthrough() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_listRequests_v2', kind: 'response', status: 200 }, schema: RequestControllerV2_listRequests_v2_200 });\n\n// GET /v2/request -> RequestControllerV2_listRequests_v2 (400)\nexport const RequestControllerV2_listRequests_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_listRequests_v2', kind: 'response', status: 400 }, schema: RequestControllerV2_listRequests_v2_400 });\n\n// GET /v2/request -> RequestControllerV2_listRequests_v2 (429)\nexport const RequestControllerV2_listRequests_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_listRequests_v2', kind: 'response', status: 429 }, schema: RequestControllerV2_listRequests_v2_429 });\n\n// POST /v2/request -> RequestControllerV2_createRequest_v2 request (application/json)\nexport const RequestControllerV2_createRequest_v2_Request = z.object({ \"payer\": (z.string()).optional(), \"payee\": (z.string()).optional(), \"amount\": z.string(), \"invoiceCurrency\": z.string(), \"paymentCurrency\": z.string(), \"recurrence\": (z.object({ \"startDate\": z.string(), \"frequency\": z.enum(['DAILY', 'WEEKLY', 'MONTHLY', 'YEARLY']) }).passthrough()).optional(), \"isCryptoToFiatAvailable\": (z.boolean()).optional(), \"customerInfo\": (z.object({ \"firstName\": (z.string()).optional(), \"lastName\": (z.string()).optional(), \"email\": (z.string()).optional(), \"address\": (z.object({ \"street\": (z.string()).optional(), \"city\": (z.string()).optional(), \"state\": (z.string()).optional(), \"postalCode\": (z.string()).optional(), \"country\": (z.string()).optional() }).passthrough()).optional() }).passthrough()).optional(), \"reference\": (z.string()).optional(), \"originalRequestId\": (z.string()).optional(), \"originalRequestPaymentReference\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_createRequest_v2', kind: 'request', variant: 'application/json' }, schema: RequestControllerV2_createRequest_v2_Request });\n\n// POST /v2/request -> RequestControllerV2_createRequest_v2 (201)\nexport const RequestControllerV2_createRequest_v2_201 = z.object({ \"paymentReference\": (z.string()).optional(), \"requestId\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_createRequest_v2', kind: 'response', status: 201 }, schema: RequestControllerV2_createRequest_v2_201 });\n\n// POST /v2/request -> RequestControllerV2_createRequest_v2 (400)\nexport const RequestControllerV2_createRequest_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_createRequest_v2', kind: 'response', status: 400 }, schema: RequestControllerV2_createRequest_v2_400 });\n\n// POST /v2/request -> RequestControllerV2_createRequest_v2 (403)\nexport const RequestControllerV2_createRequest_v2_403 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_createRequest_v2', kind: 'response', status: 403 }, schema: RequestControllerV2_createRequest_v2_403 });\n\n// POST /v2/request -> RequestControllerV2_createRequest_v2 (429)\nexport const RequestControllerV2_createRequest_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_createRequest_v2', kind: 'response', status: 429 }, schema: RequestControllerV2_createRequest_v2_429 });\n\n// GET /v2/request/{requestId} -> RequestControllerV2_getRequestStatus_v2 (200)\nexport const RequestControllerV2_getRequestStatus_v2_200 = z.object({ \"hasBeenPaid\": (z.boolean()).optional(), \"paymentReference\": (z.string()).optional(), \"requestId\": (z.string()).optional(), \"payee\": (z.string().nullable()).optional(), \"isListening\": (z.boolean()).optional(), \"txHash\": (z.string().nullable()).optional(), \"recurrence\": (z.object({ }).passthrough()).optional(), \"originalRequestId\": (z.string()).optional(), \"status\": (z.string()).optional(), \"isCryptoToFiatAvailable\": (z.boolean()).optional(), \"originalRequestPaymentReference\": (z.string()).optional(), \"payments\": (z.array(z.object({ }).passthrough())).optional(), \"isRecurrenceStopped\": (z.boolean()).optional(), \"customerInfo\": (z.object({ \"firstName\": (z.string()).optional(), \"lastName\": (z.string()).optional(), \"email\": (z.string()).optional(), \"address\": (z.object({ \"street\": (z.string()).optional(), \"city\": (z.string()).optional(), \"state\": (z.string()).optional(), \"postalCode\": (z.string()).optional(), \"country\": (z.string()).optional() }).passthrough()).optional() }).passthrough().nullable()).optional(), \"reference\": (z.string().nullable()).optional(), \"amountInUsd\": (z.string().nullable()).optional(), \"conversionRate\": (z.string().nullable()).optional(), \"rateSource\": (z.enum(['lifi', 'chainlink', 'coingecko', 'unknown', 'mixed'])).optional(), \"conversionBreakdown\": (z.object({ \"paidAmount\": (z.string()).optional(), \"paidAmountInUsd\": (z.string()).optional(), \"remainingAmount\": (z.string()).optional(), \"remainingAmountInUsd\": (z.string()).optional(), \"currentMarketRate\": (z.string().nullable()).optional(), \"currentMarketRateSource\": (z.enum(['lifi', 'chainlink', 'coingecko', 'unknown'])).optional(), \"payments\": (z.array(z.object({ \"amount\": (z.string()).optional(), \"amountInUsd\": (z.string()).optional(), \"conversionRate\": (z.string()).optional(), \"rateSource\": (z.enum(['lifi', 'chainlink', 'coingecko', 'unknown'])).optional(), \"timestamp\": (z.string()).optional() }).passthrough())).optional() }).passthrough().nullable()).optional(), \"fees\": (z.array(z.object({ \"type\": (z.enum(['gas', 'platform', 'crosschain', 'crypto-to-fiat', 'offramp', 'protocol'])).optional(), \"provider\": (z.string()).optional(), \"amount\": (z.string().nullable()).optional(), \"currency\": (z.string()).optional() }).passthrough()).nullable()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getRequestStatus_v2', kind: 'response', status: 200 }, schema: RequestControllerV2_getRequestStatus_v2_200 });\n\n// GET /v2/request/{requestId} -> RequestControllerV2_getRequestStatus_v2 (404)\nexport const RequestControllerV2_getRequestStatus_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getRequestStatus_v2', kind: 'response', status: 404 }, schema: RequestControllerV2_getRequestStatus_v2_404 });\n\n// GET /v2/request/{requestId} -> RequestControllerV2_getRequestStatus_v2 (429)\nexport const RequestControllerV2_getRequestStatus_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getRequestStatus_v2', kind: 'response', status: 429 }, schema: RequestControllerV2_getRequestStatus_v2_429 });\n\n// PATCH /v2/request/{requestId} -> RequestControllerV2_updateRequest_v2 request (application/json)\nexport const RequestControllerV2_updateRequest_v2_Request = z.object({ \"isRecurrenceStopped\": z.boolean() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_updateRequest_v2', kind: 'request', variant: 'application/json' }, schema: RequestControllerV2_updateRequest_v2_Request });\n\n// PATCH /v2/request/{requestId} -> RequestControllerV2_updateRequest_v2 (200)\nexport const RequestControllerV2_updateRequest_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_updateRequest_v2', kind: 'response', status: 200 }, schema: RequestControllerV2_updateRequest_v2_200 });\n\n// PATCH /v2/request/{requestId} -> RequestControllerV2_updateRequest_v2 (404)\nexport const RequestControllerV2_updateRequest_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_updateRequest_v2', kind: 'response', status: 404 }, schema: RequestControllerV2_updateRequest_v2_404 });\n\n// PATCH /v2/request/{requestId} -> RequestControllerV2_updateRequest_v2 (429)\nexport const RequestControllerV2_updateRequest_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_updateRequest_v2', kind: 'response', status: 429 }, schema: RequestControllerV2_updateRequest_v2_429 });\n\n// GET /v2/request/{requestId}/pay -> RequestControllerV2_getPaymentCalldata_v2 (200)\nexport const RequestControllerV2_getPaymentCalldata_v2_200 = z.union([z.object({ \"transactions\": z.array(z.object({ \"data\": z.string(), \"to\": z.string(), \"value\": z.object({ \"type\": (z.enum(['BigNumber'])).optional(), \"hex\": (z.string()).optional() }).passthrough() }).passthrough()), \"metadata\": z.object({ \"stepsRequired\": z.number(), \"needsApproval\": z.boolean(), \"approvalTransactionIndex\": (z.number().nullable()).optional(), \"hasEnoughBalance\": z.boolean(), \"hasEnoughGas\": z.boolean() }).passthrough() }).passthrough(), z.object({ \"paymentIntentId\": z.string(), \"paymentIntent\": z.string(), \"approvalPermitPayload\": (z.string().nullable()).optional(), \"approvalCalldata\": (z.object({ \"to\": (z.string()).optional(), \"data\": (z.string()).optional(), \"value\": (z.string()).optional() }).passthrough().nullable()).optional(), \"metadata\": z.object({ \"supportsEIP2612\": z.boolean() }).passthrough() }).passthrough()]);\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getPaymentCalldata_v2', kind: 'response', status: 200 }, schema: RequestControllerV2_getPaymentCalldata_v2_200 });\n\n// GET /v2/request/{requestId}/pay -> RequestControllerV2_getPaymentCalldata_v2 (400)\nexport const RequestControllerV2_getPaymentCalldata_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getPaymentCalldata_v2', kind: 'response', status: 400 }, schema: RequestControllerV2_getPaymentCalldata_v2_400 });\n\n// GET /v2/request/{requestId}/pay -> RequestControllerV2_getPaymentCalldata_v2 (404)\nexport const RequestControllerV2_getPaymentCalldata_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getPaymentCalldata_v2', kind: 'response', status: 404 }, schema: RequestControllerV2_getPaymentCalldata_v2_404 });\n\n// GET /v2/request/{requestId}/pay -> RequestControllerV2_getPaymentCalldata_v2 (429)\nexport const RequestControllerV2_getPaymentCalldata_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getPaymentCalldata_v2', kind: 'response', status: 429 }, schema: RequestControllerV2_getPaymentCalldata_v2_429 });\n\n// GET /v2/request/{requestId}/routes -> RequestControllerV2_getRequestPaymentRoutes_v2 (200)\nexport const RequestControllerV2_getRequestPaymentRoutes_v2_200 = z.object({ \"routes\": z.array(z.object({ \"id\": z.string(), \"fee\": z.number(), \"feeBreakdown\": (z.array(z.object({ \"type\": (z.enum(['gas', 'platform', 'crosschain', 'crypto-to-fiat', 'offramp', 'protocol'])).optional(), \"stage\": (z.enum(['sending', 'receiving', 'proxying', 'refunding', 'overall'])).optional(), \"provider\": (z.string()).optional(), \"amount\": (z.string().nullable()).optional(), \"amountInUSD\": (z.string().nullable()).optional(), \"currency\": (z.string()).optional(), \"receiverAddress\": (z.string()).optional(), \"network\": (z.string()).optional(), \"rateProvider\": (z.string()).optional() }).passthrough())).optional(), \"speed\": z.union([z.string(), z.number()]), \"price_impact\": (z.number()).optional(), \"chain\": z.string(), \"token\": z.string() }).passthrough()) }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getRequestPaymentRoutes_v2', kind: 'response', status: 200 }, schema: RequestControllerV2_getRequestPaymentRoutes_v2_200 });\n\n// GET /v2/request/{requestId}/routes -> RequestControllerV2_getRequestPaymentRoutes_v2 (400)\nexport const RequestControllerV2_getRequestPaymentRoutes_v2_400 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getRequestPaymentRoutes_v2', kind: 'response', status: 400 }, schema: RequestControllerV2_getRequestPaymentRoutes_v2_400 });\n\n// GET /v2/request/{requestId}/routes -> RequestControllerV2_getRequestPaymentRoutes_v2 (404)\nexport const RequestControllerV2_getRequestPaymentRoutes_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getRequestPaymentRoutes_v2', kind: 'response', status: 404 }, schema: RequestControllerV2_getRequestPaymentRoutes_v2_404 });\n\n// GET /v2/request/{requestId}/routes -> RequestControllerV2_getRequestPaymentRoutes_v2 (429)\nexport const RequestControllerV2_getRequestPaymentRoutes_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_getRequestPaymentRoutes_v2', kind: 'response', status: 429 }, schema: RequestControllerV2_getRequestPaymentRoutes_v2_429 });\n\n// POST /v2/request/payment-intents/{paymentIntentId} -> RequestControllerV2_sendPaymentIntent_v2 request (application/json)\nexport const RequestControllerV2_sendPaymentIntent_v2_Request = z.object({ \"signedPaymentIntent\": z.object({ \"signature\": z.string(), \"nonce\": z.string(), \"deadline\": z.string() }).passthrough(), \"signedApprovalPermit\": (z.object({ \"signature\": z.string(), \"nonce\": z.string(), \"deadline\": z.string() }).passthrough()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_sendPaymentIntent_v2', kind: 'request', variant: 'application/json' }, schema: RequestControllerV2_sendPaymentIntent_v2_Request });\n\n// POST /v2/request/payment-intents/{paymentIntentId} -> RequestControllerV2_sendPaymentIntent_v2 (200)\nexport const RequestControllerV2_sendPaymentIntent_v2_200 = z.unknown();\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_sendPaymentIntent_v2', kind: 'response', status: 200 }, schema: RequestControllerV2_sendPaymentIntent_v2_200 });\n\n// POST /v2/request/payment-intents/{paymentIntentId} -> RequestControllerV2_sendPaymentIntent_v2 (404)\nexport const RequestControllerV2_sendPaymentIntent_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_sendPaymentIntent_v2', kind: 'response', status: 404 }, schema: RequestControllerV2_sendPaymentIntent_v2_404 });\n\n// POST /v2/request/payment-intents/{paymentIntentId} -> RequestControllerV2_sendPaymentIntent_v2 (429)\nexport const RequestControllerV2_sendPaymentIntent_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'RequestControllerV2_sendPaymentIntent_v2', kind: 'response', status: 429 }, schema: RequestControllerV2_sendPaymentIntent_v2_429 });\n"]}
@@ -0,0 +1,248 @@
1
+ 'use strict';
2
+
3
+ var zod = require('zod');
4
+
5
+ // src/core/http/validation.config.ts
6
+ function normaliseBoolean(flag, fallback) {
7
+ return typeof flag === "boolean" ? flag : fallback;
8
+ }
9
+ function mergeRuntimeValidation(base, override) {
10
+ if (override === void 0) {
11
+ return base;
12
+ }
13
+ if (typeof override === "boolean") {
14
+ return {
15
+ requests: override,
16
+ responses: override,
17
+ errors: override
18
+ };
19
+ }
20
+ return {
21
+ requests: normaliseBoolean(override.requests, base.requests),
22
+ responses: normaliseBoolean(override.responses, base.responses),
23
+ errors: normaliseBoolean(override.errors, base.errors)
24
+ };
25
+ }
26
+
27
+ // src/validation/schema.registry.ts
28
+ function serialiseKey(key) {
29
+ const variant = key.variant ?? "default";
30
+ const status = key.status?.toString() ?? "any";
31
+ return `${key.operationId}|${key.kind}|${variant}|${status}`;
32
+ }
33
+ var SchemaRegistry = class {
34
+ store = /* @__PURE__ */ new Map();
35
+ register(entry) {
36
+ const id = serialiseKey(entry.key);
37
+ this.store.set(id, entry);
38
+ }
39
+ get(key) {
40
+ const id = serialiseKey(key);
41
+ return this.store.get(id)?.schema;
42
+ }
43
+ /**
44
+ * Removes every registered schema — primarily useful in tests.
45
+ */
46
+ clear() {
47
+ this.store.clear();
48
+ }
49
+ };
50
+ var schemaRegistry = new SchemaRegistry();
51
+
52
+ // src/validation/zod.helpers.ts
53
+ var ValidationError = class extends Error {
54
+ constructor(message, cause) {
55
+ super(message, { cause });
56
+ this.cause = cause;
57
+ this.name = "ClientValidationError";
58
+ }
59
+ };
60
+ function parseWithSchema(options) {
61
+ const { schema, value, description } = options;
62
+ const outcome = schema.safeParse(value);
63
+ if (outcome.success) {
64
+ return { success: true, data: outcome.data };
65
+ }
66
+ const error = new ValidationError(description ?? "Validation failed", outcome.error);
67
+ return { success: false, error };
68
+ }
69
+ function parseWithRegistry(options) {
70
+ const schema = schemaRegistry.get(options.key);
71
+ if (!schema) {
72
+ if (options.skipOnMissingSchema) {
73
+ return { success: true, data: options.value };
74
+ }
75
+ return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };
76
+ }
77
+ return parseWithSchema({ schema, value: options.value, description: options.description });
78
+ }
79
+
80
+ // src/core/http/operation.helper.ts
81
+ async function requestJson(http, params) {
82
+ const {
83
+ operationId,
84
+ method,
85
+ path,
86
+ query,
87
+ body,
88
+ schemaKey,
89
+ requestSchemaKey,
90
+ description,
91
+ querySerializer,
92
+ signal,
93
+ timeoutMs,
94
+ validation,
95
+ meta
96
+ } = params;
97
+ const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);
98
+ let requestBody = body;
99
+ if (runtimeValidation.requests && requestSchemaKey && body !== void 0) {
100
+ const parsedRequest = parseWithRegistry({
101
+ key: requestSchemaKey,
102
+ value: body,
103
+ description: `${description ?? operationId} request`,
104
+ skipOnMissingSchema: true
105
+ });
106
+ if (!parsedRequest.success) {
107
+ throw parsedRequest.error;
108
+ }
109
+ requestBody = parsedRequest.data;
110
+ }
111
+ const metaValidation = validation ?? meta?.validation;
112
+ const requestMeta = {
113
+ ...meta ?? {},
114
+ operationId,
115
+ validation: metaValidation
116
+ };
117
+ const res = await http.request({
118
+ method,
119
+ path,
120
+ query,
121
+ body: requestBody,
122
+ querySerializer,
123
+ signal,
124
+ timeoutMs,
125
+ meta: requestMeta
126
+ });
127
+ if (!runtimeValidation.responses) {
128
+ return res.data;
129
+ }
130
+ const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });
131
+ if (!parsedResponse.success) throw parsedResponse.error;
132
+ return parsedResponse.data;
133
+ }
134
+
135
+ // src/domains/requests/request.helpers.ts
136
+ function buildRequestQuery(input) {
137
+ if (!input) return void 0;
138
+ const entries = Object.entries(input).filter(([, value]) => value !== void 0);
139
+ if (entries.length === 0) return void 0;
140
+ return Object.fromEntries(entries);
141
+ }
142
+
143
+ // src/domains/secure-payments/secure-payments.facade.ts
144
+ var OP_FIND_BY_REQUEST_ID = "SecurePaymentController_findSecurePayment_v2";
145
+ var OP_CREATE = "SecurePaymentController_createSecurePayment_v2";
146
+ var OP_GET_BY_TOKEN = "SecurePaymentController_getSecurePaymentByToken_v2";
147
+ var PATH_BASE = "/v2/secure-payments";
148
+ function createSecurePaymentsApi(http) {
149
+ return {
150
+ async create(body, options) {
151
+ return requestJson(http, {
152
+ operationId: OP_CREATE,
153
+ method: "POST",
154
+ path: PATH_BASE,
155
+ body,
156
+ requestSchemaKey: { operationId: OP_CREATE, kind: "request", variant: "application/json" },
157
+ schemaKey: { operationId: OP_CREATE, kind: "response", status: 201 },
158
+ description: "Create secure payment",
159
+ signal: options?.signal,
160
+ timeoutMs: options?.timeoutMs,
161
+ validation: options?.validation,
162
+ meta: options?.meta
163
+ });
164
+ },
165
+ async findByRequestId(requestId, options) {
166
+ return requestJson(http, {
167
+ operationId: OP_FIND_BY_REQUEST_ID,
168
+ method: "GET",
169
+ path: PATH_BASE,
170
+ query: { requestId },
171
+ schemaKey: { operationId: OP_FIND_BY_REQUEST_ID, kind: "response", status: 200 },
172
+ description: "Find secure payment by request ID",
173
+ signal: options?.signal,
174
+ timeoutMs: options?.timeoutMs,
175
+ validation: options?.validation,
176
+ meta: options?.meta
177
+ });
178
+ },
179
+ async getByToken(token, options) {
180
+ return requestJson(http, {
181
+ operationId: OP_GET_BY_TOKEN,
182
+ method: "GET",
183
+ path: `${PATH_BASE}/${encodeURIComponent(token)}`,
184
+ query: buildRequestQuery({ wallet: options?.wallet }),
185
+ schemaKey: { operationId: OP_GET_BY_TOKEN, kind: "response", status: 200 },
186
+ description: "Get secure payment by token",
187
+ signal: options?.signal,
188
+ timeoutMs: options?.timeoutMs,
189
+ validation: options?.validation,
190
+ meta: options?.meta
191
+ });
192
+ }
193
+ };
194
+ }
195
+ var ErrorDetailSchema = zod.z.object({
196
+ message: zod.z.string(),
197
+ code: zod.z.string().optional(),
198
+ field: zod.z.string().optional(),
199
+ source: zod.z.object({
200
+ pointer: zod.z.string().optional(),
201
+ parameter: zod.z.string().optional()
202
+ }).passthrough().optional(),
203
+ meta: zod.z.record(zod.z.unknown()).optional()
204
+ }).passthrough();
205
+ var ErrorEnvelopeSchema = zod.z.object({
206
+ status: zod.z.number().optional(),
207
+ statusCode: zod.z.number().optional(),
208
+ code: zod.z.string().optional(),
209
+ error: zod.z.string().optional(),
210
+ message: zod.z.union([
211
+ zod.z.string(),
212
+ zod.z.array(zod.z.union([zod.z.string(), ErrorDetailSchema])),
213
+ ErrorDetailSchema
214
+ ]).optional(),
215
+ detail: zod.z.unknown().optional(),
216
+ errors: zod.z.array(ErrorDetailSchema).optional(),
217
+ requestId: zod.z.string().optional(),
218
+ correlationId: zod.z.string().optional(),
219
+ retryAfter: zod.z.union([zod.z.number(), zod.z.string()]).optional(),
220
+ retryAfterMs: zod.z.number().optional(),
221
+ meta: zod.z.record(zod.z.unknown()).optional()
222
+ }).passthrough();
223
+ var SecurePaymentController_findSecurePayment_v2_200 = zod.z.object({ "token": zod.z.string(), "securePaymentUrl": zod.z.string(), "status": zod.z.enum(["pending", "completed", "expired", "invalidated"]), "paymentType": zod.z.enum(["single", "batch"]), "createdAt": zod.z.string().nullable(), "expiresAt": zod.z.string() }).passthrough();
224
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_findSecurePayment_v2", kind: "response", status: 200 }, schema: SecurePaymentController_findSecurePayment_v2_200 });
225
+ var SecurePaymentController_findSecurePayment_v2_404 = ErrorEnvelopeSchema;
226
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_findSecurePayment_v2", kind: "response", status: 404 }, schema: SecurePaymentController_findSecurePayment_v2_404 });
227
+ var SecurePaymentController_findSecurePayment_v2_429 = ErrorEnvelopeSchema;
228
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_findSecurePayment_v2", kind: "response", status: 429 }, schema: SecurePaymentController_findSecurePayment_v2_429 });
229
+ var SecurePaymentController_createSecurePayment_v2_Request = zod.z.object({ "requests": zod.z.array(zod.z.object({ "destinationId": zod.z.string(), "amount": zod.z.string() }).passthrough()), "feePercentage": zod.z.string().optional(), "feeAddress": zod.z.string().optional() }).passthrough();
230
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_createSecurePayment_v2", kind: "request", variant: "application/json" }, schema: SecurePaymentController_createSecurePayment_v2_Request });
231
+ var SecurePaymentController_createSecurePayment_v2_201 = zod.z.object({ "requestIds": zod.z.array(zod.z.string()), "securePaymentUrl": zod.z.string(), "token": zod.z.string() }).passthrough();
232
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_createSecurePayment_v2", kind: "response", status: 201 }, schema: SecurePaymentController_createSecurePayment_v2_201 });
233
+ var SecurePaymentController_createSecurePayment_v2_429 = ErrorEnvelopeSchema;
234
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_createSecurePayment_v2", kind: "response", status: 429 }, schema: SecurePaymentController_createSecurePayment_v2_429 });
235
+ var SecurePaymentController_getSecurePaymentByToken_v2_200 = zod.z.object({ "paymentType": zod.z.enum(["single"]), "payee": zod.z.string(), "network": zod.z.string(), "amount": zod.z.string(), "paymentCurrency": zod.z.string(), "isNativeCurrency": zod.z.boolean(), "status": zod.z.enum(["pending", "completed", "expired", "invalidated"]), "destination": zod.z.object({ "destinationId": zod.z.string(), "payeeAddress": zod.z.string(), "tokenAddress": zod.z.string(), "walletAddress": zod.z.string(), "network": zod.z.string() }).passthrough(), "transactions": zod.z.array(zod.z.unknown()), "metadata": zod.z.object({ "stepsRequired": zod.z.number(), "needsApproval": zod.z.boolean(), "approvalTransactionIndex": zod.z.number().optional(), "paymentTransactionIndex": zod.z.number(), "hasEnoughBalance": zod.z.boolean().optional(), "hasEnoughGas": zod.z.boolean().optional(), "platformFee": zod.z.object({ "percentage": zod.z.string(), "address": zod.z.string() }).passthrough().optional() }).passthrough().optional() }).passthrough();
236
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_getSecurePaymentByToken_v2", kind: "response", status: 200 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_200 });
237
+ var SecurePaymentController_getSecurePaymentByToken_v2_403 = ErrorEnvelopeSchema;
238
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_getSecurePaymentByToken_v2", kind: "response", status: 403 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_403 });
239
+ var SecurePaymentController_getSecurePaymentByToken_v2_404 = ErrorEnvelopeSchema;
240
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_getSecurePaymentByToken_v2", kind: "response", status: 404 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_404 });
241
+ var SecurePaymentController_getSecurePaymentByToken_v2_409 = ErrorEnvelopeSchema;
242
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_getSecurePaymentByToken_v2", kind: "response", status: 409 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_409 });
243
+ var SecurePaymentController_getSecurePaymentByToken_v2_429 = ErrorEnvelopeSchema;
244
+ schemaRegistry.register({ key: { operationId: "SecurePaymentController_getSecurePaymentByToken_v2", kind: "response", status: 429 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_429 });
245
+
246
+ exports.createSecurePaymentsApi = createSecurePaymentsApi;
247
+ //# sourceMappingURL=index.js.map
248
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/core/http/validation.config.ts","../../../../src/validation/schema.registry.ts","../../../../src/validation/zod.helpers.ts","../../../../src/core/http/operation.helper.ts","../../../../src/domains/requests/request.helpers.ts","../../../../src/domains/secure-payments/secure-payments.facade.ts","../../../../src/validation/generated/groups/v2/secure-payment.schemas.generated.ts"],"names":["z"],"mappings":"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","file":"index.js","sourcesContent":["import type { RuntimeValidationConfig, RuntimeValidationOption } from \"./http.types\";\n\nconst DEFAULT_RUNTIME_VALIDATION: RuntimeValidationConfig = {\n requests: true,\n responses: true,\n errors: true,\n};\n\nfunction normaliseBoolean(flag: boolean | undefined, fallback: boolean): boolean {\n return typeof flag === \"boolean\" ? flag : fallback;\n}\n\nexport function normaliseRuntimeValidation(option?: RuntimeValidationOption): RuntimeValidationConfig {\n if (typeof option === \"boolean\") {\n return {\n requests: option,\n responses: option,\n errors: option,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(option?.requests, DEFAULT_RUNTIME_VALIDATION.requests),\n responses: normaliseBoolean(option?.responses, DEFAULT_RUNTIME_VALIDATION.responses),\n errors: normaliseBoolean(option?.errors, DEFAULT_RUNTIME_VALIDATION.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function mergeRuntimeValidation(base: RuntimeValidationConfig, override?: RuntimeValidationOption): RuntimeValidationConfig {\n if (override === undefined) {\n return base;\n }\n\n if (typeof override === \"boolean\") {\n return {\n requests: override,\n responses: override,\n errors: override,\n } satisfies RuntimeValidationConfig;\n }\n\n return {\n requests: normaliseBoolean(override.requests, base.requests),\n responses: normaliseBoolean(override.responses, base.responses),\n errors: normaliseBoolean(override.errors, base.errors),\n } satisfies RuntimeValidationConfig;\n}\n\nexport function cloneRuntimeValidation(config: RuntimeValidationConfig): RuntimeValidationConfig {\n return { ...config };\n}\n","import type { ZodTypeAny } from \"zod\";\n\nexport type SchemaKind = \"request\" | \"response\" | \"webhook\";\n\nexport interface SchemaKey {\n operationId: string;\n kind: SchemaKind;\n variant?: string;\n status?: number;\n}\n\nexport interface SchemaEntry<TSchema extends ZodTypeAny = ZodTypeAny> {\n key: SchemaKey;\n schema: TSchema;\n}\n\nfunction serialiseKey(key: SchemaKey): string {\n const variant = key.variant ?? \"default\";\n const status = key.status?.toString() ?? \"any\";\n return `${key.operationId}|${key.kind}|${variant}|${status}`;\n}\n\n/**\n * Lightweight registry that associates OpenAPI operation IDs with validation schemas.\n * Generators can populate this map while domain modules retrieve the schemas at runtime.\n */\nexport class SchemaRegistry {\n private readonly store = new Map<string, SchemaEntry>();\n\n register(entry: SchemaEntry): void {\n const id = serialiseKey(entry.key);\n this.store.set(id, entry);\n }\n\n get(key: SchemaKey): ZodTypeAny | undefined {\n const id = serialiseKey(key);\n return this.store.get(id)?.schema;\n }\n\n /**\n * Removes every registered schema — primarily useful in tests.\n */\n clear(): void {\n this.store.clear();\n }\n}\n\nexport const schemaRegistry = new SchemaRegistry();\n","import { type SafeParseReturnType, type ZodTypeAny } from \"zod\";\n\nimport type { SchemaKey } from \"./schema.registry\";\nimport { schemaRegistry } from \"./schema.registry\";\n\nexport type SchemaOutput<TSchema extends ZodTypeAny> = TSchema[\"_output\"];\n\nexport interface ParseWithSchemaOptions<TSchema extends ZodTypeAny> {\n schema: TSchema;\n value: unknown;\n description?: string;\n}\n\nexport interface ParseRegistryOptions {\n key: SchemaKey;\n value: unknown;\n description?: string;\n skipOnMissingSchema?: boolean;\n}\n\nexport interface ParseResult<T> {\n success: boolean;\n data?: T;\n error?: unknown;\n}\n\nexport class ValidationError extends Error {\n constructor(message: string, readonly cause?: unknown) {\n super(message, { cause });\n this.name = \"ClientValidationError\";\n }\n}\n\nexport function parseWithSchema<TSchema extends ZodTypeAny>(\n options: ParseWithSchemaOptions<TSchema>,\n): ParseResult<SchemaOutput<TSchema>> {\n const { schema, value, description } = options;\n const outcome: SafeParseReturnType<unknown, SchemaOutput<TSchema>> = schema.safeParse(value);\n if (outcome.success) {\n return { success: true, data: outcome.data };\n }\n\n const error = new ValidationError(description ?? \"Validation failed\", outcome.error);\n return { success: false, error };\n}\n\nexport function parseWithRegistry<TSchema extends ZodTypeAny>(options: ParseRegistryOptions): ParseResult<SchemaOutput<TSchema>> {\n const schema = schemaRegistry.get(options.key) as TSchema | undefined;\n if (!schema) {\n if (options.skipOnMissingSchema) {\n return { success: true, data: options.value as SchemaOutput<TSchema> };\n }\n return { success: false, error: new ValidationError(`No schema registered for ${options.key.operationId}`) };\n }\n\n return parseWithSchema({ schema, value: options.value, description: options.description });\n}\n","import type { HttpClient, HttpMethod, RequestOptions, RuntimeValidationOption } from \"./http.types\";\nimport { mergeRuntimeValidation } from \"./validation.config\";\nimport type { SchemaKey } from \"../../validation/schema.registry\";\nimport { parseWithRegistry } from \"../../validation/zod.helpers\";\n\ntype Query = NonNullable<RequestOptions[\"query\"]>;\n\nexport interface RequestJsonParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n schemaKey: SchemaKey;\n requestSchemaKey?: SchemaKey;\n description?: string;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestJson<T>(http: HttpClient, params: RequestJsonParams): Promise<T> {\n const {\n operationId,\n method,\n path,\n query,\n body,\n schemaKey,\n requestSchemaKey,\n description,\n querySerializer,\n signal,\n timeoutMs,\n validation,\n meta,\n } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${description ?? operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n const res = await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n\n if (!runtimeValidation.responses) {\n return res.data as T;\n }\n\n const parsedResponse = parseWithRegistry({ key: schemaKey, value: res.data, description });\n if (!parsedResponse.success) throw parsedResponse.error;\n return parsedResponse.data as T;\n}\n\nexport interface RequestVoidParams {\n operationId: string;\n method: HttpMethod;\n path: string;\n query?: Query;\n body?: unknown;\n querySerializer?: RequestOptions[\"querySerializer\"];\n signal?: RequestOptions[\"signal\"];\n timeoutMs?: RequestOptions[\"timeoutMs\"];\n requestSchemaKey?: SchemaKey;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport async function requestVoid(http: HttpClient, params: RequestVoidParams): Promise<void> {\n const { operationId, method, path, query, body, querySerializer, signal, timeoutMs, requestSchemaKey, validation, meta } = params;\n\n const runtimeValidation = mergeRuntimeValidation(http.getRuntimeValidationConfig(), validation);\n\n let requestBody = body;\n if (runtimeValidation.requests && requestSchemaKey && body !== undefined) {\n const parsedRequest = parseWithRegistry({\n key: requestSchemaKey,\n value: body,\n description: `${operationId} request`,\n skipOnMissingSchema: true,\n });\n if (!parsedRequest.success) {\n throw parsedRequest.error;\n }\n requestBody = parsedRequest.data;\n }\n\n const metaValidation = validation ?? meta?.validation;\n const requestMeta: RequestOptions[\"meta\"] = {\n ...(meta ?? {}),\n operationId,\n validation: metaValidation,\n };\n\n await http.request({\n method,\n path,\n query,\n body: requestBody,\n querySerializer,\n signal,\n timeoutMs,\n meta: requestMeta,\n });\n}\n","import type { RequestOptions } from \"../../core/http/http.types\";\nimport type { operations } from \"../../generated/openapi-types\";\n\ntype QueryValue = string | number | boolean | (string | number | boolean)[];\n\n/**\n * Builds a query object while stripping out undefined entries so the HTTP helper\n * does not emit spurious `param=undefined` pairs.\n */\nexport function buildRequestQuery(input?: Record<string, unknown>): RequestOptions[\"query\"] | undefined {\n if (!input) return undefined;\n const entries = Object.entries(input).filter(([, value]) => value !== undefined);\n if (entries.length === 0) return undefined;\n return Object.fromEntries(entries) as Record<string, QueryValue | undefined>;\n}\n\ntype LegacyStatusApiResponse =\n operations[\"RequestControllerV1_getRequestStatus_v1\"][\"responses\"][200][\"content\"][\"application/json\"];\ntype StatusApiResponseV2 =\n operations[\"RequestControllerV2_getRequestStatus_v2\"][\"responses\"][200][\"content\"][\"application/json\"];\n\nexport interface RequestStatusAddress {\n street?: string;\n city?: string;\n state?: string;\n postalCode?: string;\n country?: string;\n}\n\nexport interface RequestStatusCustomerInfo {\n firstName?: string;\n lastName?: string;\n email?: string;\n address?: RequestStatusAddress;\n}\n\nexport type RequestStatusKind = \"paid\" | \"pending\" | \"cancelled\" | \"overdue\" | \"unknown\";\n\ninterface RequestStatusBase {\n paymentReference?: string;\n requestId?: string;\n isListening?: boolean;\n txHash: string | null;\n status?: string;\n recurrence?: Record<string, unknown>;\n originalRequestId?: string;\n originalRequestPaymentReference?: string;\n isRecurrenceStopped?: boolean;\n isCryptoToFiatAvailable?: boolean;\n payments?: Array<Record<string, unknown>>;\n customerInfo?: RequestStatusCustomerInfo | null;\n reference?: string | null;\n hasBeenPaid?: boolean;\n}\n\nexport type RequestStatusResult =\n | (RequestStatusBase & { kind: \"paid\"; hasBeenPaid: true })\n | (RequestStatusBase & { kind: \"pending\"; hasBeenPaid?: boolean })\n | (RequestStatusBase & { kind: \"cancelled\"; hasBeenPaid?: boolean })\n | (RequestStatusBase & { kind: \"overdue\"; hasBeenPaid?: boolean })\n | (RequestStatusBase & { kind: \"unknown\"; hasBeenPaid?: boolean });\n\nexport type LegacyRequestStatusResult = Extract<RequestStatusResult, { kind: \"paid\" | \"pending\" }>;\n\nconst STATUS_KIND_MAP: Record<string, RequestStatusKind> = {\n paid: \"paid\",\n completed: \"paid\",\n settled: \"paid\",\n pending: \"pending\",\n processing: \"pending\",\n open: \"pending\",\n awaitingpayment: \"pending\",\n awaiting_payment: \"pending\",\n cancelled: \"cancelled\",\n canceled: \"cancelled\",\n voided: \"cancelled\",\n overdue: \"overdue\",\n expired: \"overdue\",\n};\n\nfunction normalizeReference(value: string | null | undefined): string | null | undefined {\n if (value === undefined) return undefined;\n return value;\n}\n\nfunction normalizeCustomerInfo(value: RequestStatusCustomerInfo | null | undefined): RequestStatusCustomerInfo | null | undefined {\n if (value === undefined) return undefined;\n if (value === null) return null;\n return {\n firstName: value.firstName ?? undefined,\n lastName: value.lastName ?? undefined,\n email: value.email ?? undefined,\n address: value.address\n ? {\n street: value.address.street ?? undefined,\n city: value.address.city ?? undefined,\n state: value.address.state ?? undefined,\n postalCode: value.address.postalCode ?? undefined,\n country: value.address.country ?? undefined,\n }\n : undefined,\n };\n}\n\nfunction normalizePayments(payments: StatusApiResponseV2[\"payments\"]): Array<Record<string, unknown>> | undefined {\n if (!payments) return undefined;\n return payments.map((payment) => ({ ...payment })) as Array<Record<string, unknown>>;\n}\n\nfunction buildStatusBase(\n raw: LegacyStatusApiResponse | StatusApiResponseV2,\n overrides?: Partial<RequestStatusBase>,\n): RequestStatusBase {\n return {\n paymentReference: raw.paymentReference ?? undefined,\n requestId: raw.requestId ?? undefined,\n isListening: \"isListening\" in raw ? raw.isListening ?? undefined : undefined,\n txHash: raw.txHash ?? null,\n hasBeenPaid: raw.hasBeenPaid ?? false,\n status: \"status\" in raw ? (raw).status ?? undefined : undefined,\n recurrence:\n \"recurrence\" in raw ? ((raw).recurrence as Record<string, unknown> | undefined) : undefined,\n originalRequestId: \"originalRequestId\" in raw ? (raw).originalRequestId ?? undefined : undefined,\n originalRequestPaymentReference:\n \"originalRequestPaymentReference\" in raw\n ? (raw).originalRequestPaymentReference ?? undefined\n : undefined,\n isRecurrenceStopped:\n \"isRecurrenceStopped\" in raw ? (raw).isRecurrenceStopped ?? undefined : undefined,\n isCryptoToFiatAvailable:\n \"isCryptoToFiatAvailable\" in raw\n ? (raw).isCryptoToFiatAvailable ?? undefined\n : undefined,\n payments: \"payments\" in raw ? normalizePayments((raw).payments) : undefined,\n customerInfo:\n \"customerInfo\" in raw\n ? normalizeCustomerInfo(\n (raw).customerInfo as RequestStatusCustomerInfo | null | undefined,\n )\n : undefined,\n reference:\n \"reference\" in raw ? normalizeReference((raw).reference ?? null) : undefined,\n ...overrides,\n };\n}\n\nexport function normalizeLegacyStatusResponse(raw: LegacyStatusApiResponse): LegacyRequestStatusResult {\n if (raw.hasBeenPaid) {\n return {\n kind: \"paid\",\n ...buildStatusBase(raw, { hasBeenPaid: true }),\n hasBeenPaid: true,\n };\n }\n\n return {\n kind: \"pending\",\n ...buildStatusBase(raw, { hasBeenPaid: false }),\n hasBeenPaid: false,\n };\n}\n\nexport function normalizeRequestStatusResponse(raw: StatusApiResponseV2): RequestStatusResult {\n const statusKey = raw.status?.trim().toLowerCase();\n const mapped = statusKey ? STATUS_KIND_MAP[statusKey] : undefined;\n const kind: RequestStatusKind = raw.hasBeenPaid\n ? \"paid\"\n : mapped ?? (statusKey ? \"unknown\" : \"pending\");\n\n if (kind === \"paid\") {\n return {\n kind,\n ...buildStatusBase(raw, { hasBeenPaid: true }),\n hasBeenPaid: true,\n };\n }\n\n return {\n kind,\n ...buildStatusBase(raw, { hasBeenPaid: false }),\n hasBeenPaid: false,\n };\n}\n","import type { HttpClient, RequestOptions, RuntimeValidationOption } from \"../../core/http/http.types\";\nimport { requestJson } from \"../../core/http/operation.helper\";\nimport type { operations } from \"../../generated/openapi-types\";\nimport { buildRequestQuery } from \"../requests/request.helpers\";\n\nconst OP_FIND_BY_REQUEST_ID = \"SecurePaymentController_findSecurePayment_v2\" as const;\nconst OP_CREATE = \"SecurePaymentController_createSecurePayment_v2\" as const;\nconst OP_GET_BY_TOKEN = \"SecurePaymentController_getSecurePaymentByToken_v2\" as const;\nconst PATH_BASE = \"/v2/secure-payments\" as const;\n\ntype CreateSecurePaymentBody = operations[typeof OP_CREATE][\"requestBody\"][\"content\"][\"application/json\"];\ntype CreateSecurePaymentResponse = operations[typeof OP_CREATE][\"responses\"][201][\"content\"][\"application/json\"];\ntype FindSecurePaymentQuery = operations[typeof OP_FIND_BY_REQUEST_ID][\"parameters\"][\"query\"];\ntype FindSecurePaymentResponse = operations[typeof OP_FIND_BY_REQUEST_ID][\"responses\"][200][\"content\"][\"application/json\"];\ntype GetSecurePaymentByTokenQuery = NonNullable<operations[typeof OP_GET_BY_TOKEN][\"parameters\"][\"query\"]>;\ntype GetSecurePaymentByTokenResponse = operations[typeof OP_GET_BY_TOKEN][\"responses\"][200][\"content\"][\"application/json\"];\n\nexport interface SecurePaymentsOperationOptions {\n signal?: AbortSignal;\n timeoutMs?: number;\n validation?: RuntimeValidationOption;\n meta?: RequestOptions[\"meta\"];\n}\n\nexport type GetSecurePaymentByTokenOptions = SecurePaymentsOperationOptions & Partial<GetSecurePaymentByTokenQuery>;\n\nexport interface SecurePaymentsApi {\n create(body: CreateSecurePaymentBody, options?: SecurePaymentsOperationOptions): Promise<CreateSecurePaymentResponse>;\n findByRequestId(requestId: FindSecurePaymentQuery[\"requestId\"], options?: SecurePaymentsOperationOptions): Promise<FindSecurePaymentResponse>;\n getByToken(token: string, options?: GetSecurePaymentByTokenOptions): Promise<GetSecurePaymentByTokenResponse>;\n}\n\nexport function createSecurePaymentsApi(http: HttpClient): SecurePaymentsApi {\n return {\n async create(body, options) {\n return requestJson<CreateSecurePaymentResponse>(http, {\n operationId: OP_CREATE,\n method: \"POST\",\n path: PATH_BASE,\n body,\n requestSchemaKey: { operationId: OP_CREATE, kind: \"request\", variant: \"application/json\" },\n schemaKey: { operationId: OP_CREATE, kind: \"response\", status: 201 },\n description: \"Create secure payment\",\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n },\n\n async findByRequestId(requestId, options) {\n return requestJson<FindSecurePaymentResponse>(http, {\n operationId: OP_FIND_BY_REQUEST_ID,\n method: \"GET\",\n path: PATH_BASE,\n query: { requestId },\n schemaKey: { operationId: OP_FIND_BY_REQUEST_ID, kind: \"response\", status: 200 },\n description: \"Find secure payment by request ID\",\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n },\n\n async getByToken(token, options) {\n return requestJson<GetSecurePaymentByTokenResponse>(http, {\n operationId: OP_GET_BY_TOKEN,\n method: \"GET\",\n path: `${PATH_BASE}/${encodeURIComponent(token)}`,\n query: buildRequestQuery({ wallet: options?.wallet }),\n schemaKey: { operationId: OP_GET_BY_TOKEN, kind: \"response\", status: 200 },\n description: \"Get secure payment by token\",\n signal: options?.signal,\n timeoutMs: options?.timeoutMs,\n validation: options?.validation,\n meta: options?.meta,\n });\n },\n };\n}\n\nexport type {\n CreateSecurePaymentBody,\n CreateSecurePaymentResponse,\n FindSecurePaymentResponse,\n GetSecurePaymentByTokenResponse,\n};\n","// Auto-generated by scripts/generate-zod.mjs. Do not edit.\nimport { z } from 'zod';\n\nimport { schemaRegistry } from '../../../schema.registry';\n\nconst ErrorDetailSchema = z\n .object({\n message: z.string(),\n code: z.string().optional(),\n field: z.string().optional(),\n source: z\n .object({\n pointer: z.string().optional(),\n parameter: z.string().optional(),\n })\n .passthrough()\n .optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\nconst ErrorEnvelopeSchema = z\n .object({\n status: z.number().optional(),\n statusCode: z.number().optional(),\n code: z.string().optional(),\n error: z.string().optional(),\n message: z\n .union([\n z.string(),\n z.array(z.union([z.string(), ErrorDetailSchema])),\n ErrorDetailSchema,\n ])\n .optional(),\n detail: z.unknown().optional(),\n errors: z.array(ErrorDetailSchema).optional(),\n requestId: z.string().optional(),\n correlationId: z.string().optional(),\n retryAfter: z.union([z.number(), z.string()]).optional(),\n retryAfterMs: z.number().optional(),\n meta: z.record(z.unknown()).optional(),\n })\n .passthrough();\n\n// GET /v2/secure-payments -> SecurePaymentController_findSecurePayment_v2 (200)\nexport const SecurePaymentController_findSecurePayment_v2_200 = z.object({ \"token\": z.string(), \"securePaymentUrl\": z.string(), \"status\": z.enum(['pending', 'completed', 'expired', 'invalidated']), \"paymentType\": z.enum(['single', 'batch']), \"createdAt\": z.string().nullable(), \"expiresAt\": z.string() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_findSecurePayment_v2', kind: 'response', status: 200 }, schema: SecurePaymentController_findSecurePayment_v2_200 });\n\n// GET /v2/secure-payments -> SecurePaymentController_findSecurePayment_v2 (404)\nexport const SecurePaymentController_findSecurePayment_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_findSecurePayment_v2', kind: 'response', status: 404 }, schema: SecurePaymentController_findSecurePayment_v2_404 });\n\n// GET /v2/secure-payments -> SecurePaymentController_findSecurePayment_v2 (429)\nexport const SecurePaymentController_findSecurePayment_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_findSecurePayment_v2', kind: 'response', status: 429 }, schema: SecurePaymentController_findSecurePayment_v2_429 });\n\n// POST /v2/secure-payments -> SecurePaymentController_createSecurePayment_v2 request (application/json)\nexport const SecurePaymentController_createSecurePayment_v2_Request = z.object({ \"requests\": z.array(z.object({ \"destinationId\": z.string(), \"amount\": z.string() }).passthrough()), \"feePercentage\": (z.string()).optional(), \"feeAddress\": (z.string()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_createSecurePayment_v2', kind: 'request', variant: 'application/json' }, schema: SecurePaymentController_createSecurePayment_v2_Request });\n\n// POST /v2/secure-payments -> SecurePaymentController_createSecurePayment_v2 (201)\nexport const SecurePaymentController_createSecurePayment_v2_201 = z.object({ \"requestIds\": z.array(z.string()), \"securePaymentUrl\": z.string(), \"token\": z.string() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_createSecurePayment_v2', kind: 'response', status: 201 }, schema: SecurePaymentController_createSecurePayment_v2_201 });\n\n// POST /v2/secure-payments -> SecurePaymentController_createSecurePayment_v2 (429)\nexport const SecurePaymentController_createSecurePayment_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_createSecurePayment_v2', kind: 'response', status: 429 }, schema: SecurePaymentController_createSecurePayment_v2_429 });\n\n// GET /v2/secure-payments/{token} -> SecurePaymentController_getSecurePaymentByToken_v2 (200)\nexport const SecurePaymentController_getSecurePaymentByToken_v2_200 = z.object({ \"paymentType\": z.enum(['single']), \"payee\": z.string(), \"network\": z.string(), \"amount\": z.string(), \"paymentCurrency\": z.string(), \"isNativeCurrency\": z.boolean(), \"status\": z.enum(['pending', 'completed', 'expired', 'invalidated']), \"destination\": z.object({ \"destinationId\": z.string(), \"payeeAddress\": z.string(), \"tokenAddress\": z.string(), \"walletAddress\": z.string(), \"network\": z.string() }).passthrough(), \"transactions\": z.array(z.unknown()), \"metadata\": (z.object({ \"stepsRequired\": z.number(), \"needsApproval\": z.boolean(), \"approvalTransactionIndex\": (z.number()).optional(), \"paymentTransactionIndex\": z.number(), \"hasEnoughBalance\": (z.boolean()).optional(), \"hasEnoughGas\": (z.boolean()).optional(), \"platformFee\": (z.object({ \"percentage\": z.string(), \"address\": z.string() }).passthrough()).optional() }).passthrough()).optional() }).passthrough();\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_getSecurePaymentByToken_v2', kind: 'response', status: 200 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_200 });\n\n// GET /v2/secure-payments/{token} -> SecurePaymentController_getSecurePaymentByToken_v2 (403)\nexport const SecurePaymentController_getSecurePaymentByToken_v2_403 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_getSecurePaymentByToken_v2', kind: 'response', status: 403 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_403 });\n\n// GET /v2/secure-payments/{token} -> SecurePaymentController_getSecurePaymentByToken_v2 (404)\nexport const SecurePaymentController_getSecurePaymentByToken_v2_404 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_getSecurePaymentByToken_v2', kind: 'response', status: 404 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_404 });\n\n// GET /v2/secure-payments/{token} -> SecurePaymentController_getSecurePaymentByToken_v2 (409)\nexport const SecurePaymentController_getSecurePaymentByToken_v2_409 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_getSecurePaymentByToken_v2', kind: 'response', status: 409 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_409 });\n\n// GET /v2/secure-payments/{token} -> SecurePaymentController_getSecurePaymentByToken_v2 (429)\nexport const SecurePaymentController_getSecurePaymentByToken_v2_429 = ErrorEnvelopeSchema;\nschemaRegistry.register({ key: { operationId: 'SecurePaymentController_getSecurePaymentByToken_v2', kind: 'response', status: 429 }, schema: SecurePaymentController_getSecurePaymentByToken_v2_429 });\n"]}