export interface EstadoResultados {
  periodo: { inicio: string; fin: string };
  ingresos: { concepto: string; monto: number }[];
  egresos: { concepto: string; monto: number }[];
  totalIngresos: number;
  totalEgresos: number;
  utilidadBruta: number;
  impuestos: number;
  utilidadNeta: number;
}

export interface FlujoEfectivo {
  periodo: { inicio: string; fin: string };
  saldoInicial: number;
  entradas: { concepto: string; monto: number }[];
  salidas: { concepto: string; monto: number }[];
  totalEntradas: number;
  totalSalidas: number;
  flujoNeto: number;
  saldoFinal: number;
}

export interface ComparativoPeriodos {
  periodos: string[];
  ingresos: number[];
  egresos: number[];
  utilidad: number[];
  variacionIngresos: number;
  variacionEgresos: number;
  variacionUtilidad: number;
}

export interface ConcentradoRfc {
  rfc: string;
  nombre: string;
  tipo: 'cliente' | 'proveedor';
  totalFacturado: number;
  totalIva: number;
  cantidadCfdis: number;
}

export interface EstadoResultadosDetallado {
  periodo: { inicio: string; fin: string };
  ventas: number;
  devoluciones: number;
  ventasNetas: number;
  costoVentas: number;
  utilidadBruta: number;
  gastosOperativos: number;
  utilidadOperacion: number;
  anterior: {
    ventas: number;
    devoluciones: number;
    ventasNetas: number;
    costoVentas: number;
    utilidadBruta: number;
    gastosOperativos: number;
    utilidadOperacion: number;
  };
}

export interface ReporteFilters {
  fechaInicio: string;
  fechaFin: string;
  tipo?: 'mensual' | 'trimestral' | 'anual';
}
