import { GamaPropControlCode } from "../props";
import { GamaRaw } from "../raw_entities";
import { Id, JsonObject } from "../shared";
export interface LandingRaw {
    ID_LANDING: Id;
    PARAMS: LandingParams;
    GAMA?: GamaRaw[];
    TITULO: string;
    URL: string;
    TITULO_FORMULARIO: string;
    ESTADO: number;
    FECHA_UPD: string;
    CUESTIONARIOS: CuestionarioRaw[];
    ESTILOS: LandingStylesRaw[];
    METADATA?: Partial<LandingMetadata> | null;
    PAGINAS?: LandingPageRaw[];
    MAILS: MailRaw[];
}
export interface LandingParams {
    logo: string;
    logoMobile: string;
    formTitle: string;
    requestButton?: {
        text: string;
        link: string;
        color: string;
    };
    footerText: string;
    headerLinks: LandingHeaderLink[];
    description: string;
    showAccountButton: boolean;
    contact: {
        phone: string;
        whatsapp: string;
        email: string;
        address: string;
    };
    showContactFab: boolean;
}
export interface LandingHeaderLink {
    text: string;
    link: string;
    section?: string;
    external?: boolean;
}
export interface LandingMetadata {
    perfil_al_procesar: Id;
    gama_al_procesar: Id;
    repetir_email: boolean;
    repetir_identificacion: boolean;
    ruta_redireccion_envio_formulario: string;
    mensaje_exito_envio_formulario: {
        title: string;
        body: string;
    };
}
export interface LandingStylesRaw {
    ID_LANDING: Id;
    ID_LANDING_STYLE: Id;
    CONTENIDO: object;
    NOMBRE: string;
    DESCRIPCION: string;
    FECHA_UPD: string;
    ESTADO: number;
}
export interface CuestionarioRaw {
    ID_CUESTIONARIO: Id;
    ID_LANDING: Id;
    ID_GAMA?: Id;
    NOMBRE: string;
    ORDEN: number;
    FORMATO: "slider" | "grilla";
    DESCRIPCION: string;
    ESTADO: number;
    FECHA_CREADO: string;
    FECHA_UPD: string;
    PREGUNTAS: CuestionarioPreguntaRaw[];
    CLAVE: string;
}
export interface CuestionarioPreguntaRaw {
    ID_CUESTIONARIO_PREGUNTA: Id;
    ID_CUESTIONARIO: Id;
    NOMBRE: string;
    CLAVE: string;
    RESPUESTAS?: {
        label: string;
        value: string;
        image?: string;
    }[];
    VALIDACIONES?: {
        validator: string;
        param?: string;
    }[];
    TIPO: GamaPropControlCode;
    ESTADO: number;
    GRUPO: number;
    TITULO_GRUPO: string;
    FILA?: number;
    COLUMNA?: number;
    MULTIPLE?: boolean;
    PREFIJO: string | null;
    SUFIJO: string | null;
    STRUCTURE?: object | null;
    CONDITIONS?: any[] | null;
    LENGTH?: {
        default: number;
        controlId: number | null;
    } | null;
    PARAMS?: object | null;
    CLASS: string | null;
}
export interface CuestionarioRespuestaRaw {
    ID_CUESTIONARIO_PREGUNTA: Id;
    RESPUESTA: string;
}
export interface LandingPageRaw {
    ID_LANDING_PAGES: Id;
    ID_LANDING: Id;
    TIPO: string;
    RUTA: string;
    TITULO: string;
    NAVEGACION: number;
    BUTTON: JsonObject | null;
    ESTADO: number;
    CUSTOM_CONFIG: JsonObject;
    FECHA_UPD: Date | string;
    SECCIONES: LandingSectionRaw[];
}
export interface LandingSectionRaw {
    ID_LANDING_SECTIONS: Id;
    ID_LANDING: Id;
    ID_LANDING_PAGES: Id;
    PARAMS: JsonObject;
    POSICION: number;
    TEMPLATE: string;
    ESTADO: number;
    FECHA_UPD: Date;
}
export interface MailRaw {
    ID_MAIL: Id;
    ID_LANDING: Id;
    COD_EMP_MVX: number;
    TITULO: string;
    ASUNTO: string;
    EMAIL: string;
    CODIGO: string;
    PARAMS_REQUERIDOS: string;
}
