cecon-interfaces
Version:
Interfaces de Projetos Cecon
55 lines (54 loc) • 1.65 kB
TypeScript
import { EPaymentType, IPaymentProvider } from '../../general';
import { IOrder } from '../../order';
import { EInvoiceStatus } from '../enums';
import { IInvoiceBankSlip } from './i-invoice-bank-slip';
import { IInvoiceCreditCard } from './i-invoice-credit-card';
import { IInvoiceItem } from './i-invoice-item';
import { IInvoiceLog } from './i-invoice-log';
import { IInvoicePayer } from './i-invoice-payer';
import { IInvoicePix } from './i-invoice-pix';
export interface IInvoice {
addition: number;
bankSlip: IInvoiceBankSlip | null;
bankSlipExtraDue: number;
ccEmails: string[];
companyId: string;
containerId: string;
createdAt: Date;
creditCard: IInvoiceCreditCard | null;
currency: string;
customerId: string | null;
discount: number;
dueDateAt: Date;
email: string;
ensureDueOnWorkday: boolean;
externalInvoiceId: string;
externalInvoiceUrl: string;
id: string;
items: IInvoiceItem[];
logs: IInvoiceLog[];
notes: string;
notificationUrl: string;
orderId: string;
orders: IOrder[] | null;
paidAt: Date | null;
partnerId: string | null;
password: string | null;
payer: IInvoicePayer;
paymentMethod: EPaymentType;
paymentProvider: IPaymentProvider | null;
phoneNumbersNotification: string[];
pix: IInvoicePix | 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;
}