/** * Estimacion Entity * Estimaciones de obra periodicas para subcontratistas * * @module Estimates * @table estimates.estimaciones * @ddl schemas/04-estimates-schema-ddl.sql */ import { Tenant } from '../../core/entities/tenant.entity'; import { User } from '../../core/entities/user.entity'; import { Fraccionamiento } from '../../construction/entities/fraccionamiento.entity'; import { EstimacionConcepto } from './estimacion-concepto.entity'; import { Amortizacion } from './amortizacion.entity'; import { Retencion } from './retencion.entity'; import { EstimacionWorkflow } from './estimacion-workflow.entity'; export type EstimateStatus = 'draft' | 'submitted' | 'reviewed' | 'approved' | 'invoiced' | 'paid' | 'rejected' | 'cancelled'; export declare class Estimacion { id: string; tenantId: string; contratoId: string; fraccionamientoId: string; estimateNumber: string; periodStart: Date; periodEnd: Date; sequenceNumber: number; status: EstimateStatus; subtotal: number; advanceAmount: number; retentionAmount: number; taxAmount: number; totalAmount: number; submittedAt: Date | null; submittedById: string | null; reviewedAt: Date | null; reviewedById: string | null; approvedAt: Date | null; approvedById: string | null; invoiceId: string | null; invoicedAt: Date | null; paidAt: Date | null; notes: string | null; createdAt: Date; createdById: string | null; updatedAt: Date | null; updatedById: string | null; deletedAt: Date | null; deletedById: string | null; tenant: Tenant; fraccionamiento: Fraccionamiento; submittedBy: User | null; reviewedBy: User | null; approvedBy: User | null; createdBy: User | null; conceptos: EstimacionConcepto[]; amortizaciones: Amortizacion[]; retenciones: Retencion[]; workflow: EstimacionWorkflow[]; } //# sourceMappingURL=estimacion.entity.d.ts.map