import { EPaymentType } from '../../general';
import { ICustomerInfo } from '../../master-setting';
import { IMeliPreferences } from '../../meli/interfaces/i-meli-preferences';
import { EInvoiceStatus } from '../enums';
import { IInvoice, IInvoiceBankSlip, IInvoiceCreditCard, IInvoicePix } from '../interfaces';
import { InvoiceItemEntity } from './invoice-item.entity';
import { InvoiceLogEntity } from './invoice-log.entity';
export declare class InvoiceEntity implements IInvoice {
    addition: number;
    bankSlip: IInvoiceBankSlip | null;
    bankSlipExtraDue: number;
    createdAt: Date;
    creditCard: IInvoiceCreditCard | null;
    currency: string;
    customerId: string | null;
    discount: number;
    email: string | null;
    externalInvoiceId: string;
    externalInvoiceUrl: string;
    id: string;
    items: InvoiceItemEntity[];
    logs: InvoiceLogEntity[];
    notes: string;
    paidAt: Date | null;
    expiresAt: Date | null;
    payer: ICustomerInfo;
    paymentMethod: EPaymentType;
    pix: IInvoicePix | null;
    sandbox: boolean;
    status: EInvoiceStatus;
    subTotal: number;
    subscriptionId: string;
    totalAmount: number;
    totalFee: number;
    totalOverPaid: number;
    totalPaid: number;
    totalRefunded: number;
    updatedAt: Date;
    notificationUrl: string;
    returnUrl: string;
    checkout: IMeliPreferences | null;
    constructor(data?: Partial<InvoiceEntity>);
}
