From 0ab46ff74844c796e28debf52028115947383dab Mon Sep 17 00:00:00 2001 From: Anil Gangapersaud Date: Wed, 10 Sep 2025 18:23:28 +0000 Subject: [PATCH 1/3] feat: add exchange cps quote api --- sdk.json | 146 ++++++++++++- src/generated/.openapi-generator/FILES | 8 + src/generated/api.ts | 1 + src/generated/apis/exchange-api.ts | 194 ++++++++++++++++++ src/generated/index.ts | 3 + src/generated/models/cps-currency.ts | 20 ++ src/generated/models/cps-from-currency.ts | 31 +++ src/generated/models/cps-money.ts | 31 +++ src/generated/models/cps-quote.ts | 55 +++++ src/generated/models/cps-to-amount.ts | 31 +++ .../models/create-cps-quote-request.ts | 34 +++ .../models/create-cps-quote-response.ts | 25 +++ src/generated/models/index.ts | 7 + 13 files changed, 585 insertions(+), 1 deletion(-) create mode 100644 src/generated/apis/exchange-api.ts create mode 100644 src/generated/models/cps-currency.ts create mode 100644 src/generated/models/cps-from-currency.ts create mode 100644 src/generated/models/cps-money.ts create mode 100644 src/generated/models/cps-quote.ts create mode 100644 src/generated/models/cps-to-amount.ts create mode 100644 src/generated/models/create-cps-quote-request.ts create mode 100644 src/generated/models/create-cps-quote-response.ts diff --git a/sdk.json b/sdk.json index ddb82a9..3ce8667 100644 --- a/sdk.json +++ b/sdk.json @@ -8,7 +8,7 @@ "info": { "version": "2.14.0", "title": "All Circle APIs", - "description": "Circle's General, Core Functionality, Payments, Payouts, Accounts, and Crypto Payments APIs bundled into one OpenAPI Specification." + "description": "Circle's General, Core Functionality, Payments, Payouts, Accounts, Crypto Payments, and Exchange APIs bundled into one OpenAPI Specification." }, "tags": [ { @@ -114,6 +114,10 @@ { "name": "Checkout Sessions", "description": "Create, get, extend a checkout session." + }, + { + "name": "Exchange", + "description": "Exchange between two currencies." } ], "paths": { @@ -6998,6 +7002,46 @@ } } } + }, + "/v1/exchange/cps/quotes": { + "post": { + "security": [ + { + "bearerAuth": [] + } + ], + "summary": "Create CPS Quote", + "description": "Create a quote for exchanging between two stablecoins.", + "operationId": "createCpsQuote", + "tags": ["Exchange"], + "requestBody": { + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateCpsQuoteRequest" + } + } + } + }, + "responses": { + "200": { + "description": "Successfully created CPS quote.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/CreateCpsQuoteResponse" + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/NotAuthorized" + } + } + } } }, "components": { @@ -7018,6 +7062,106 @@ } } }, + "CreateCpsQuoteRequest": { + "type": "object", + "required": ["from", "to"], + "properties": { + "from": { + "$ref": "#/components/schemas/CpsFromCurrency" + }, + "to": { + "$ref": "#/components/schemas/CpsToAmount" + } + } + }, + "CpsFromCurrency": { + "type": "object", + "required": ["currency"], + "properties": { + "amount": { + "type": "number", + "nullable": true, + "description": "Source amount (optional)", + "example": 100.0 + }, + "currency": { + "$ref": "#/components/schemas/CpsCurrency" + } + } + }, + "CpsToAmount": { + "type": "object", + "required": ["currency"], + "properties": { + "amount": { + "type": "number", + "nullable": true, + "description": "Target amount (optional)", + "example": 1000 + }, + "currency": { + "$ref": "#/components/schemas/CpsCurrency" + } + } + }, + "CpsCurrency": { + "type": "string", + "description": "Supported stablecoin currency codes", + "enum": ["USDC", "EURC"], + "example": "USDC" + }, + "CreateCpsQuoteResponse": { + "type": "object", + "properties": { + "data": { + "$ref": "#/components/schemas/CpsQuote" + } + } + }, + "CpsQuote": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Unique identifier for the CPS quote", + "example": "825a494f-83a7-4e1f-bb6c-e01f0766f420" + }, + "rate": { + "type": "string", + "description": "Exchange rate", + "example": "0.9132" + }, + "from": { + "$ref": "#/components/schemas/CpsMoney" + }, + "to": { + "$ref": "#/components/schemas/CpsMoney" + }, + "fee": { + "$ref": "#/components/schemas/CpsMoney" + }, + "expiry": { + "type": "string", + "format": "date-time", + "description": "Quote expiration time in ISO-8601 format", + "example": "2025-09-10T17:48:12.237Z" + } + } + }, + "CpsMoney": { + "type": "object", + "required": ["amount", "currency"], + "properties": { + "amount": { + "type": "string", + "description": "Magnitude of the amount with high precision", + "example": "913.390000000000000000000000000000000000000000000000000000000000000000000000000000" + }, + "currency": { + "$ref": "#/components/schemas/CpsCurrency" + } + } + }, "MerchantWalletId": { "type": "string", "description": "Unique system generated identifier for the wallet of the merchant.", diff --git a/src/generated/.openapi-generator/FILES b/src/generated/.openapi-generator/FILES index d22ef94..a7a2674 100644 --- a/src/generated/.openapi-generator/FILES +++ b/src/generated/.openapi-generator/FILES @@ -12,6 +12,7 @@ apis/crypto-payment-intents-api.ts apis/cubixapi.ts apis/deposits-api.ts apis/encryption-api.ts +apis/exchange-api.ts apis/health-api.ts apis/management-api.ts apis/payment-tokens-api.ts @@ -82,6 +83,11 @@ models/checkout-session.ts models/conflict.ts models/continuous-payment-intent-creation-request.ts models/continuous-payment-intent.ts +models/cps-currency.ts +models/cps-from-currency.ts +models/cps-money.ts +models/cps-quote.ts +models/cps-to-amount.ts models/create-address-book-recipient-response.ts models/create-business-cbit-account-response.ts models/create-business-cubix-account-response.ts @@ -93,6 +99,8 @@ models/create-business-transfer-response.ts models/create-business-wire-account-response.ts models/create-card-response.ts models/create-checkout-session-response.ts +models/create-cps-quote-request.ts +models/create-cps-quote-response.ts models/create-crypto-payment-response.ts models/create-crypto-payment-response1.ts models/create-crypto-refund-response.ts diff --git a/src/generated/api.ts b/src/generated/api.ts index bad9695..c0abd55 100644 --- a/src/generated/api.ts +++ b/src/generated/api.ts @@ -19,6 +19,7 @@ export * from "./apis/crypto-exchange-rates-api"; export * from "./apis/crypto-payment-intents-api"; export * from "./apis/deposits-api"; export * from "./apis/encryption-api"; +export * from "./apis/exchange-api"; export * from "./apis/health-api"; export * from "./apis/management-api"; export * from "./apis/pixapi"; diff --git a/src/generated/apis/exchange-api.ts b/src/generated/apis/exchange-api.ts new file mode 100644 index 0000000..c04ce28 --- /dev/null +++ b/src/generated/apis/exchange-api.ts @@ -0,0 +1,194 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +import globalAxios, { + AxiosPromise, + AxiosInstance, + AxiosRequestConfig +} from "axios"; +import { Configuration } from "../configuration"; +// Some imports not used depending on template conditions +// @ts-ignore +import { + DUMMY_BASE_URL, + assertParamExists, + setBearerAuthToObject, + setSearchParams, + serializeDataIfNeeded, + toPathString, + createRequestFunction +} from "../common"; +// @ts-ignore +import { + BASE_PATH, + COLLECTION_FORMATS, + RequestArgs, + BaseAPI, + RequiredError +} from "../base"; +// @ts-ignore +import { BadRequest } from "../models"; +// @ts-ignore +import { CreateCpsQuoteRequest } from "../models"; +// @ts-ignore +import { CreateCpsQuoteResponse } from "../models"; +// @ts-ignore +import { NotAuthorized } from "../models"; +/** + * ExchangeApi - axios parameter creator + * @export + */ +export const ExchangeApiAxiosParamCreator = function ( + configuration?: Configuration +) { + return { + /** + * Create a quote for exchanging between two stablecoins. + * @summary Create CPS Quote + * @param {CreateCpsQuoteRequest} [createCpsQuoteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createCpsQuote: async ( + createCpsQuoteRequest?: CreateCpsQuoteRequest, + options: AxiosRequestConfig = {} + ): Promise => { + const localVarPath = `/v1/exchange/cps/quotes`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { + method: "POST", + ...baseOptions, + ...options + }; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + // authentication bearerAuth required + // http bearer authentication required + await setBearerAuthToObject(localVarHeaderParameter, configuration); + + localVarHeaderParameter["Content-Type"] = "application/json"; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = + baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = { + ...localVarHeaderParameter, + ...headersFromBaseOptions, + ...options.headers + }; + localVarRequestOptions.data = serializeDataIfNeeded( + createCpsQuoteRequest, + localVarRequestOptions, + configuration + ); + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions + }; + } + }; +}; + +/** + * ExchangeApi - functional programming interface + * @export + */ +export const ExchangeApiFp = function (configuration?: Configuration) { + const localVarAxiosParamCreator = ExchangeApiAxiosParamCreator(configuration); + return { + /** + * Create a quote for exchanging between two stablecoins. + * @summary Create CPS Quote + * @param {CreateCpsQuoteRequest} [createCpsQuoteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createCpsQuote( + createCpsQuoteRequest?: CreateCpsQuoteRequest, + options?: AxiosRequestConfig + ): Promise< + ( + axios?: AxiosInstance, + basePath?: string + ) => AxiosPromise + > { + const localVarAxiosArgs = await localVarAxiosParamCreator.createCpsQuote( + createCpsQuoteRequest, + options + ); + return createRequestFunction( + localVarAxiosArgs, + globalAxios, + BASE_PATH, + configuration + ); + } + }; +}; + +/** + * ExchangeApi - factory interface + * @export + */ +export const ExchangeApiFactory = function ( + configuration?: Configuration, + basePath?: string, + axios?: AxiosInstance +) { + const localVarFp = ExchangeApiFp(configuration); + return { + /** + * Create a quote for exchanging between two stablecoins. + * @summary Create CPS Quote + * @param {CreateCpsQuoteRequest} [createCpsQuoteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createCpsQuote( + createCpsQuoteRequest?: CreateCpsQuoteRequest, + options?: any + ): AxiosPromise { + return localVarFp + .createCpsQuote(createCpsQuoteRequest, options) + .then((request) => request(axios, basePath)); + } + }; +}; + +/** + * ExchangeApi - object-oriented interface + * @export + * @class ExchangeApi + * @extends {BaseAPI} + */ +export class ExchangeApi extends BaseAPI { + /** + * Create a quote for exchanging between two stablecoins. + * @summary Create CPS Quote + * @param {CreateCpsQuoteRequest} [createCpsQuoteRequest] + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ExchangeApi + */ + public createCpsQuote( + createCpsQuoteRequest?: CreateCpsQuoteRequest, + options?: AxiosRequestConfig + ) { + return ExchangeApiFp(this.configuration) + .createCpsQuote(createCpsQuoteRequest, options) + .then((request) => request(this.axios, this.basePath)); + } +} diff --git a/src/generated/index.ts b/src/generated/index.ts index b2a936e..413e34e 100644 --- a/src/generated/index.ts +++ b/src/generated/index.ts @@ -20,6 +20,7 @@ import { CryptoPaymentIntentsApi, DepositsApi, EncryptionApi, + ExchangeApi, HealthApi, ManagementApi, PIXApi, @@ -51,6 +52,7 @@ export class Circle { public cryptoPaymentIntents: CryptoPaymentIntentsApi; public deposits: DepositsApi; public encryption: EncryptionApi; + public exchange: ExchangeApi; public health: HealthApi; public management: ManagementApi; public pix: PIXApi; @@ -79,6 +81,7 @@ export class Circle { this.cryptoPaymentIntents = new CryptoPaymentIntentsApi(configuration); this.deposits = new DepositsApi(configuration); this.encryption = new EncryptionApi(configuration); + this.exchange = new ExchangeApi(configuration); this.health = new HealthApi(configuration); this.management = new ManagementApi(configuration); this.pix = new PIXApi(configuration); diff --git a/src/generated/models/cps-currency.ts b/src/generated/models/cps-currency.ts new file mode 100644 index 0000000..9a78cbe --- /dev/null +++ b/src/generated/models/cps-currency.ts @@ -0,0 +1,20 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +/** + * Supported stablecoin currency codes + * @export + * @enum {string} + */ + +export const CpsCurrency = { + Usdc: "USDC", + Eurc: "EURC" +} as const; + +export type CpsCurrency = typeof CpsCurrency[keyof typeof CpsCurrency]; diff --git a/src/generated/models/cps-from-currency.ts b/src/generated/models/cps-from-currency.ts new file mode 100644 index 0000000..8ba4801 --- /dev/null +++ b/src/generated/models/cps-from-currency.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import { CpsCurrency } from "./cps-currency"; + +/** + * + * @export + * @interface CpsFromCurrency + */ +export interface CpsFromCurrency { + /** + * Source amount (optional) + * @type {number} + * @memberof CpsFromCurrency + */ + amount?: number | null; + /** + * + * @type {CpsCurrency} + * @memberof CpsFromCurrency + */ + currency: CpsCurrency; +} diff --git a/src/generated/models/cps-money.ts b/src/generated/models/cps-money.ts new file mode 100644 index 0000000..84e7920 --- /dev/null +++ b/src/generated/models/cps-money.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import { CpsCurrency } from "./cps-currency"; + +/** + * + * @export + * @interface CpsMoney + */ +export interface CpsMoney { + /** + * Magnitude of the amount with high precision + * @type {string} + * @memberof CpsMoney + */ + amount: string; + /** + * + * @type {CpsCurrency} + * @memberof CpsMoney + */ + currency: CpsCurrency; +} diff --git a/src/generated/models/cps-quote.ts b/src/generated/models/cps-quote.ts new file mode 100644 index 0000000..ec2030a --- /dev/null +++ b/src/generated/models/cps-quote.ts @@ -0,0 +1,55 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import { CpsMoney } from "./cps-money"; + +/** + * + * @export + * @interface CpsQuote + */ +export interface CpsQuote { + /** + * Unique identifier for the CPS quote + * @type {string} + * @memberof CpsQuote + */ + id?: string; + /** + * Exchange rate + * @type {string} + * @memberof CpsQuote + */ + rate?: string; + /** + * + * @type {CpsMoney} + * @memberof CpsQuote + */ + from?: CpsMoney; + /** + * + * @type {CpsMoney} + * @memberof CpsQuote + */ + to?: CpsMoney; + /** + * + * @type {CpsMoney} + * @memberof CpsQuote + */ + fee?: CpsMoney; + /** + * Quote expiration time in ISO-8601 format + * @type {string} + * @memberof CpsQuote + */ + expiry?: string; +} diff --git a/src/generated/models/cps-to-amount.ts b/src/generated/models/cps-to-amount.ts new file mode 100644 index 0000000..d691997 --- /dev/null +++ b/src/generated/models/cps-to-amount.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import { CpsCurrency } from "./cps-currency"; + +/** + * + * @export + * @interface CpsToAmount + */ +export interface CpsToAmount { + /** + * Target amount (optional) + * @type {number} + * @memberof CpsToAmount + */ + amount?: number | null; + /** + * + * @type {CpsCurrency} + * @memberof CpsToAmount + */ + currency: CpsCurrency; +} diff --git a/src/generated/models/create-cps-quote-request.ts b/src/generated/models/create-cps-quote-request.ts new file mode 100644 index 0000000..5ea316c --- /dev/null +++ b/src/generated/models/create-cps-quote-request.ts @@ -0,0 +1,34 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import { CpsFromCurrency } from "./cps-from-currency"; +// May contain unused imports in some cases +// @ts-ignore +import { CpsToAmount } from "./cps-to-amount"; + +/** + * + * @export + * @interface CreateCpsQuoteRequest + */ +export interface CreateCpsQuoteRequest { + /** + * + * @type {CpsFromCurrency} + * @memberof CreateCpsQuoteRequest + */ + from: CpsFromCurrency; + /** + * + * @type {CpsToAmount} + * @memberof CreateCpsQuoteRequest + */ + to: CpsToAmount; +} diff --git a/src/generated/models/create-cps-quote-response.ts b/src/generated/models/create-cps-quote-response.ts new file mode 100644 index 0000000..a6b4cbd --- /dev/null +++ b/src/generated/models/create-cps-quote-response.ts @@ -0,0 +1,25 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + +// May contain unused imports in some cases +// @ts-ignore +import { CpsQuote } from "./cps-quote"; + +/** + * + * @export + * @interface CreateCpsQuoteResponse + */ +export interface CreateCpsQuoteResponse { + /** + * + * @type {CpsQuote} + * @memberof CreateCpsQuoteResponse + */ + data?: CpsQuote; +} diff --git a/src/generated/models/index.ts b/src/generated/models/index.ts index a07ec45..082444d 100644 --- a/src/generated/models/index.ts +++ b/src/generated/models/index.ts @@ -52,6 +52,11 @@ export * from "./checkout-session-status"; export * from "./conflict"; export * from "./continuous-payment-intent"; export * from "./continuous-payment-intent-creation-request"; +export * from "./cps-currency"; +export * from "./cps-from-currency"; +export * from "./cps-money"; +export * from "./cps-quote"; +export * from "./cps-to-amount"; export * from "./create-address-book-recipient-response"; export * from "./create-business-cbit-account-response"; export * from "./create-business-cubix-account-response"; @@ -63,6 +68,8 @@ export * from "./create-business-transfer-response"; export * from "./create-business-wire-account-response"; export * from "./create-card-response"; export * from "./create-checkout-session-response"; +export * from "./create-cps-quote-request"; +export * from "./create-cps-quote-response"; export * from "./create-crypto-payment-response"; export * from "./create-crypto-payment-response1"; export * from "./create-crypto-refund-response"; From 266257fd54d21a07bf19e0916bc8a7809c38bfb4 Mon Sep 17 00:00:00 2001 From: Anil Gangapersaud Date: Wed, 10 Sep 2025 18:29:41 +0000 Subject: [PATCH 2/3] chore: clean up types --- sdk.json | 47 ++++--------------- src/generated/.openapi-generator/FILES | 6 +-- src/generated/models/cps-money.ts | 31 ------------ src/generated/models/cps-quote.ts | 14 +++--- src/generated/models/cps-to-amount.ts | 31 ------------ .../models/{cps-currency.ts => cps-token.ts} | 6 +-- .../models/create-cps-quote-request.ts | 13 ++--- src/generated/models/index.ts | 6 +-- ...m-currency.ts => optional-amount-money.ts} | 14 +++--- 9 files changed, 35 insertions(+), 133 deletions(-) delete mode 100644 src/generated/models/cps-money.ts delete mode 100644 src/generated/models/cps-to-amount.ts rename src/generated/models/{cps-currency.ts => cps-token.ts} (67%) rename src/generated/models/{cps-from-currency.ts => optional-amount-money.ts} (63%) diff --git a/sdk.json b/sdk.json index 3ce8667..b5682c0 100644 --- a/sdk.json +++ b/sdk.json @@ -7067,14 +7067,14 @@ "required": ["from", "to"], "properties": { "from": { - "$ref": "#/components/schemas/CpsFromCurrency" + "$ref": "#/components/schemas/OptionalAmountMoney" }, "to": { - "$ref": "#/components/schemas/CpsToAmount" + "$ref": "#/components/schemas/OptionalAmountMoney" } } }, - "CpsFromCurrency": { + "OptionalAmountMoney": { "type": "object", "required": ["currency"], "properties": { @@ -7085,28 +7085,13 @@ "example": 100.0 }, "currency": { - "$ref": "#/components/schemas/CpsCurrency" + "$ref": "#/components/schemas/CpsToken" } } }, - "CpsToAmount": { - "type": "object", - "required": ["currency"], - "properties": { - "amount": { - "type": "number", - "nullable": true, - "description": "Target amount (optional)", - "example": 1000 - }, - "currency": { - "$ref": "#/components/schemas/CpsCurrency" - } - } - }, - "CpsCurrency": { + "CpsToken": { "type": "string", - "description": "Supported stablecoin currency codes", + "description": "Supported stablecoin tokens", "enum": ["USDC", "EURC"], "example": "USDC" }, @@ -7132,13 +7117,13 @@ "example": "0.9132" }, "from": { - "$ref": "#/components/schemas/CpsMoney" + "$ref": "#/components/schemas/OptionalAmountMoney" }, "to": { - "$ref": "#/components/schemas/CpsMoney" + "$ref": "#/components/schemas/OptionalAmountMoney" }, "fee": { - "$ref": "#/components/schemas/CpsMoney" + "$ref": "#/components/schemas/OptionalAmountMoney" }, "expiry": { "type": "string", @@ -7148,20 +7133,6 @@ } } }, - "CpsMoney": { - "type": "object", - "required": ["amount", "currency"], - "properties": { - "amount": { - "type": "string", - "description": "Magnitude of the amount with high precision", - "example": "913.390000000000000000000000000000000000000000000000000000000000000000000000000000" - }, - "currency": { - "$ref": "#/components/schemas/CpsCurrency" - } - } - }, "MerchantWalletId": { "type": "string", "description": "Unique system generated identifier for the wallet of the merchant.", diff --git a/src/generated/.openapi-generator/FILES b/src/generated/.openapi-generator/FILES index a7a2674..1574ddd 100644 --- a/src/generated/.openapi-generator/FILES +++ b/src/generated/.openapi-generator/FILES @@ -83,11 +83,8 @@ models/checkout-session.ts models/conflict.ts models/continuous-payment-intent-creation-request.ts models/continuous-payment-intent.ts -models/cps-currency.ts -models/cps-from-currency.ts -models/cps-money.ts models/cps-quote.ts -models/cps-to-amount.ts +models/cps-token.ts models/create-address-book-recipient-response.ts models/create-business-cbit-account-response.ts models/create-business-cubix-account-response.ts @@ -225,6 +222,7 @@ models/money.ts models/network-fee-quote.ts models/not-authorized.ts models/not-found.ts +models/optional-amount-money.ts models/payment-creation-request.ts models/payment-error-code.ts models/payment-info-cancel.ts diff --git a/src/generated/models/cps-money.ts b/src/generated/models/cps-money.ts deleted file mode 100644 index 84e7920..0000000 --- a/src/generated/models/cps-money.ts +++ /dev/null @@ -1,31 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -// May contain unused imports in some cases -// @ts-ignore -import { CpsCurrency } from "./cps-currency"; - -/** - * - * @export - * @interface CpsMoney - */ -export interface CpsMoney { - /** - * Magnitude of the amount with high precision - * @type {string} - * @memberof CpsMoney - */ - amount: string; - /** - * - * @type {CpsCurrency} - * @memberof CpsMoney - */ - currency: CpsCurrency; -} diff --git a/src/generated/models/cps-quote.ts b/src/generated/models/cps-quote.ts index ec2030a..58197e4 100644 --- a/src/generated/models/cps-quote.ts +++ b/src/generated/models/cps-quote.ts @@ -8,7 +8,7 @@ // May contain unused imports in some cases // @ts-ignore -import { CpsMoney } from "./cps-money"; +import { OptionalAmountMoney } from "./optional-amount-money"; /** * @@ -30,22 +30,22 @@ export interface CpsQuote { rate?: string; /** * - * @type {CpsMoney} + * @type {OptionalAmountMoney} * @memberof CpsQuote */ - from?: CpsMoney; + from?: OptionalAmountMoney; /** * - * @type {CpsMoney} + * @type {OptionalAmountMoney} * @memberof CpsQuote */ - to?: CpsMoney; + to?: OptionalAmountMoney; /** * - * @type {CpsMoney} + * @type {OptionalAmountMoney} * @memberof CpsQuote */ - fee?: CpsMoney; + fee?: OptionalAmountMoney; /** * Quote expiration time in ISO-8601 format * @type {string} diff --git a/src/generated/models/cps-to-amount.ts b/src/generated/models/cps-to-amount.ts deleted file mode 100644 index d691997..0000000 --- a/src/generated/models/cps-to-amount.ts +++ /dev/null @@ -1,31 +0,0 @@ -/* tslint:disable */ -/* eslint-disable */ -/** - * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). - * https://openapi-generator.tech - * Do not edit the class manually. - */ - -// May contain unused imports in some cases -// @ts-ignore -import { CpsCurrency } from "./cps-currency"; - -/** - * - * @export - * @interface CpsToAmount - */ -export interface CpsToAmount { - /** - * Target amount (optional) - * @type {number} - * @memberof CpsToAmount - */ - amount?: number | null; - /** - * - * @type {CpsCurrency} - * @memberof CpsToAmount - */ - currency: CpsCurrency; -} diff --git a/src/generated/models/cps-currency.ts b/src/generated/models/cps-token.ts similarity index 67% rename from src/generated/models/cps-currency.ts rename to src/generated/models/cps-token.ts index 9a78cbe..e9f1502 100644 --- a/src/generated/models/cps-currency.ts +++ b/src/generated/models/cps-token.ts @@ -7,14 +7,14 @@ */ /** - * Supported stablecoin currency codes + * Supported stablecoin tokens * @export * @enum {string} */ -export const CpsCurrency = { +export const CpsToken = { Usdc: "USDC", Eurc: "EURC" } as const; -export type CpsCurrency = typeof CpsCurrency[keyof typeof CpsCurrency]; +export type CpsToken = typeof CpsToken[keyof typeof CpsToken]; diff --git a/src/generated/models/create-cps-quote-request.ts b/src/generated/models/create-cps-quote-request.ts index 5ea316c..101637c 100644 --- a/src/generated/models/create-cps-quote-request.ts +++ b/src/generated/models/create-cps-quote-request.ts @@ -8,10 +8,7 @@ // May contain unused imports in some cases // @ts-ignore -import { CpsFromCurrency } from "./cps-from-currency"; -// May contain unused imports in some cases -// @ts-ignore -import { CpsToAmount } from "./cps-to-amount"; +import { OptionalAmountMoney } from "./optional-amount-money"; /** * @@ -21,14 +18,14 @@ import { CpsToAmount } from "./cps-to-amount"; export interface CreateCpsQuoteRequest { /** * - * @type {CpsFromCurrency} + * @type {OptionalAmountMoney} * @memberof CreateCpsQuoteRequest */ - from: CpsFromCurrency; + from: OptionalAmountMoney; /** * - * @type {CpsToAmount} + * @type {OptionalAmountMoney} * @memberof CreateCpsQuoteRequest */ - to: CpsToAmount; + to: OptionalAmountMoney; } diff --git a/src/generated/models/index.ts b/src/generated/models/index.ts index 082444d..0515b36 100644 --- a/src/generated/models/index.ts +++ b/src/generated/models/index.ts @@ -52,11 +52,8 @@ export * from "./checkout-session-status"; export * from "./conflict"; export * from "./continuous-payment-intent"; export * from "./continuous-payment-intent-creation-request"; -export * from "./cps-currency"; -export * from "./cps-from-currency"; -export * from "./cps-money"; export * from "./cps-quote"; -export * from "./cps-to-amount"; +export * from "./cps-token"; export * from "./create-address-book-recipient-response"; export * from "./create-business-cbit-account-response"; export * from "./create-business-cubix-account-response"; @@ -193,6 +190,7 @@ export * from "./money"; export * from "./network-fee-quote"; export * from "./not-authorized"; export * from "./not-found"; +export * from "./optional-amount-money"; export * from "./payment-creation-request"; export * from "./payment-error-code"; export * from "./payment-info-cancel"; diff --git a/src/generated/models/cps-from-currency.ts b/src/generated/models/optional-amount-money.ts similarity index 63% rename from src/generated/models/cps-from-currency.ts rename to src/generated/models/optional-amount-money.ts index 8ba4801..3cf8adb 100644 --- a/src/generated/models/cps-from-currency.ts +++ b/src/generated/models/optional-amount-money.ts @@ -8,24 +8,24 @@ // May contain unused imports in some cases // @ts-ignore -import { CpsCurrency } from "./cps-currency"; +import { CpsToken } from "./cps-token"; /** * * @export - * @interface CpsFromCurrency + * @interface OptionalAmountMoney */ -export interface CpsFromCurrency { +export interface OptionalAmountMoney { /** * Source amount (optional) * @type {number} - * @memberof CpsFromCurrency + * @memberof OptionalAmountMoney */ amount?: number | null; /** * - * @type {CpsCurrency} - * @memberof CpsFromCurrency + * @type {CpsToken} + * @memberof OptionalAmountMoney */ - currency: CpsCurrency; + currency: CpsToken; } From e69df6656a3338917b6395aa953495f632b65298 Mon Sep 17 00:00:00 2001 From: Anil Gangapersaud Date: Wed, 10 Sep 2025 18:33:35 +0000 Subject: [PATCH 3/3] chore: clean up types --- sdk.json | 14 +++++++------- src/generated/.openapi-generator/FILES | 2 +- ...mount-money.ts => cps-optional-amount-money.ts} | 8 ++++---- src/generated/models/cps-quote.ts | 14 +++++++------- src/generated/models/create-cps-quote-request.ts | 10 +++++----- src/generated/models/index.ts | 2 +- 6 files changed, 25 insertions(+), 25 deletions(-) rename src/generated/models/{optional-amount-money.ts => cps-optional-amount-money.ts} (75%) diff --git a/sdk.json b/sdk.json index b5682c0..f26f321 100644 --- a/sdk.json +++ b/sdk.json @@ -7067,14 +7067,14 @@ "required": ["from", "to"], "properties": { "from": { - "$ref": "#/components/schemas/OptionalAmountMoney" + "$ref": "#/components/schemas/CpsOptionalAmountMoney" }, "to": { - "$ref": "#/components/schemas/OptionalAmountMoney" + "$ref": "#/components/schemas/CpsOptionalAmountMoney" } } }, - "OptionalAmountMoney": { + "CpsOptionalAmountMoney": { "type": "object", "required": ["currency"], "properties": { @@ -7091,7 +7091,7 @@ }, "CpsToken": { "type": "string", - "description": "Supported stablecoin tokens", + "description": "Supported stablecoin tokens for CPS", "enum": ["USDC", "EURC"], "example": "USDC" }, @@ -7117,13 +7117,13 @@ "example": "0.9132" }, "from": { - "$ref": "#/components/schemas/OptionalAmountMoney" + "$ref": "#/components/schemas/CpsOptionalAmountMoney" }, "to": { - "$ref": "#/components/schemas/OptionalAmountMoney" + "$ref": "#/components/schemas/CpsOptionalAmountMoney" }, "fee": { - "$ref": "#/components/schemas/OptionalAmountMoney" + "$ref": "#/components/schemas/CpsOptionalAmountMoney" }, "expiry": { "type": "string", diff --git a/src/generated/.openapi-generator/FILES b/src/generated/.openapi-generator/FILES index 1574ddd..109c6ec 100644 --- a/src/generated/.openapi-generator/FILES +++ b/src/generated/.openapi-generator/FILES @@ -83,6 +83,7 @@ models/checkout-session.ts models/conflict.ts models/continuous-payment-intent-creation-request.ts models/continuous-payment-intent.ts +models/cps-optional-amount-money.ts models/cps-quote.ts models/cps-token.ts models/create-address-book-recipient-response.ts @@ -222,7 +223,6 @@ models/money.ts models/network-fee-quote.ts models/not-authorized.ts models/not-found.ts -models/optional-amount-money.ts models/payment-creation-request.ts models/payment-error-code.ts models/payment-info-cancel.ts diff --git a/src/generated/models/optional-amount-money.ts b/src/generated/models/cps-optional-amount-money.ts similarity index 75% rename from src/generated/models/optional-amount-money.ts rename to src/generated/models/cps-optional-amount-money.ts index 3cf8adb..7e6301b 100644 --- a/src/generated/models/optional-amount-money.ts +++ b/src/generated/models/cps-optional-amount-money.ts @@ -13,19 +13,19 @@ import { CpsToken } from "./cps-token"; /** * * @export - * @interface OptionalAmountMoney + * @interface CpsOptionalAmountMoney */ -export interface OptionalAmountMoney { +export interface CpsOptionalAmountMoney { /** * Source amount (optional) * @type {number} - * @memberof OptionalAmountMoney + * @memberof CpsOptionalAmountMoney */ amount?: number | null; /** * * @type {CpsToken} - * @memberof OptionalAmountMoney + * @memberof CpsOptionalAmountMoney */ currency: CpsToken; } diff --git a/src/generated/models/cps-quote.ts b/src/generated/models/cps-quote.ts index 58197e4..599827c 100644 --- a/src/generated/models/cps-quote.ts +++ b/src/generated/models/cps-quote.ts @@ -8,7 +8,7 @@ // May contain unused imports in some cases // @ts-ignore -import { OptionalAmountMoney } from "./optional-amount-money"; +import { CpsOptionalAmountMoney } from "./cps-optional-amount-money"; /** * @@ -30,22 +30,22 @@ export interface CpsQuote { rate?: string; /** * - * @type {OptionalAmountMoney} + * @type {CpsOptionalAmountMoney} * @memberof CpsQuote */ - from?: OptionalAmountMoney; + from?: CpsOptionalAmountMoney; /** * - * @type {OptionalAmountMoney} + * @type {CpsOptionalAmountMoney} * @memberof CpsQuote */ - to?: OptionalAmountMoney; + to?: CpsOptionalAmountMoney; /** * - * @type {OptionalAmountMoney} + * @type {CpsOptionalAmountMoney} * @memberof CpsQuote */ - fee?: OptionalAmountMoney; + fee?: CpsOptionalAmountMoney; /** * Quote expiration time in ISO-8601 format * @type {string} diff --git a/src/generated/models/create-cps-quote-request.ts b/src/generated/models/create-cps-quote-request.ts index 101637c..b6b519b 100644 --- a/src/generated/models/create-cps-quote-request.ts +++ b/src/generated/models/create-cps-quote-request.ts @@ -8,7 +8,7 @@ // May contain unused imports in some cases // @ts-ignore -import { OptionalAmountMoney } from "./optional-amount-money"; +import { CpsOptionalAmountMoney } from "./cps-optional-amount-money"; /** * @@ -18,14 +18,14 @@ import { OptionalAmountMoney } from "./optional-amount-money"; export interface CreateCpsQuoteRequest { /** * - * @type {OptionalAmountMoney} + * @type {CpsOptionalAmountMoney} * @memberof CreateCpsQuoteRequest */ - from: OptionalAmountMoney; + from: CpsOptionalAmountMoney; /** * - * @type {OptionalAmountMoney} + * @type {CpsOptionalAmountMoney} * @memberof CreateCpsQuoteRequest */ - to: OptionalAmountMoney; + to: CpsOptionalAmountMoney; } diff --git a/src/generated/models/index.ts b/src/generated/models/index.ts index 0515b36..c35dc15 100644 --- a/src/generated/models/index.ts +++ b/src/generated/models/index.ts @@ -52,6 +52,7 @@ export * from "./checkout-session-status"; export * from "./conflict"; export * from "./continuous-payment-intent"; export * from "./continuous-payment-intent-creation-request"; +export * from "./cps-optional-amount-money"; export * from "./cps-quote"; export * from "./cps-token"; export * from "./create-address-book-recipient-response"; @@ -190,7 +191,6 @@ export * from "./money"; export * from "./network-fee-quote"; export * from "./not-authorized"; export * from "./not-found"; -export * from "./optional-amount-money"; export * from "./payment-creation-request"; export * from "./payment-error-code"; export * from "./payment-info-cancel";