import { EPaymentType, PaymentProviderEntity } from '../../general';
import { IOrder } from '../../order';
import { EInvoiceStatus } from '../enums';
import { IInvoice } from '../interfaces';
import { InvoiceBankSlipEntity } from './invoice-bank-slip.entity';
import { InvoiceCreditCardEntity } from './invoice-credit-card.entity';
import { InvoiceItemEntity } from './invoice-item.entity';
import { InvoiceLogEntity } from './invoice-log.entity';
import { InvoicePayerEntity } from './invoice-payer.entity';
import { InvoicePixEntity } from './invoice-pix.entity';
export declare class InvoiceEntity implements IInvoice {
    addition: number;
    bankSlip: InvoiceBankSlipEntity | null;
    bankSlipExtraDue: number;
    ccEmails: string[];
    companyId: string;
    containerId: string;
    createdAt: Date;
    creditCard: InvoiceCreditCardEntity | null;
    currency: string;
    customerId: string | null;
    discount: number;
    dueDateAt: Date;
    email: string;
    ensureDueOnWorkday: boolean;
    externalInvoiceId: string;
    externalInvoiceUrl: string;
    id: string;
    items: InvoiceItemEntity[];
    logs: InvoiceLogEntity[];
    notes: string;
    notificationUrl: string;
    orderId: string;
    orders: IOrder[] | null;
    paidAt: Date | null;
    partnerId: string;
    password: string | null;
    payer: InvoicePayerEntity;
    paymentMethod: EPaymentType;
    paymentProvider: PaymentProviderEntity | null;
    phoneNumbersNotification: string[];
    pix: InvoicePixEntity | null;
    returnExpiredUrl: string;
    returnUrl: string;
    sandbox: boolean;
    status: EInvoiceStatus;
    subTotal: number;
    subscriptionId: string;
    totalAmount: number;
    totalFee: number;
    totalOverPaid: number;
    totalPaid: number;
    totalRefunded: number;
    updatedAt: Date;
    constructor(data?: Partial<InvoiceEntity>);
}
