From 8dc1b8dee15c144780693333d4cbee8f046e608c Mon Sep 17 00:00:00 2001 From: Alejandro Rosales Date: Tue, 10 Mar 2026 14:35:44 -0600 Subject: [PATCH] fix: remove invisible character from Json type definition --- supabase/functions/_shared/database.types.ts | 1612 ++++++++++++++++++ 1 file changed, 1612 insertions(+) diff --git a/supabase/functions/_shared/database.types.ts b/supabase/functions/_shared/database.types.ts index a889116..2536c93 100644 --- a/supabase/functions/_shared/database.types.ts +++ b/supabase/functions/_shared/database.types.ts @@ -1610,3 +1610,1615 @@ export const Constants = { }, } as const +export type Json = + | string + | number + | boolean + | null + | { [key: string]: Json | undefined } + | Json[] + +export type Database = { + graphql_public: { + Tables: { + [_ in never]: never + } + Views: { + [_ in never]: never + } + Functions: { + graphql: { + Args: { + extensions?: Json + operationName?: string + query?: string + variables?: Json + } + Returns: Json + } + } + Enums: { + [_ in never]: never + } + CompositeTypes: { + [_ in never]: never + } + } + public: { + Tables: { + archivos: { + Row: { + bytes: number | null + id: string + mime_type: string | null + nombre: string + notas: string | null + openai_file_id: string | null + ruta_storage: string + subido_en: string + subido_por: string | null + temporal: boolean + } + Insert: { + bytes?: number | null + id?: string + mime_type?: string | null + nombre: string + notas?: string | null + openai_file_id?: string | null + ruta_storage: string + subido_en?: string + subido_por?: string | null + temporal?: boolean + } + Update: { + bytes?: number | null + id?: string + mime_type?: string | null + nombre?: string + notas?: string | null + openai_file_id?: string | null + ruta_storage?: string + subido_en?: string + subido_por?: string | null + temporal?: boolean + } + Relationships: [ + { + foreignKeyName: "archivos_subido_por_fkey" + columns: ["subido_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + asignatura_mensajes_ia: { + Row: { + campos: string[] + conversacion_asignatura_id: string + enviado_por: string + estado: Database["public"]["Enums"]["estado_mensaje_ia"] + fecha_actualizacion: string + fecha_creacion: string + id: string + is_refusal: boolean + mensaje: string + propuesta: Json | null + respuesta: string | null + } + Insert: { + campos?: string[] + conversacion_asignatura_id: string + enviado_por?: string + estado?: Database["public"]["Enums"]["estado_mensaje_ia"] + fecha_actualizacion?: string + fecha_creacion?: string + id?: string + is_refusal?: boolean + mensaje: string + propuesta?: Json | null + respuesta?: string | null + } + Update: { + campos?: string[] + conversacion_asignatura_id?: string + enviado_por?: string + estado?: Database["public"]["Enums"]["estado_mensaje_ia"] + fecha_actualizacion?: string + fecha_creacion?: string + id?: string + is_refusal?: boolean + mensaje?: string + propuesta?: Json | null + respuesta?: string | null + } + Relationships: [ + { + foreignKeyName: "asignatura_mensajes_ia_conversacion_asignatura_id_fkey" + columns: ["conversacion_asignatura_id"] + isOneToOne: false + referencedRelation: "conversaciones_asignatura" + referencedColumns: ["id"] + }, + ] + } + asignaturas: { + Row: { + actualizado_en: string + actualizado_por: string | null + asignatura_hash: string | null + codigo: string | null + contenido_tematico: Json + creado_en: string + creado_por: string | null + creditos: number + criterios_de_evaluacion: Json + datos: Json + estado: Database["public"]["Enums"]["estado_asignatura"] + estructura_id: string | null + horas_academicas: number | null + horas_independientes: number | null + id: string + linea_plan_id: string | null + meta_origen: Json + nombre: string + numero_ciclo: number | null + orden_celda: number | null + plan_estudio_id: string + tipo: Database["public"]["Enums"]["tipo_asignatura"] + tipo_origen: Database["public"]["Enums"]["tipo_origen"] | null + } + Insert: { + actualizado_en?: string + actualizado_por?: string | null + asignatura_hash?: string | null + codigo?: string | null + contenido_tematico?: Json + creado_en?: string + creado_por?: string | null + creditos: number + criterios_de_evaluacion?: Json + datos?: Json + estado?: Database["public"]["Enums"]["estado_asignatura"] + estructura_id?: string | null + horas_academicas?: number | null + horas_independientes?: number | null + id?: string + linea_plan_id?: string | null + meta_origen?: Json + nombre: string + numero_ciclo?: number | null + orden_celda?: number | null + plan_estudio_id: string + tipo?: Database["public"]["Enums"]["tipo_asignatura"] + tipo_origen?: Database["public"]["Enums"]["tipo_origen"] | null + } + Update: { + actualizado_en?: string + actualizado_por?: string | null + asignatura_hash?: string | null + codigo?: string | null + contenido_tematico?: Json + creado_en?: string + creado_por?: string | null + creditos?: number + criterios_de_evaluacion?: Json + datos?: Json + estado?: Database["public"]["Enums"]["estado_asignatura"] + estructura_id?: string | null + horas_academicas?: number | null + horas_independientes?: number | null + id?: string + linea_plan_id?: string | null + meta_origen?: Json + nombre?: string + numero_ciclo?: number | null + orden_celda?: number | null + plan_estudio_id?: string + tipo?: Database["public"]["Enums"]["tipo_asignatura"] + tipo_origen?: Database["public"]["Enums"]["tipo_origen"] | null + } + Relationships: [ + { + foreignKeyName: "asignaturas_actualizado_por_fkey" + columns: ["actualizado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + { + foreignKeyName: "asignaturas_creado_por_fkey" + columns: ["creado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + { + foreignKeyName: "asignaturas_estructura_id_fkey" + columns: ["estructura_id"] + isOneToOne: false + referencedRelation: "estructuras_asignatura" + referencedColumns: ["id"] + }, + { + foreignKeyName: "asignaturas_estructura_id_fkey" + columns: ["estructura_id"] + isOneToOne: false + referencedRelation: "plantilla_asignatura" + referencedColumns: ["estructura_id"] + }, + { + foreignKeyName: "asignaturas_linea_plan_fk_compuesta" + columns: ["linea_plan_id", "plan_estudio_id"] + isOneToOne: false + referencedRelation: "lineas_plan" + referencedColumns: ["id", "plan_estudio_id"] + }, + { + foreignKeyName: "asignaturas_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "planes_estudio" + referencedColumns: ["id"] + }, + { + foreignKeyName: "asignaturas_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "plantilla_plan" + referencedColumns: ["plan_estudio_id"] + }, + ] + } + bibliografia_asignatura: { + Row: { + actualizado_en: string + asignatura_id: string + biblioteca_item_id: string | null + cita: string + creado_en: string + creado_por: string | null + id: string + tipo: Database["public"]["Enums"]["tipo_bibliografia"] + tipo_fuente: Database["public"]["Enums"]["tipo_fuente_bibliografia"] + } + Insert: { + actualizado_en?: string + asignatura_id: string + biblioteca_item_id?: string | null + cita: string + creado_en?: string + creado_por?: string | null + id?: string + tipo: Database["public"]["Enums"]["tipo_bibliografia"] + tipo_fuente?: Database["public"]["Enums"]["tipo_fuente_bibliografia"] + } + Update: { + actualizado_en?: string + asignatura_id?: string + biblioteca_item_id?: string | null + cita?: string + creado_en?: string + creado_por?: string | null + id?: string + tipo?: Database["public"]["Enums"]["tipo_bibliografia"] + tipo_fuente?: Database["public"]["Enums"]["tipo_fuente_bibliografia"] + } + Relationships: [ + { + foreignKeyName: "bibliografia_asignatura_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "asignaturas" + referencedColumns: ["id"] + }, + { + foreignKeyName: "bibliografia_asignatura_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "plantilla_asignatura" + referencedColumns: ["asignatura_id"] + }, + { + foreignKeyName: "bibliografia_asignatura_creado_por_fkey" + columns: ["creado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + cambios_asignatura: { + Row: { + asignatura_id: string + cambiado_en: string + cambiado_por: string | null + campo: string | null + fuente: Database["public"]["Enums"]["fuente_cambio"] | null + id: string + interaccion_ia_id: string | null + tipo: Database["public"]["Enums"]["tipo_cambio"] + valor_anterior: Json | null + valor_nuevo: Json | null + } + Insert: { + asignatura_id: string + cambiado_en?: string + cambiado_por?: string | null + campo?: string | null + fuente?: Database["public"]["Enums"]["fuente_cambio"] | null + id?: string + interaccion_ia_id?: string | null + tipo: Database["public"]["Enums"]["tipo_cambio"] + valor_anterior?: Json | null + valor_nuevo?: Json | null + } + Update: { + asignatura_id?: string + cambiado_en?: string + cambiado_por?: string | null + campo?: string | null + fuente?: Database["public"]["Enums"]["fuente_cambio"] | null + id?: string + interaccion_ia_id?: string | null + tipo?: Database["public"]["Enums"]["tipo_cambio"] + valor_anterior?: Json | null + valor_nuevo?: Json | null + } + Relationships: [ + { + foreignKeyName: "cambios_asignatura_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "asignaturas" + referencedColumns: ["id"] + }, + { + foreignKeyName: "cambios_asignatura_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "plantilla_asignatura" + referencedColumns: ["asignatura_id"] + }, + { + foreignKeyName: "cambios_asignatura_cambiado_por_fkey" + columns: ["cambiado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + cambios_plan: { + Row: { + cambiado_en: string + cambiado_por: string | null + campo: string | null + id: string + plan_estudio_id: string + response_id: string | null + tipo: Database["public"]["Enums"]["tipo_cambio"] + valor_anterior: Json | null + valor_nuevo: Json | null + } + Insert: { + cambiado_en?: string + cambiado_por?: string | null + campo?: string | null + id?: string + plan_estudio_id: string + response_id?: string | null + tipo: Database["public"]["Enums"]["tipo_cambio"] + valor_anterior?: Json | null + valor_nuevo?: Json | null + } + Update: { + cambiado_en?: string + cambiado_por?: string | null + campo?: string | null + id?: string + plan_estudio_id?: string + response_id?: string | null + tipo?: Database["public"]["Enums"]["tipo_cambio"] + valor_anterior?: Json | null + valor_nuevo?: Json | null + } + Relationships: [ + { + foreignKeyName: "cambios_plan_cambiado_por_fkey" + columns: ["cambiado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + carreras: { + Row: { + activa: boolean + actualizado_en: string + clave_sep: string | null + creado_en: string + facultad_id: string + id: string + nombre: string + nombre_corto: string | null + } + Insert: { + activa?: boolean + actualizado_en?: string + clave_sep?: string | null + creado_en?: string + facultad_id: string + id?: string + nombre: string + nombre_corto?: string | null + } + Update: { + activa?: boolean + actualizado_en?: string + clave_sep?: string | null + creado_en?: string + facultad_id?: string + id?: string + nombre?: string + nombre_corto?: string | null + } + Relationships: [ + { + foreignKeyName: "carreras_facultad_id_fkey" + columns: ["facultad_id"] + isOneToOne: false + referencedRelation: "facultades" + referencedColumns: ["id"] + }, + ] + } + conversaciones_asignatura: { + Row: { + archivado_en: string | null + archivado_por: string | null + asignatura_id: string + conversacion_json: Json + creado_en: string + creado_por: string | null + estado: Database["public"]["Enums"]["estado_conversacion"] + id: string + intento_archivado: number + openai_conversation_id: string + } + Insert: { + archivado_en?: string | null + archivado_por?: string | null + asignatura_id: string + conversacion_json?: Json + creado_en?: string + creado_por?: string | null + estado?: Database["public"]["Enums"]["estado_conversacion"] + id?: string + intento_archivado?: number + openai_conversation_id: string + } + Update: { + archivado_en?: string | null + archivado_por?: string | null + asignatura_id?: string + conversacion_json?: Json + creado_en?: string + creado_por?: string | null + estado?: Database["public"]["Enums"]["estado_conversacion"] + id?: string + intento_archivado?: number + openai_conversation_id?: string + } + Relationships: [ + { + foreignKeyName: "conversaciones_asignatura_archivado_por_fkey" + columns: ["archivado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + { + foreignKeyName: "conversaciones_asignatura_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "asignaturas" + referencedColumns: ["id"] + }, + { + foreignKeyName: "conversaciones_asignatura_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "plantilla_asignatura" + referencedColumns: ["asignatura_id"] + }, + { + foreignKeyName: "conversaciones_asignatura_creado_por_fkey" + columns: ["creado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + conversaciones_plan: { + Row: { + archivado_en: string | null + archivado_por: string | null + conversacion_json: Json + creado_en: string + creado_por: string | null + estado: Database["public"]["Enums"]["estado_conversacion"] + id: string + intento_archivado: number + nombre: string | null + openai_conversation_id: string + plan_estudio_id: string + } + Insert: { + archivado_en?: string | null + archivado_por?: string | null + conversacion_json?: Json + creado_en?: string + creado_por?: string | null + estado?: Database["public"]["Enums"]["estado_conversacion"] + id?: string + intento_archivado?: number + nombre?: string | null + openai_conversation_id: string + plan_estudio_id: string + } + Update: { + archivado_en?: string | null + archivado_por?: string | null + conversacion_json?: Json + creado_en?: string + creado_por?: string | null + estado?: Database["public"]["Enums"]["estado_conversacion"] + id?: string + intento_archivado?: number + nombre?: string | null + openai_conversation_id?: string + plan_estudio_id?: string + } + Relationships: [ + { + foreignKeyName: "conversaciones_plan_archivado_por_fkey" + columns: ["archivado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + { + foreignKeyName: "conversaciones_plan_creado_por_fkey" + columns: ["creado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + { + foreignKeyName: "conversaciones_plan_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "planes_estudio" + referencedColumns: ["id"] + }, + { + foreignKeyName: "conversaciones_plan_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "plantilla_plan" + referencedColumns: ["plan_estudio_id"] + }, + ] + } + estados_plan: { + Row: { + clave: string + es_final: boolean + etiqueta: string + id: string + orden: number + } + Insert: { + clave: string + es_final?: boolean + etiqueta: string + id?: string + orden?: number + } + Update: { + clave?: string + es_final?: boolean + etiqueta?: string + id?: string + orden?: number + } + Relationships: [] + } + estructuras_asignatura: { + Row: { + actualizado_en: string + creado_en: string + definicion: Json + id: string + nombre: string + template_id: string | null + tipo: Database["public"]["Enums"]["tipo_estructura_plan"] | null + } + Insert: { + actualizado_en?: string + creado_en?: string + definicion?: Json + id?: string + nombre: string + template_id?: string | null + tipo?: Database["public"]["Enums"]["tipo_estructura_plan"] | null + } + Update: { + actualizado_en?: string + creado_en?: string + definicion?: Json + id?: string + nombre?: string + template_id?: string | null + tipo?: Database["public"]["Enums"]["tipo_estructura_plan"] | null + } + Relationships: [] + } + estructuras_plan: { + Row: { + actualizado_en: string + creado_en: string + definicion: Json + id: string + nombre: string + template_id: string | null + tipo: Database["public"]["Enums"]["tipo_estructura_plan"] + } + Insert: { + actualizado_en?: string + creado_en?: string + definicion?: Json + id?: string + nombre: string + template_id?: string | null + tipo: Database["public"]["Enums"]["tipo_estructura_plan"] + } + Update: { + actualizado_en?: string + creado_en?: string + definicion?: Json + id?: string + nombre?: string + template_id?: string | null + tipo?: Database["public"]["Enums"]["tipo_estructura_plan"] + } + Relationships: [] + } + facultades: { + Row: { + actualizado_en: string + color: string | null + creado_en: string + icono: string | null + id: string + nombre: string + nombre_corto: string | null + } + Insert: { + actualizado_en?: string + color?: string | null + creado_en?: string + icono?: string | null + id?: string + nombre: string + nombre_corto?: string | null + } + Update: { + actualizado_en?: string + color?: string | null + creado_en?: string + icono?: string | null + id?: string + nombre?: string + nombre_corto?: string | null + } + Relationships: [] + } + interacciones_ia: { + Row: { + aceptada: boolean + asignatura_id: string | null + conversacion_id: string | null + creado_en: string + id: string + ids_archivos: Json + ids_vector_store: Json + modelo: string | null + plan_estudio_id: string | null + prompt: Json + respuesta: Json + rutas_storage: Json + temperatura: number | null + tipo: Database["public"]["Enums"]["tipo_interaccion_ia"] + usuario_id: string | null + } + Insert: { + aceptada?: boolean + asignatura_id?: string | null + conversacion_id?: string | null + creado_en?: string + id?: string + ids_archivos?: Json + ids_vector_store?: Json + modelo?: string | null + plan_estudio_id?: string | null + prompt?: Json + respuesta?: Json + rutas_storage?: Json + temperatura?: number | null + tipo: Database["public"]["Enums"]["tipo_interaccion_ia"] + usuario_id?: string | null + } + Update: { + aceptada?: boolean + asignatura_id?: string | null + conversacion_id?: string | null + creado_en?: string + id?: string + ids_archivos?: Json + ids_vector_store?: Json + modelo?: string | null + plan_estudio_id?: string | null + prompt?: Json + respuesta?: Json + rutas_storage?: Json + temperatura?: number | null + tipo?: Database["public"]["Enums"]["tipo_interaccion_ia"] + usuario_id?: string | null + } + Relationships: [ + { + foreignKeyName: "interacciones_ia_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "asignaturas" + referencedColumns: ["id"] + }, + { + foreignKeyName: "interacciones_ia_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "plantilla_asignatura" + referencedColumns: ["asignatura_id"] + }, + { + foreignKeyName: "interacciones_ia_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "planes_estudio" + referencedColumns: ["id"] + }, + { + foreignKeyName: "interacciones_ia_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "plantilla_plan" + referencedColumns: ["plan_estudio_id"] + }, + { + foreignKeyName: "interacciones_ia_usuario_id_fkey" + columns: ["usuario_id"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + lineas_plan: { + Row: { + actualizado_en: string + area: string | null + creado_en: string + id: string + nombre: string + orden: number + plan_estudio_id: string + } + Insert: { + actualizado_en?: string + area?: string | null + creado_en?: string + id?: string + nombre: string + orden?: number + plan_estudio_id: string + } + Update: { + actualizado_en?: string + area?: string | null + creado_en?: string + id?: string + nombre?: string + orden?: number + plan_estudio_id?: string + } + Relationships: [ + { + foreignKeyName: "lineas_plan_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "planes_estudio" + referencedColumns: ["id"] + }, + { + foreignKeyName: "lineas_plan_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "plantilla_plan" + referencedColumns: ["plan_estudio_id"] + }, + ] + } + notificaciones: { + Row: { + creado_en: string + id: string + leida: boolean + leida_en: string | null + payload: Json + tipo: Database["public"]["Enums"]["tipo_notificacion"] + usuario_id: string + } + Insert: { + creado_en?: string + id?: string + leida?: boolean + leida_en?: string | null + payload?: Json + tipo: Database["public"]["Enums"]["tipo_notificacion"] + usuario_id: string + } + Update: { + creado_en?: string + id?: string + leida?: boolean + leida_en?: string | null + payload?: Json + tipo?: Database["public"]["Enums"]["tipo_notificacion"] + usuario_id?: string + } + Relationships: [ + { + foreignKeyName: "notificaciones_usuario_id_fkey" + columns: ["usuario_id"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + plan_mensajes_ia: { + Row: { + campos: string[] + conversacion_plan_id: string + enviado_por: string + estado: Database["public"]["Enums"]["estado_mensaje_ia"] + fecha_actualizacion: string + fecha_creacion: string + id: string + is_refusal: boolean + mensaje: string + propuesta: Json | null + respuesta: string | null + } + Insert: { + campos?: string[] + conversacion_plan_id: string + enviado_por?: string + estado?: Database["public"]["Enums"]["estado_mensaje_ia"] + fecha_actualizacion?: string + fecha_creacion?: string + id?: string + is_refusal?: boolean + mensaje: string + propuesta?: Json | null + respuesta?: string | null + } + Update: { + campos?: string[] + conversacion_plan_id?: string + enviado_por?: string + estado?: Database["public"]["Enums"]["estado_mensaje_ia"] + fecha_actualizacion?: string + fecha_creacion?: string + id?: string + is_refusal?: boolean + mensaje?: string + propuesta?: Json | null + respuesta?: string | null + } + Relationships: [ + { + foreignKeyName: "plan_mensajes_ia_conversacion_plan_id_fkey" + columns: ["conversacion_plan_id"] + isOneToOne: false + referencedRelation: "conversaciones_plan" + referencedColumns: ["id"] + }, + ] + } + planes_estudio: { + Row: { + activo: boolean + actualizado_en: string + actualizado_por: string | null + carrera_id: string + creado_en: string + creado_por: string | null + datos: Json + estado_actual_id: string | null + estructura_id: string + id: string + meta_origen: Json + nivel: Database["public"]["Enums"]["nivel_plan_estudio"] + nombre: string + nombre_search: string | null + numero_ciclos: number + plan_hash: string | null + tipo_ciclo: Database["public"]["Enums"]["tipo_ciclo"] + tipo_origen: Database["public"]["Enums"]["tipo_origen"] | null + } + Insert: { + activo?: boolean + actualizado_en?: string + actualizado_por?: string | null + carrera_id: string + creado_en?: string + creado_por?: string | null + datos?: Json + estado_actual_id?: string | null + estructura_id: string + id?: string + meta_origen?: Json + nivel: Database["public"]["Enums"]["nivel_plan_estudio"] + nombre: string + nombre_search?: string | null + numero_ciclos: number + plan_hash?: string | null + tipo_ciclo: Database["public"]["Enums"]["tipo_ciclo"] + tipo_origen?: Database["public"]["Enums"]["tipo_origen"] | null + } + Update: { + activo?: boolean + actualizado_en?: string + actualizado_por?: string | null + carrera_id?: string + creado_en?: string + creado_por?: string | null + datos?: Json + estado_actual_id?: string | null + estructura_id?: string + id?: string + meta_origen?: Json + nivel?: Database["public"]["Enums"]["nivel_plan_estudio"] + nombre?: string + nombre_search?: string | null + numero_ciclos?: number + plan_hash?: string | null + tipo_ciclo?: Database["public"]["Enums"]["tipo_ciclo"] + tipo_origen?: Database["public"]["Enums"]["tipo_origen"] | null + } + Relationships: [ + { + foreignKeyName: "planes_estudio_actualizado_por_fkey" + columns: ["actualizado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + { + foreignKeyName: "planes_estudio_carrera_id_fkey" + columns: ["carrera_id"] + isOneToOne: false + referencedRelation: "carreras" + referencedColumns: ["id"] + }, + { + foreignKeyName: "planes_estudio_creado_por_fkey" + columns: ["creado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + { + foreignKeyName: "planes_estudio_estado_actual_id_fkey" + columns: ["estado_actual_id"] + isOneToOne: false + referencedRelation: "estados_plan" + referencedColumns: ["id"] + }, + { + foreignKeyName: "planes_estudio_estructura_id_fkey" + columns: ["estructura_id"] + isOneToOne: false + referencedRelation: "estructuras_plan" + referencedColumns: ["id"] + }, + { + foreignKeyName: "planes_estudio_estructura_id_fkey" + columns: ["estructura_id"] + isOneToOne: false + referencedRelation: "plantilla_plan" + referencedColumns: ["estructura_id"] + }, + ] + } + responsables_asignatura: { + Row: { + asignatura_id: string + creado_en: string + id: string + rol: Database["public"]["Enums"]["rol_responsable_asignatura"] + usuario_id: string + } + Insert: { + asignatura_id: string + creado_en?: string + id?: string + rol?: Database["public"]["Enums"]["rol_responsable_asignatura"] + usuario_id: string + } + Update: { + asignatura_id?: string + creado_en?: string + id?: string + rol?: Database["public"]["Enums"]["rol_responsable_asignatura"] + usuario_id?: string + } + Relationships: [ + { + foreignKeyName: "responsables_asignatura_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "asignaturas" + referencedColumns: ["id"] + }, + { + foreignKeyName: "responsables_asignatura_asignatura_id_fkey" + columns: ["asignatura_id"] + isOneToOne: false + referencedRelation: "plantilla_asignatura" + referencedColumns: ["asignatura_id"] + }, + { + foreignKeyName: "responsables_asignatura_usuario_id_fkey" + columns: ["usuario_id"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + roles: { + Row: { + clave: string + descripcion: string | null + id: string + nombre: string + } + Insert: { + clave: string + descripcion?: string | null + id?: string + nombre: string + } + Update: { + clave?: string + descripcion?: string | null + id?: string + nombre?: string + } + Relationships: [] + } + tareas_revision: { + Row: { + asignado_a: string + completado_en: string | null + creado_en: string + estado_id: string | null + estatus: Database["public"]["Enums"]["estado_tarea_revision"] + fecha_limite: string | null + id: string + plan_estudio_id: string + rol_id: string | null + } + Insert: { + asignado_a: string + completado_en?: string | null + creado_en?: string + estado_id?: string | null + estatus?: Database["public"]["Enums"]["estado_tarea_revision"] + fecha_limite?: string | null + id?: string + plan_estudio_id: string + rol_id?: string | null + } + Update: { + asignado_a?: string + completado_en?: string | null + creado_en?: string + estado_id?: string | null + estatus?: Database["public"]["Enums"]["estado_tarea_revision"] + fecha_limite?: string | null + id?: string + plan_estudio_id?: string + rol_id?: string | null + } + Relationships: [ + { + foreignKeyName: "tareas_revision_asignado_a_fkey" + columns: ["asignado_a"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + { + foreignKeyName: "tareas_revision_estado_id_fkey" + columns: ["estado_id"] + isOneToOne: false + referencedRelation: "estados_plan" + referencedColumns: ["id"] + }, + { + foreignKeyName: "tareas_revision_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "planes_estudio" + referencedColumns: ["id"] + }, + { + foreignKeyName: "tareas_revision_plan_estudio_id_fkey" + columns: ["plan_estudio_id"] + isOneToOne: false + referencedRelation: "plantilla_plan" + referencedColumns: ["plan_estudio_id"] + }, + { + foreignKeyName: "tareas_revision_rol_id_fkey" + columns: ["rol_id"] + isOneToOne: false + referencedRelation: "roles" + referencedColumns: ["id"] + }, + ] + } + transiciones_estado_plan: { + Row: { + creado_en: string + desde_estado_id: string + hacia_estado_id: string + id: string + rol_permitido_id: string + } + Insert: { + creado_en?: string + desde_estado_id: string + hacia_estado_id: string + id?: string + rol_permitido_id: string + } + Update: { + creado_en?: string + desde_estado_id?: string + hacia_estado_id?: string + id?: string + rol_permitido_id?: string + } + Relationships: [ + { + foreignKeyName: "transiciones_estado_plan_desde_estado_id_fkey" + columns: ["desde_estado_id"] + isOneToOne: false + referencedRelation: "estados_plan" + referencedColumns: ["id"] + }, + { + foreignKeyName: "transiciones_estado_plan_hacia_estado_id_fkey" + columns: ["hacia_estado_id"] + isOneToOne: false + referencedRelation: "estados_plan" + referencedColumns: ["id"] + }, + { + foreignKeyName: "transiciones_estado_plan_rol_permitido_id_fkey" + columns: ["rol_permitido_id"] + isOneToOne: false + referencedRelation: "roles" + referencedColumns: ["id"] + }, + ] + } + usuarios_app: { + Row: { + actualizado_en: string + creado_en: string + email: string | null + externo: boolean + id: string + nombre_completo: string | null + } + Insert: { + actualizado_en?: string + creado_en?: string + email?: string | null + externo?: boolean + id: string + nombre_completo?: string | null + } + Update: { + actualizado_en?: string + creado_en?: string + email?: string | null + externo?: boolean + id?: string + nombre_completo?: string | null + } + Relationships: [] + } + usuarios_roles: { + Row: { + carrera_id: string | null + creado_en: string + facultad_id: string | null + id: string + rol_id: string + usuario_id: string + } + Insert: { + carrera_id?: string | null + creado_en?: string + facultad_id?: string | null + id?: string + rol_id: string + usuario_id: string + } + Update: { + carrera_id?: string | null + creado_en?: string + facultad_id?: string | null + id?: string + rol_id?: string + usuario_id?: string + } + Relationships: [ + { + foreignKeyName: "usuarios_roles_carrera_id_fkey" + columns: ["carrera_id"] + isOneToOne: false + referencedRelation: "carreras" + referencedColumns: ["id"] + }, + { + foreignKeyName: "usuarios_roles_facultad_id_fkey" + columns: ["facultad_id"] + isOneToOne: false + referencedRelation: "facultades" + referencedColumns: ["id"] + }, + { + foreignKeyName: "usuarios_roles_rol_id_fkey" + columns: ["rol_id"] + isOneToOne: false + referencedRelation: "roles" + referencedColumns: ["id"] + }, + { + foreignKeyName: "usuarios_roles_usuario_id_fkey" + columns: ["usuario_id"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + vector_stores: { + Row: { + creado_en: string + creado_por: string | null + id: string + nombre: string + openai_vector_id: string | null + } + Insert: { + creado_en?: string + creado_por?: string | null + id?: string + nombre: string + openai_vector_id?: string | null + } + Update: { + creado_en?: string + creado_por?: string | null + id?: string + nombre?: string + openai_vector_id?: string | null + } + Relationships: [ + { + foreignKeyName: "vector_stores_creado_por_fkey" + columns: ["creado_por"] + isOneToOne: false + referencedRelation: "usuarios_app" + referencedColumns: ["id"] + }, + ] + } + } + Views: { + plantilla_asignatura: { + Row: { + asignatura_id: string | null + estructura_id: string | null + template_id: string | null + } + Relationships: [] + } + plantilla_plan: { + Row: { + estructura_id: string | null + plan_estudio_id: string | null + template_id: string | null + } + Relationships: [] + } + } + Functions: { + append_conversacion_asignatura: { + Args: { p_append: Json; p_id: string } + Returns: undefined + } + append_conversacion_plan: { + Args: { p_append: Json; p_id: string } + Returns: undefined + } + unaccent: { Args: { "": string }; Returns: string } + unaccent_immutable: { Args: { "": string }; Returns: string } + } + Enums: { + estado_asignatura: "borrador" | "revisada" | "aprobada" | "generando" + estado_conversacion: "ACTIVA" | "ARCHIVANDO" | "ARCHIVADA" | "ERROR" + estado_mensaje_ia: "PROCESANDO" | "COMPLETADO" | "ERROR" + estado_tarea_revision: "PENDIENTE" | "COMPLETADA" | "OMITIDA" + fuente_cambio: "HUMANO" | "IA" + nivel_plan_estudio: + | "Licenciatura" + | "Maestría" + | "Doctorado" + | "Especialidad" + | "Diplomado" + | "Otro" + puesto_tipo: + | "vicerrector" + | "director_facultad" + | "secretario_academico" + | "jefe_carrera" + | "profesor" + | "lci" + rol_responsable_asignatura: "PROFESOR_RESPONSABLE" | "COAUTOR" | "REVISOR" + tipo_asignatura: "OBLIGATORIA" | "OPTATIVA" | "TRONCAL" | "OTRA" + tipo_bibliografia: "BASICA" | "COMPLEMENTARIA" + tipo_cambio: + | "ACTUALIZACION_CAMPO" + | "ACTUALIZACION_MAPA" + | "TRANSICION_ESTADO" + | "OTRO" + | "CREACION" + | "ACTUALIZACION" + tipo_ciclo: "Semestre" | "Cuatrimestre" | "Trimestre" | "Otro" + tipo_estructura_plan: "CURRICULAR" | "NO_CURRICULAR" + tipo_fuente_bibliografia: "MANUAL" | "BIBLIOTECA" + tipo_interaccion_ia: "GENERAR" | "MEJORAR_SECCION" | "CHAT" | "OTRA" + tipo_notificacion: + | "PLAN_ASIGNADO" + | "ESTADO_CAMBIADO" + | "TAREA_ASIGNADA" + | "COMENTARIO" + | "OTRA" + tipo_origen: + | "MANUAL" + | "IA" + | "CLONADO_INTERNO" + | "CLONADO_TRADICIONAL" + | "OTRO" + } + CompositeTypes: { + [_ in never]: never + } + } +} + +type DatabaseWithoutInternals = Omit + +type DefaultSchema = DatabaseWithoutInternals[Extract] + +export type Tables< + DefaultSchemaTableNameOrOptions extends + | keyof (DefaultSchema["Tables"] & DefaultSchema["Views"]) + | { schema: keyof DatabaseWithoutInternals }, + TableName extends DefaultSchemaTableNameOrOptions extends { + schema: keyof DatabaseWithoutInternals + } + ? keyof (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] & + DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"]) + : never = never, +> = DefaultSchemaTableNameOrOptions extends { + schema: keyof DatabaseWithoutInternals +} + ? (DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] & + DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Views"])[TableName] extends { + Row: infer R + } + ? R + : never + : DefaultSchemaTableNameOrOptions extends keyof (DefaultSchema["Tables"] & + DefaultSchema["Views"]) + ? (DefaultSchema["Tables"] & + DefaultSchema["Views"])[DefaultSchemaTableNameOrOptions] extends { + Row: infer R + } + ? R + : never + : never + +export type TablesInsert< + DefaultSchemaTableNameOrOptions extends + | keyof DefaultSchema["Tables"] + | { schema: keyof DatabaseWithoutInternals }, + TableName extends DefaultSchemaTableNameOrOptions extends { + schema: keyof DatabaseWithoutInternals + } + ? keyof DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] + : never = never, +> = DefaultSchemaTableNameOrOptions extends { + schema: keyof DatabaseWithoutInternals +} + ? DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends { + Insert: infer I + } + ? I + : never + : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"] + ? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends { + Insert: infer I + } + ? I + : never + : never + +export type TablesUpdate< + DefaultSchemaTableNameOrOptions extends + | keyof DefaultSchema["Tables"] + | { schema: keyof DatabaseWithoutInternals }, + TableName extends DefaultSchemaTableNameOrOptions extends { + schema: keyof DatabaseWithoutInternals + } + ? keyof DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"] + : never = never, +> = DefaultSchemaTableNameOrOptions extends { + schema: keyof DatabaseWithoutInternals +} + ? DatabaseWithoutInternals[DefaultSchemaTableNameOrOptions["schema"]]["Tables"][TableName] extends { + Update: infer U + } + ? U + : never + : DefaultSchemaTableNameOrOptions extends keyof DefaultSchema["Tables"] + ? DefaultSchema["Tables"][DefaultSchemaTableNameOrOptions] extends { + Update: infer U + } + ? U + : never + : never + +export type Enums< + DefaultSchemaEnumNameOrOptions extends + | keyof DefaultSchema["Enums"] + | { schema: keyof DatabaseWithoutInternals }, + EnumName extends DefaultSchemaEnumNameOrOptions extends { + schema: keyof DatabaseWithoutInternals + } + ? keyof DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"] + : never = never, +> = DefaultSchemaEnumNameOrOptions extends { + schema: keyof DatabaseWithoutInternals +} + ? DatabaseWithoutInternals[DefaultSchemaEnumNameOrOptions["schema"]]["Enums"][EnumName] + : DefaultSchemaEnumNameOrOptions extends keyof DefaultSchema["Enums"] + ? DefaultSchema["Enums"][DefaultSchemaEnumNameOrOptions] + : never + +export type CompositeTypes< + PublicCompositeTypeNameOrOptions extends + | keyof DefaultSchema["CompositeTypes"] + | { schema: keyof DatabaseWithoutInternals }, + CompositeTypeName extends PublicCompositeTypeNameOrOptions extends { + schema: keyof DatabaseWithoutInternals + } + ? keyof DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"] + : never = never, +> = PublicCompositeTypeNameOrOptions extends { + schema: keyof DatabaseWithoutInternals +} + ? DatabaseWithoutInternals[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName] + : PublicCompositeTypeNameOrOptions extends keyof DefaultSchema["CompositeTypes"] + ? DefaultSchema["CompositeTypes"][PublicCompositeTypeNameOrOptions] + : never + +export const Constants = { + graphql_public: { + Enums: {}, + }, + public: { + Enums: { + estado_asignatura: ["borrador", "revisada", "aprobada", "generando"], + estado_conversacion: ["ACTIVA", "ARCHIVANDO", "ARCHIVADA", "ERROR"], + estado_mensaje_ia: ["PROCESANDO", "COMPLETADO", "ERROR"], + estado_tarea_revision: ["PENDIENTE", "COMPLETADA", "OMITIDA"], + fuente_cambio: ["HUMANO", "IA"], + nivel_plan_estudio: [ + "Licenciatura", + "Maestría", + "Doctorado", + "Especialidad", + "Diplomado", + "Otro", + ], + puesto_tipo: [ + "vicerrector", + "director_facultad", + "secretario_academico", + "jefe_carrera", + "profesor", + "lci", + ], + rol_responsable_asignatura: [ + "PROFESOR_RESPONSABLE", + "COAUTOR", + "REVISOR", + ], + tipo_asignatura: ["OBLIGATORIA", "OPTATIVA", "TRONCAL", "OTRA"], + tipo_bibliografia: ["BASICA", "COMPLEMENTARIA"], + tipo_cambio: [ + "ACTUALIZACION_CAMPO", + "ACTUALIZACION_MAPA", + "TRANSICION_ESTADO", + "OTRO", + "CREACION", + "ACTUALIZACION", + ], + tipo_ciclo: ["Semestre", "Cuatrimestre", "Trimestre", "Otro"], + tipo_estructura_plan: ["CURRICULAR", "NO_CURRICULAR"], + tipo_fuente_bibliografia: ["MANUAL", "BIBLIOTECA"], + tipo_interaccion_ia: ["GENERAR", "MEJORAR_SECCION", "CHAT", "OTRA"], + tipo_notificacion: [ + "PLAN_ASIGNADO", + "ESTADO_CAMBIADO", + "TAREA_ASIGNADA", + "COMENTARIO", + "OTRA", + ], + tipo_origen: [ + "MANUAL", + "IA", + "CLONADO_INTERNO", + "CLONADO_TRADICIONAL", + "OTRO", + ], + }, + }, +} as const +