/**
 * Metabase Query Names Configuration
 *
 * Centraliza los nombres de las queries de Metabase para facilitar mantenimiento.
 * Los nombres deben coincidir EXACTAMENTE con los nombres en Metabase.
 */

export const METABASE_QUERIES = {
  /**
   * Queries para Panorama Facturador
   */
  panorama: {
    totales_financieros_principales: 'panorama_totales_financieros_principales',
    totales_ingreso_compra: 'panorama_totales_ingreso_compra',
    totales_monetarios: 'panorama_totales_monetarios',
    totales_verde: 'panorama_totales_verde',
    secos_vendidos: 'panorama_secos_vendidos',
    rechazos_subproductos: 'panorama_rechazos_subproductos',
    serie_temporal_diaria: 'panorama_serie_temporal_diaria',
    top_clientes: 'panorama_top_clientes',
    conteo_registros: 'panorama_conteo_registros'
  },

  /**
   * Queries para Informe de Ingresos
   */
  informe: {
    totales_ingreso_compra: 'Informe Ingresos - Totales Ingreso y Compra',
    totales_monetarios: 'Informe Ingresos - Totales Monetarios',
    totales_verde: 'Informe Ingresos - Totales Verde',
    lista_ingresos: 'Informe Ingresos - Lista de Ingresos',
    lista_clientes: 'Informe Ingresos - Lista de Clientes con Totales',
    serie_temporal: 'Informe Ingresos - Serie Temporal Acumulada',
    opciones_filtros: 'Informe Ingresos - Opciones de Filtros',
    contadores: 'Informe Ingresos - Contadores de Filtros'
  },

  /**
   * Queries para Comparativa de Cosechas
   */
  comparativa: {
    datos_diarios_completos: 'comparativa_datos_diarios_completos',
    totales_por_cosecha: 'comparativa_totales_por_cosecha',
    datos_acumulados_por_dia: 'comparativa_datos_acumulados_por_dia',
    metadata_cosechas: 'comparativa_metadata_cosechas'
  }
} as const

/**
 * Type helper para acceder a las queries de forma type-safe
 */
export type MetabaseQueryCategory = keyof typeof METABASE_QUERIES
export type PanoramaQueryKey = keyof typeof METABASE_QUERIES.panorama
export type InformeQueryKey = keyof typeof METABASE_QUERIES.informe
export type ComparativaQueryKey = keyof typeof METABASE_QUERIES.comparativa
