UNPKG

ngx-mercadopago

Version:

An Angular wrapper for Mercado Pago SDK for JavaScript

152 lines (151 loc) 4.21 kB
export interface MercadopagoSDk { version: string; AJAX: void; clearSession: () => void; createDeviceProfile: void; createToken: (form: PaymentForm, callback: ((status: number, data: CardToken | ErrorData) => void)) => void; deviceProfileId: string; getAllPaymentMethods: void; getIdentificationTypes: (callback: ((status: number, data: IdentificationType[]) => void)) => void; getInstallments: (card: CardInstallment, callback: ((status: number, data: Installments[] | ErrorData) => void)) => void; getIssuers: void; getPaymentMethod: (card: PaymentMethodSearch, callback: ((status: number, data: PaymentMethod[] | ErrorData) => void)) => void; getPaymentMethods: () => PaymentMethod[]; initMercadopago: () => void; initialized: boolean; initializedInsights: boolean; key: null; referer: string; sessionId: null; setPaymentMethods: () => void; setPublishableKey: (key: string) => void; tokenId: null; validateBinPattern: () => void; validateCardNumber: () => void; validateCardholderName: () => void; validateExpiryDate: (key1: string, key2?: string) => boolean; validateIdentification: () => void; validateLuhn: () => void; validateSecurityCode: () => void; } export interface PaymentMethod { id: string; name: string; payment_type_id: 'credit_card' | 'debit_card' | 'ticket'; status: string; secure_thumbnail: string; thumbnail: string; deferred_capture: string; settings: Setting[]; additional_info_needed: string[]; min_allowed_amount: number; max_allowed_amount: number; accreditation_time: number; financial_institutions: any[]; processing_modes: string[]; } export interface PaymentMethodSearch { payment_method_id?: string; bin?: number | string; } export interface Setting { card_number: CardNumber; bin: Bin; security_code: SecurityCode; } export interface SecurityCode { length: number; card_location: string; mode: string; } export interface Bin { pattern: string; installments_pattern: string; exclusion_pattern?: string; } export interface CardNumber { validation: string; length: number; } export interface IdentificationType { id: string; name: string; type: string; min_length: number; max_length: number; } export interface PaymentForm { cardNumber: any; securityCode: any; cardExpirationMonth: any; cardExpirationYear: string; cardholderName: any; docType: string; docNumber: any; } export interface CardToken { card_number_length: number; cardholder: Cardholder; date_created: string; date_due: string; date_last_updated: string; expiration_month: number; expiration_year: number; first_six_digits: string; id: string; last_four_digits: string; live_mode: boolean; luhn_validation: boolean; public_key: string; require_esc: boolean; security_code_length: number; status: string; } export interface Cardholder { identification: Identification; name: string; } export interface Identification { number: string; type: string; } export interface CardInstallment { payment_type_id?: 'credit_card' | 'debit_card' | 'ticket'; payment_method_id?: string; bin?: number | string; } export interface Installments { payment_method_id: string; payment_type_id: string; issuer: Issuer; processing_mode: string; merchant_account_id?: any; payer_costs: PayerCost[]; agreements?: any; } export interface PayerCost { installments: number; installment_rate: number; discount_rate: number; reimbursement_rate?: number; labels: string[]; installment_rate_collector: string[]; min_allowed_amount: number; max_allowed_amount: number; recommended_message: string; installment_amount?: number; total_amount?: number; payment_method_option_id: string; } export interface Issuer { id: string; name: string; secure_thumbnail: string; thumbnail: string; } export interface ErrorData { cause: any[]; error: string; message: string; status: number; }