import { payIn } from "../models/payIn"; import { refund } from "../models/refund"; import { base } from "../base"; import MethodOverload = base.MethodOverload; import TwoArgsMethodOverload = base.TwoArgsMethodOverload; import NoArgMethodOverload = base.NoArgMethodOverload; import ThreeArgsMethodOverload = base.ThreeArgsMethodOverload; export class PayIns { /** * Create new pay-in * @param payIn * @param options */ create: MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload & MethodOverload; /** * Get pay-in * @param payInId * @param options */ get: MethodOverload; /** * Create refund for pay-in object * @param payInId * @param refundData * @param options */ createRefund: TwoArgsMethodOverload; /** * Gets list of Refunds for a PayIn * @param payInId * @param options */ getRefunds: MethodOverload; /** * Get Recurring PayIn * @param payInId */ getRecurringPayin: MethodOverload; /** * Update Recurring PayIn * @param payInId * @param updateData */ updateRecurringPayin: TwoArgsMethodOverload; /** * Create Recurring PayIn Registration * @param createData */ createRecurringPayment: MethodOverload; /** * Create new recurring pay-in CIT */ createRecurringPayInRegistrationCIT: MethodOverload; /** * Create new recurring pay-in MIT */ createRecurringPayInRegistrationMIT: MethodOverload; /** * Create new Card PreAuthorized Deposit PayIn without complement */ createCardPreAuthorizedDepositPayIn: MethodOverload; /** * Create new Card PreAuthorized Deposit PayIn prior to complement */ createDepositPreauthorizedPayInPriorToComplement: MethodOverload; /** * Create new Card PreAuthorized Deposit PayIn complement */ createDepositPreauthorizedPayInComplement: MethodOverload; createRecurringPayPalPayInCIT: MethodOverload; createRecurringPayPalPayInMIT: MethodOverload; /** * Create new PayPal Web pay-in * To be used instead of the 'create' method for PayPal PayIns * @param payIn * @param options */ createPayPal: MethodOverload; /** * Create new GooglePay Direct pay-in * To be used instead of the 'create' method for GooglePay PayIns * @param payIn * @param options */ createGooglePay: MethodOverload; /** * Get Payment Method Metadata * The body should contain the 'Type' and: 'Bin' (if the type is BIN) or 'Token' (if the type is GOOGLE_PAY) */ getPaymentMethodMetadata: MethodOverload; /** * Add tracking information to a PayPal PayIn (add the tracking number and carrier for LineItems shipments.) * * Caution – Tracking information cannot be edited * * You can’t modify the TrackingNumber, Carrier, or NotifyBuyer once added. * * You can only send a unique tracking number once. * * @param {string} payInId The ID of the PayIn * @param {Object} trackingInformation trackingInformation object * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ addPayPalTrackingInformation: TwoArgsMethodOverload; /** * View card details for a Web Card PayIn * @param payInId * @param options */ getCardWebPayInExtendedDetails: MethodOverload; /** * Create new pay-in Payconiq Web, using the latest API url (/payment-methods/payconiq) * @param payIn * @param options */ createPayconiq: MethodOverload /** * Create a pay in intent authorization * @param {payIn.CreatePayInIntentAuthorization} payInIntentAuthorization PayInIntentAuthorization object * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ createPayInIntentAuthorization: MethodOverload /** * Create a pay in intent full capture * @param {string} payInIntentId PayInIntent identifier * @param {payIn.CreatePayInIntentFullCapture} payInIntentFullCapture PayInIntentFullCapture object * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ createPayInIntentFullCapture: TwoArgsMethodOverload /** * Create a pay in intent partial capture * @param {string} payInIntentId PayInIntent identifier * @param {payIn.CreatePayInIntentPartialCapture} payInIntentPartialCapture PayInIntentPartialCapture object * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ createPayInIntentPartialCapture: TwoArgsMethodOverload /** * Get a PayInIntent * @param {string} payInIntentId PayInIntent identifier * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ getPayInIntent: MethodOverload /** * Cancel a PayInIntent * @param {string} payInIntentId PayInIntent identifier * @param {payIn.FullCancelPayInIntent} intentDetails Details about the intent to be canceled * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ fullCancelPayInIntent: TwoArgsMethodOverload /** * Cancel a PayInIntent * @param {string} payInIntentId PayInIntent identifier * @param {payIn.PartialCancelPayInIntent} intentDetails Details about the intent to be canceled * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ partialCancelPayInIntent: TwoArgsMethodOverload /** * Create PayInIntent splits * @param {string} payInIntentId PayInIntent identifier * @param {payIn.CreatePayInIntentSplits} splits CreatePayInIntentSplits object * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ createPayInIntentSplits: TwoArgsMethodOverload /** * Execute split * @param {string} payInIntentId PayInIntent identifier * @param {string} splitId Split identifier * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ executePayInIntentSplit: TwoArgsMethodOverload /** * Reverse split * @param {string} payInIntentId PayInIntent identifier * @param {string} splitId Split identifier * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ reversePayInIntentSplit: TwoArgsMethodOverload /** * Get split * @param {string} payInIntentId PayInIntent identifier * @param {string} splitId Split identifier * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ getPayInIntentSplit: TwoArgsMethodOverload /** * Update split * @param {string} payInIntentId PayInIntent identifier * @param {string} splitId Split identifier * @param {payIn.UpdatePayInIntentSplit} Object containing the split properties to be updated * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ updatePayInIntentSplit: ThreeArgsMethodOverload /** * Retrieve a paginated list of banks that you can present to the user for selection during their Pay by Bank checkout experience * Optionally filter by CountryCodes. Paginated. * @param {Function} callback Callback function * @param {Object} options Request options * @return {Object} Request promise */ getPayByBankSupportedBanks: NoArgMethodOverload /** * Send key pre-transaction data such as order details, buyer information, * and merchant context before initiating a PayPal payment. * * Given that the payload can be anything, depending on what PayPal needs, there is no defined interface for it. * * @param dataCollection The data collection to be created * @param callback Callback function * @param options Request options * @returns {Object} Request promise */ createPayPalDataCollection: MethodOverload /** * Get a PayPal data collection. * * @param dataCollectionId Data collection identifier * @param callback Callback function * @param options Request options * @returns {Object} Request promise */ getPayPalDataCollection: MethodOverload }