/** * PagarmeApiSDKLib * * This file was automatically generated by APIMATIC v3.0 ( https://www.apimatic.io ). */ import { array, lazy, number, object, optional, Schema, string, } from '../schema'; import { CreateBankAccountRefundingDTO, createBankAccountRefundingDTOSchema, } from './createBankAccountRefundingDTO'; import { CreateCancelChargeSplitRulesRequest, createCancelChargeSplitRulesRequestSchema, } from './createCancelChargeSplitRulesRequest'; import { CreateSplitRequest, createSplitRequestSchema, } from './createSplitRequest'; /** Request for canceling a charge. */ export interface CreateCancelChargeRequest { /** The amount that will be canceled. */ amount?: number; /** The split rules request */ splitRules?: CreateCancelChargeSplitRulesRequest[]; /** Splits */ split?: CreateSplitRequest[]; operationReference: string; bankAccount?: CreateBankAccountRefundingDTO; } export const createCancelChargeRequestSchema: Schema = object( { amount: ['amount', optional(number())], splitRules: [ 'split_rules', optional(array(lazy(() => createCancelChargeSplitRulesRequestSchema))), ], split: ['split', optional(array(lazy(() => createSplitRequestSchema)))], operationReference: ['operation_reference', string()], bankAccount: [ 'bank_account', optional(lazy(() => createBankAccountRefundingDTOSchema)), ], } );