/**
 * Detalhes do cartão de crédito para pagamento COM TOKEN.
 * Baseado no openapi.json "Tokenização de cartões" -> POST /1/sales/ RequestBody.
 */
export interface TokenizedCreditCardDetailsRequest {
    /** Token de identificação do Cartão. Tamanho: 36. */
    CardToken: string;
    /** Código de segurança impresso no verso do cartão. Tamanho: 4. */
    SecurityCode: string;
    /** Bandeira do cartão. Tamanho: 10. (Ex: 'Visa', 'Master') */
    Brand: string;
}
/**
 * Detalhes do objeto Payment na requisição de pagamento COM TOKEN.
 */
export interface TokenizedPaymentDetailsRequest {
    /** Tipo do meio de pagamento (Sempre 'CreditCard' para este fluxo) */
    Type: 'CreditCard';
    /** Valor do pedido (enviado em centavos). Tamanho: 15. */
    Amount: number;
    /** Número de parcelas. Tamanho: 2. */
    Installments: number;
    /** Captura automática (true) ou posterior (false)? */
    Capture?: boolean;
    /** Descrição na fatura (máx 13 chars). */
    SoftDescriptor?: string;
    /** Detalhes do cartão tokenizado */
    CreditCard: TokenizedCreditCardDetailsRequest;
}
/**
 * Dados simplificados do cliente para pagamento com token (opcional).
 */
export interface TokenizedCustomer {
    Name: string;
}
/**
 * Payload completo para a requisição de criação de pagamento COM TOKEN.
 */
export interface TokenizedPaymentRequest {
    /** Identificador único do pedido na loja. Tamanho: 50. */
    MerchantOrderId: string;
    /** Dados do cliente (opcional e simplificado neste fluxo) */
    Customer?: TokenizedCustomer;
    /** Detalhes do pagamento com token */
    Payment: TokenizedPaymentDetailsRequest;
}
