import { Model } from 'sequelize-typescript';
import FinanceCompanyModel from './finance-company.entity';
import DocumentItemModel from './document-item.entity';
import LedgerTransactionModel from './ledger-transaction.entity';
import PaymentModel from './payment.entity';
import DocumentTagModel from './document-tag.entity';
import { IDocumentAttr } from '../document/interfaces/document-attr.interface';
import { DocType } from '../enum/doc-type.enum';
import { DiscountType } from '../enum/discount-type.enum';
import { DocumentStatus } from '../enum/document-status.enum';
export default class DocumentModel extends Model implements IDocumentAttr {
    DocNo: string;
    DocType: DocType;
    DocDate: Date;
    CompanyId: string;
    Currency: string;
    AmountBeforeDiscount: number;
    Amount: number;
    DiscountType: DiscountType;
    DiscountValue: number;
    Description: string;
    Status: DocumentStatus;
    IssuedById: string;
    IssuedToId: string;
    IssuedToType: string;
    RelatedObjectId: string;
    RelatedObjectType: string;
    CreatedById: string;
    CreatedAt: Date;
    UpdatedById: string;
    UpdatedAt: Date;
    DocPDFFileMediaId: string;
    DocHTMLFileMediaId: string;
    AccSystemRefId: string;
    PostedToAccSystemYN: string;
    PostedById: string;
    PostedDateTime: Date;
    UseAccSystemDocYN: string;
    DocumentItems: DocumentItemModel[];
    LedgerTransactions: LedgerTransactionModel[];
    Payments: PaymentModel[];
    DocumentTags: DocumentTagModel[];
    FinanceCompany: FinanceCompanyModel;
}
//# sourceMappingURL=document.entity.d.ts.map