// DTO para el detalle de cada línea dentro de una factura (cada suscripción)
export interface FacturaDetalleDto {
    descripcion: string;
    importeNeto: number;
}

// DTO para cada factura individual (por empresa) dentro del resumen consolidado
export interface FacturaConsolidadaDto {
    idFactura: number;
    nombreEmpresa: string;
    importeFinal: number;
    estadoPago: string;
    estadoFacturacion: string;
    numeroFactura?: string | null;
    totalPagado: number;
    tipoFactura: 'Mensual' | 'Alta';
    detalles: FacturaDetalleDto[];
    // Añadimos el id del suscriptor para que sea fácil pasarlo a los handlers
    idSuscriptor: number; 
}

// DTO principal que agrupa todo por suscriptor para la vista de consulta
export interface ResumenCuentaSuscriptorDto {
    idSuscriptor: number;
    nombreSuscriptor: string;
    saldoPendienteTotal: number;
    importeTotal: number;
    facturas: FacturaConsolidadaDto[];
}