import Options from '../../common/options'; import InstallmentDetail from '../common/installments_detail'; import TransaccionCompletaCommitDetail from './common/commit_detail'; import TransactionDetail from '../common/transaction_detail'; import BaseTransaction from '../../common/base_transaction'; declare class MallTransaction extends BaseTransaction { /** * Constructor class MallTransaction. * @param options You can pass options to use a custom configuration. */ constructor(options: Options); /** * Creates and returns an instance of `MallTransaction` configured for the integration environment. * * @param commerceCode The commerce code. * @param apiKey The API key used for authentication. * @return A new instance of `MallTransaction` configured for the test environment (Environment.Integration). */ static buildForIntegration(commerceCode: string, apiKey: string): MallTransaction; /** * Creates and returns an instance of `MallTransaction` configured for the production environment. * * @param commerceCode The commerce code. * @param apiKey The API key used for authentication. * @return A new instance of `MallTransaction` configured for the production environment (Environment.Production). */ static buildForProduction(commerceCode: string, apiKey: string): MallTransaction; /** * Create Transaccion Completa Mall transaction * @param buyOrder Commerce buy order, make sure this is unique. * @param sessionId You can use this field to pass session data if needed. * @param cardNumber Card's fron number * @param cardExpirationDate Card's expiration date * @param details Child transactions details, see {@link TransactionDetail} for more information. * @param cvv Card verification value */ create(buyOrder: string, sessionId: string, cardNumber: string, cardExpirationDate: string, details: Array, cvv: number | undefined): Promise; /** * Ask for installment conditions and price of each child transaction * @param token Unique transaction identifier * @param details Child transactions details, see {@link InstallmentDetail} for more information. */ installments(token: string, details: Array): Promise; /** * Commit a transaction * @param token Unique transaction identifier * @param details Child transactions details, see {@link CommitDetail} for more information. */ commit(token: string, details: Array): Promise; /** * Request a refund of a specific transaction, if you refund for the full amount and you're within * the time window the transaction will be reversed. If you're past that window or refund for less * than the total amount the transaction will be void. * @param token Unique transaction identifier * @param buyOrder Child buy order, used to identify the correct child transaction. * @param childCommerceCode Child commerce code, used to indetify the correct child transaction * @param amount Amount to be refunded */ refund(token: string, buyOrder: string, childCommerceCode: string, amount: number): Promise; /** * Obtain the status of a specific transaction * @param token Unique transaction identifier */ status(token: string): Promise; /** * Capture a deferred transaction. * Your commerce code must be configured to support deferred capture. * @param token Unique transaction identifier * @param commerceCode Child commerce code, used to indetify the correct child transaction * @param buyOrder Child buy order, used to identify the correct child transaction. * @param authorizationCode Child transaction's authorization code * @param captureAmount Amount to be captured */ capture(token: string, commerceCode: string, buyOrder: string, authorizationCode: string, captureAmount: number): Promise; } export default MallTransaction;