import { z } from 'zod';

declare const JetimobImovelSchema: z.ZodObject<{
    codigo: z.ZodString;
    titulo_anuncio: z.ZodOptional<z.ZodString>;
    descricao_anuncio: z.ZodOptional<z.ZodString>;
    observacoes: z.ZodOptional<z.ZodString>;
    meta_title: z.ZodOptional<z.ZodString>;
    meta_description: z.ZodOptional<z.ZodString>;
    data_cadastro: z.ZodOptional<z.ZodString>;
    data_update: z.ZodOptional<z.ZodString>;
    data_atualizacao: z.ZodOptional<z.ZodString>;
    updated_at: z.ZodOptional<z.ZodString>;
    medida: z.ZodOptional<z.ZodString>;
    contrato: z.ZodOptional<z.ZodString>;
    tipo: z.ZodOptional<z.ZodString>;
    subtipo: z.ZodOptional<z.ZodString>;
    tags: z.ZodOptional<z.ZodString>;
    imovel_comodidades: z.ZodOptional<z.ZodString>;
    dormitorios: z.ZodOptional<z.ZodString>;
    suites: z.ZodOptional<z.ZodString>;
    banheiros: z.ZodOptional<z.ZodString>;
    garagens: z.ZodOptional<z.ZodString>;
    area_total: z.ZodOptional<z.ZodString>;
    area_privativa: z.ZodOptional<z.ZodString>;
    area_util: z.ZodOptional<z.ZodString>;
    status: z.ZodOptional<z.ZodString>;
    situacao: z.ZodOptional<z.ZodString>;
    destaque: z.ZodOptional<z.ZodString>;
    seguro_fianca: z.ZodOptional<z.ZodString>;
    tipo_construcao: z.ZodOptional<z.ZodString>;
    entrega_ano: z.ZodOptional<z.ZodString>;
    entrega_mes: z.ZodOptional<z.ZodString>;
    mobiliado: z.ZodOptional<z.ZodString>;
    permuta: z.ZodOptional<z.ZodString>;
    financiavel: z.ZodOptional<z.ZodString>;
    exclusividade: z.ZodOptional<z.ZodString>;
    tipo_piso: z.ZodOptional<z.ZodString>;
    terreno_frente: z.ZodOptional<z.ZodString>;
    terreno_fundos: z.ZodOptional<z.ZodString>;
    terreno_esquerdo: z.ZodOptional<z.ZodString>;
    terreno_direita: z.ZodOptional<z.ZodString>;
    terreno_total: z.ZodOptional<z.ZodString>;
    medida_terreno_total: z.ZodOptional<z.ZodString>;
    rural: z.ZodOptional<z.ZodObject<{
        atividade_rural: z.ZodOptional<z.ZodString>;
        rural_sedes: z.ZodOptional<z.ZodString>;
        rural_area_aravel: z.ZodOptional<z.ZodString>;
        medida_total_area_aravel: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        atividade_rural?: string | undefined;
        rural_sedes?: string | undefined;
        rural_area_aravel?: string | undefined;
        medida_total_area_aravel?: string | undefined;
    }, {
        atividade_rural?: string | undefined;
        rural_sedes?: string | undefined;
        rural_area_aravel?: string | undefined;
        medida_total_area_aravel?: string | undefined;
    }>>;
    numero_pessoas: z.ZodOptional<z.ZodString>;
    calendario_temporada: z.ZodOptional<z.ZodString>;
    posicao: z.ZodOptional<z.ZodString>;
    posicao_solar: z.ZodOptional<z.ZodString>;
    distancia_mar: z.ZodOptional<z.ZodString>;
    valor_venda_visivel: z.ZodOptional<z.ZodString>;
    valor_venda: z.ZodOptional<z.ZodString>;
    valor_locacao_visivel: z.ZodOptional<z.ZodString>;
    valor_locacao: z.ZodOptional<z.ZodString>;
    valor_temporada_visivel: z.ZodOptional<z.ZodString>;
    valor_temporada: z.ZodOptional<z.ZodString>;
    valor_condominio_visivel: z.ZodOptional<z.ZodString>;
    valor_condominio: z.ZodOptional<z.ZodString>;
    periodicidade_iptu: z.ZodOptional<z.ZodString>;
    valor_iptu_visivel: z.ZodOptional<z.ZodString>;
    valor_iptu: z.ZodOptional<z.ZodString>;
    valor_seguro_incendio: z.ZodOptional<z.ZodString>;
    valor_taxa_limpeza: z.ZodOptional<z.ZodString>;
    endereco_estado: z.ZodOptional<z.ZodString>;
    endereco_cidade: z.ZodOptional<z.ZodString>;
    endereco_bairro: z.ZodOptional<z.ZodString>;
    endereco_zona: z.ZodOptional<z.ZodString>;
    endereco_logradouro: z.ZodOptional<z.ZodString>;
    endereco_cep: z.ZodOptional<z.ZodString>;
    endereco_referencia: z.ZodOptional<z.ZodString>;
    endereco_numero: z.ZodOptional<z.ZodString>;
    andar: z.ZodOptional<z.ZodString>;
    latitude: z.ZodOptional<z.ZodString>;
    longitude: z.ZodOptional<z.ZodString>;
    endereco_complemento: z.ZodOptional<z.ZodString>;
    endereco_numero_visivel: z.ZodOptional<z.ZodString>;
    endereco_referencia_visivel: z.ZodOptional<z.ZodString>;
    endereco_logradouro_visivel: z.ZodOptional<z.ZodString>;
    endereco_bairro_visivel: z.ZodOptional<z.ZodString>;
    endereco_cidade_visivel: z.ZodOptional<z.ZodString>;
    endereco_estado_visivel: z.ZodOptional<z.ZodString>;
    endereco_complemento_visivel: z.ZodOptional<z.ZodString>;
    andar_visivel: z.ZodOptional<z.ZodString>;
    geoposicionamento_visivel: z.ZodOptional<z.ZodString>;
    videos: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    plantas: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    imagens: z.ZodOptional<z.ZodArray<z.ZodObject<{
        link: z.ZodString;
        titulo: z.ZodOptional<z.ZodString>;
        link_thumb: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        link: string;
        titulo?: string | undefined;
        link_thumb?: string | undefined;
    }, {
        link: string;
        titulo?: string | undefined;
        link_thumb?: string | undefined;
    }>, "many">>;
    tour360: z.ZodOptional<z.ZodString>;
    id_corretor: z.ZodOptional<z.ZodString>;
    id_condominio: z.ZodOptional<z.ZodString>;
    id_subcondominio: z.ZodOptional<z.ZodString>;
    condominio_tipo: z.ZodOptional<z.ZodString>;
    condominio_nome: z.ZodOptional<z.ZodString>;
    condominio_fechado: z.ZodOptional<z.ZodString>;
    condominio_comodidades: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    codigo: string;
    status?: string | undefined;
    titulo_anuncio?: string | undefined;
    descricao_anuncio?: string | undefined;
    observacoes?: string | undefined;
    meta_title?: string | undefined;
    meta_description?: string | undefined;
    data_cadastro?: string | undefined;
    data_update?: string | undefined;
    data_atualizacao?: string | undefined;
    updated_at?: string | undefined;
    medida?: string | undefined;
    contrato?: string | undefined;
    tipo?: string | undefined;
    subtipo?: string | undefined;
    tags?: string | undefined;
    imovel_comodidades?: string | undefined;
    dormitorios?: string | undefined;
    suites?: string | undefined;
    banheiros?: string | undefined;
    garagens?: string | undefined;
    area_total?: string | undefined;
    area_privativa?: string | undefined;
    area_util?: string | undefined;
    situacao?: string | undefined;
    destaque?: string | undefined;
    seguro_fianca?: string | undefined;
    tipo_construcao?: string | undefined;
    entrega_ano?: string | undefined;
    entrega_mes?: string | undefined;
    mobiliado?: string | undefined;
    permuta?: string | undefined;
    financiavel?: string | undefined;
    exclusividade?: string | undefined;
    tipo_piso?: string | undefined;
    terreno_frente?: string | undefined;
    terreno_fundos?: string | undefined;
    terreno_esquerdo?: string | undefined;
    terreno_direita?: string | undefined;
    terreno_total?: string | undefined;
    medida_terreno_total?: string | undefined;
    rural?: {
        atividade_rural?: string | undefined;
        rural_sedes?: string | undefined;
        rural_area_aravel?: string | undefined;
        medida_total_area_aravel?: string | undefined;
    } | undefined;
    numero_pessoas?: string | undefined;
    calendario_temporada?: string | undefined;
    posicao?: string | undefined;
    posicao_solar?: string | undefined;
    distancia_mar?: string | undefined;
    valor_venda_visivel?: string | undefined;
    valor_venda?: string | undefined;
    valor_locacao_visivel?: string | undefined;
    valor_locacao?: string | undefined;
    valor_temporada_visivel?: string | undefined;
    valor_temporada?: string | undefined;
    valor_condominio_visivel?: string | undefined;
    valor_condominio?: string | undefined;
    periodicidade_iptu?: string | undefined;
    valor_iptu_visivel?: string | undefined;
    valor_iptu?: string | undefined;
    valor_seguro_incendio?: string | undefined;
    valor_taxa_limpeza?: string | undefined;
    endereco_estado?: string | undefined;
    endereco_cidade?: string | undefined;
    endereco_bairro?: string | undefined;
    endereco_zona?: string | undefined;
    endereco_logradouro?: string | undefined;
    endereco_cep?: string | undefined;
    endereco_referencia?: string | undefined;
    endereco_numero?: string | undefined;
    andar?: string | undefined;
    latitude?: string | undefined;
    longitude?: string | undefined;
    endereco_complemento?: string | undefined;
    endereco_numero_visivel?: string | undefined;
    endereco_referencia_visivel?: string | undefined;
    endereco_logradouro_visivel?: string | undefined;
    endereco_bairro_visivel?: string | undefined;
    endereco_cidade_visivel?: string | undefined;
    endereco_estado_visivel?: string | undefined;
    endereco_complemento_visivel?: string | undefined;
    andar_visivel?: string | undefined;
    geoposicionamento_visivel?: string | undefined;
    videos?: string[] | undefined;
    plantas?: string[] | undefined;
    imagens?: {
        link: string;
        titulo?: string | undefined;
        link_thumb?: string | undefined;
    }[] | undefined;
    tour360?: string | undefined;
    id_corretor?: string | undefined;
    id_condominio?: string | undefined;
    id_subcondominio?: string | undefined;
    condominio_tipo?: string | undefined;
    condominio_nome?: string | undefined;
    condominio_fechado?: string | undefined;
    condominio_comodidades?: string | undefined;
}, {
    codigo: string;
    status?: string | undefined;
    titulo_anuncio?: string | undefined;
    descricao_anuncio?: string | undefined;
    observacoes?: string | undefined;
    meta_title?: string | undefined;
    meta_description?: string | undefined;
    data_cadastro?: string | undefined;
    data_update?: string | undefined;
    data_atualizacao?: string | undefined;
    updated_at?: string | undefined;
    medida?: string | undefined;
    contrato?: string | undefined;
    tipo?: string | undefined;
    subtipo?: string | undefined;
    tags?: string | undefined;
    imovel_comodidades?: string | undefined;
    dormitorios?: string | undefined;
    suites?: string | undefined;
    banheiros?: string | undefined;
    garagens?: string | undefined;
    area_total?: string | undefined;
    area_privativa?: string | undefined;
    area_util?: string | undefined;
    situacao?: string | undefined;
    destaque?: string | undefined;
    seguro_fianca?: string | undefined;
    tipo_construcao?: string | undefined;
    entrega_ano?: string | undefined;
    entrega_mes?: string | undefined;
    mobiliado?: string | undefined;
    permuta?: string | undefined;
    financiavel?: string | undefined;
    exclusividade?: string | undefined;
    tipo_piso?: string | undefined;
    terreno_frente?: string | undefined;
    terreno_fundos?: string | undefined;
    terreno_esquerdo?: string | undefined;
    terreno_direita?: string | undefined;
    terreno_total?: string | undefined;
    medida_terreno_total?: string | undefined;
    rural?: {
        atividade_rural?: string | undefined;
        rural_sedes?: string | undefined;
        rural_area_aravel?: string | undefined;
        medida_total_area_aravel?: string | undefined;
    } | undefined;
    numero_pessoas?: string | undefined;
    calendario_temporada?: string | undefined;
    posicao?: string | undefined;
    posicao_solar?: string | undefined;
    distancia_mar?: string | undefined;
    valor_venda_visivel?: string | undefined;
    valor_venda?: string | undefined;
    valor_locacao_visivel?: string | undefined;
    valor_locacao?: string | undefined;
    valor_temporada_visivel?: string | undefined;
    valor_temporada?: string | undefined;
    valor_condominio_visivel?: string | undefined;
    valor_condominio?: string | undefined;
    periodicidade_iptu?: string | undefined;
    valor_iptu_visivel?: string | undefined;
    valor_iptu?: string | undefined;
    valor_seguro_incendio?: string | undefined;
    valor_taxa_limpeza?: string | undefined;
    endereco_estado?: string | undefined;
    endereco_cidade?: string | undefined;
    endereco_bairro?: string | undefined;
    endereco_zona?: string | undefined;
    endereco_logradouro?: string | undefined;
    endereco_cep?: string | undefined;
    endereco_referencia?: string | undefined;
    endereco_numero?: string | undefined;
    andar?: string | undefined;
    latitude?: string | undefined;
    longitude?: string | undefined;
    endereco_complemento?: string | undefined;
    endereco_numero_visivel?: string | undefined;
    endereco_referencia_visivel?: string | undefined;
    endereco_logradouro_visivel?: string | undefined;
    endereco_bairro_visivel?: string | undefined;
    endereco_cidade_visivel?: string | undefined;
    endereco_estado_visivel?: string | undefined;
    endereco_complemento_visivel?: string | undefined;
    andar_visivel?: string | undefined;
    geoposicionamento_visivel?: string | undefined;
    videos?: string[] | undefined;
    plantas?: string[] | undefined;
    imagens?: {
        link: string;
        titulo?: string | undefined;
        link_thumb?: string | undefined;
    }[] | undefined;
    tour360?: string | undefined;
    id_corretor?: string | undefined;
    id_condominio?: string | undefined;
    id_subcondominio?: string | undefined;
    condominio_tipo?: string | undefined;
    condominio_nome?: string | undefined;
    condominio_fechado?: string | undefined;
    condominio_comodidades?: string | undefined;
}>;
type JetimobImovel = z.infer<typeof JetimobImovelSchema>;

declare const PropertyModelSchema: z.ZodObject<{
    reference: z.ZodString;
    title: z.ZodString;
    description: z.ZodString;
    seo: z.ZodOptional<z.ZodObject<{
        meta_title: z.ZodOptional<z.ZodString>;
        meta_description: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        meta_title?: string | undefined;
        meta_description?: string | undefined;
    }, {
        meta_title?: string | undefined;
        meta_description?: string | undefined;
    }>>;
    media_assets: z.ZodObject<{
        images: z.ZodOptional<z.ZodArray<z.ZodObject<{
            full: z.ZodString;
            md: z.ZodOptional<z.ZodString>;
            sm: z.ZodOptional<z.ZodString>;
            cover: z.ZodOptional<z.ZodBoolean>;
        }, "strip", z.ZodTypeAny, {
            full: string;
            md?: string | undefined;
            sm?: string | undefined;
            cover?: boolean | undefined;
        }, {
            full: string;
            md?: string | undefined;
            sm?: string | undefined;
            cover?: boolean | undefined;
        }>, "many">>;
        videos: z.ZodOptional<z.ZodArray<z.ZodObject<{
            provider: z.ZodOptional<z.ZodString>;
            id: z.ZodOptional<z.ZodString>;
            embed_url: z.ZodOptional<z.ZodString>;
        }, "strip", z.ZodTypeAny, {
            provider?: string | undefined;
            id?: string | undefined;
            embed_url?: string | undefined;
        }, {
            provider?: string | undefined;
            id?: string | undefined;
            embed_url?: string | undefined;
        }>, "many">>;
        virtual_tours: z.ZodOptional<z.ZodArray<z.ZodObject<{
            embed_url: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            embed_url: string;
        }, {
            embed_url: string;
        }>, "many">>;
        documents: z.ZodOptional<z.ZodArray<z.ZodObject<{
            name: z.ZodString;
            url: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            name: string;
            url: string;
        }, {
            name: string;
            url: string;
        }>, "many">>;
    }, "strip", z.ZodTypeAny, {
        videos?: {
            provider?: string | undefined;
            id?: string | undefined;
            embed_url?: string | undefined;
        }[] | undefined;
        images?: {
            full: string;
            md?: string | undefined;
            sm?: string | undefined;
            cover?: boolean | undefined;
        }[] | undefined;
        virtual_tours?: {
            embed_url: string;
        }[] | undefined;
        documents?: {
            name: string;
            url: string;
        }[] | undefined;
    }, {
        videos?: {
            provider?: string | undefined;
            id?: string | undefined;
            embed_url?: string | undefined;
        }[] | undefined;
        images?: {
            full: string;
            md?: string | undefined;
            sm?: string | undefined;
            cover?: boolean | undefined;
        }[] | undefined;
        virtual_tours?: {
            embed_url: string;
        }[] | undefined;
        documents?: {
            name: string;
            url: string;
        }[] | undefined;
    }>;
    attributes: z.ZodRecord<z.ZodString, z.ZodAny>;
    settings: z.ZodOptional<z.ZodObject<{
        currency_unit: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"BRL">, z.ZodLiteral<"USD">]>>;
        area_unit: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"m2">, z.ZodLiteral<"ft2">]>>;
        distance_unit: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"km">, z.ZodLiteral<"mi">, z.ZodLiteral<"meters">]>>;
        exibir_no_mapa: z.ZodOptional<z.ZodBoolean>;
    }, "strip", z.ZodTypeAny, {
        currency_unit?: "BRL" | "USD" | undefined;
        area_unit?: "m2" | "ft2" | undefined;
        distance_unit?: "km" | "mi" | "meters" | undefined;
        exibir_no_mapa?: boolean | undefined;
    }, {
        currency_unit?: "BRL" | "USD" | undefined;
        area_unit?: "m2" | "ft2" | undefined;
        distance_unit?: "km" | "mi" | "meters" | undefined;
        exibir_no_mapa?: boolean | undefined;
    }>>;
    updated_at: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    reference: string;
    title: string;
    description: string;
    media_assets: {
        videos?: {
            provider?: string | undefined;
            id?: string | undefined;
            embed_url?: string | undefined;
        }[] | undefined;
        images?: {
            full: string;
            md?: string | undefined;
            sm?: string | undefined;
            cover?: boolean | undefined;
        }[] | undefined;
        virtual_tours?: {
            embed_url: string;
        }[] | undefined;
        documents?: {
            name: string;
            url: string;
        }[] | undefined;
    };
    attributes: Record<string, any>;
    updated_at?: string | undefined;
    seo?: {
        meta_title?: string | undefined;
        meta_description?: string | undefined;
    } | undefined;
    settings?: {
        currency_unit?: "BRL" | "USD" | undefined;
        area_unit?: "m2" | "ft2" | undefined;
        distance_unit?: "km" | "mi" | "meters" | undefined;
        exibir_no_mapa?: boolean | undefined;
    } | undefined;
}, {
    reference: string;
    title: string;
    description: string;
    media_assets: {
        videos?: {
            provider?: string | undefined;
            id?: string | undefined;
            embed_url?: string | undefined;
        }[] | undefined;
        images?: {
            full: string;
            md?: string | undefined;
            sm?: string | undefined;
            cover?: boolean | undefined;
        }[] | undefined;
        virtual_tours?: {
            embed_url: string;
        }[] | undefined;
        documents?: {
            name: string;
            url: string;
        }[] | undefined;
    };
    attributes: Record<string, any>;
    updated_at?: string | undefined;
    seo?: {
        meta_title?: string | undefined;
        meta_description?: string | undefined;
    } | undefined;
    settings?: {
        currency_unit?: "BRL" | "USD" | undefined;
        area_unit?: "m2" | "ft2" | undefined;
        distance_unit?: "km" | "mi" | "meters" | undefined;
        exibir_no_mapa?: boolean | undefined;
    } | undefined;
}>;
type PropertyModel = z.infer<typeof PropertyModelSchema>;

/**
 * Converte um imóvel do formato Jetimob para o formato PropertyV3
 * Baseado no MAPEAMENTO_COMPLETO_DE_PARA.md
 */
declare function convertJetimobToPropertyV3(imovel: JetimobImovel): PropertyModel;

declare class JetimobApiClient {
    private webserviceKey;
    private baseUrl;
    constructor(config: {
        webserviceKey: string;
        baseUrl?: string;
    });
    private request;
    getImoveis(page?: number, pageSize?: number): Promise<any>;
    getImovel(id: string | number): Promise<any>;
    testConnection(): Promise<any>;
}

interface JetimobDownloaderConfig {
    webserviceKey: string;
    outputDir: string;
    baseUrl?: string;
}
interface DownloadOptions {
    page?: number;
    pageSize?: number;
    startPage?: number;
    endPage?: number;
    maxPages?: number;
}
interface DownloadResult {
    totalPages: number;
    totalItems: number;
    downloadedItems: number;
    errors: string[];
}
interface ApiUploadConfig {
    endpoint: string;
    headers?: Record<string, string>;
    convertData?: boolean;
}
interface UploadResult {
    totalProcessed: number;
    totalSent: number;
    totalErrors: number;
    errors: string[];
}

declare class JetimobDownloader {
    private apiClient;
    private outputDir;
    constructor(config: JetimobDownloaderConfig);
    private ensureOutputDir;
    private savePageData;
    downloadPage(page: number, pageSize?: number): Promise<void>;
    downloadPages(options?: DownloadOptions): Promise<DownloadResult>;
    downloadAll(pageSize?: number): Promise<DownloadResult>;
    uploadToApi(uploadConfig: ApiUploadConfig): Promise<UploadResult>;
    downloadAndUpload(downloadOptions: DownloadOptions, uploadConfig: ApiUploadConfig): Promise<{
        downloadResult: DownloadResult;
        uploadResult: UploadResult;
    }>;
}

interface FieldConfig {
    maxExamples?: number;
}
interface ProfilerConfig {
    inputDir: string;
    outputDir: string;
    outputFileName?: string;
    fieldConfigs?: Record<string, FieldConfig>;
    defaultMaxExamples?: number;
    verbose?: boolean;
    uniqueField?: string;
    dataLabel?: string;
    serviceLabel?: string;
}
type ProfileResult = Record<string, any[]>;
/**
 * Serviço genérico para análise e profiling de dados JSON
 * Baseado no ProfilerService do Arbo-CRM
 */
declare class ProfilerService {
    private config;
    private fieldData;
    private fieldExamples;
    constructor(config: ProfilerConfig);
    profile(): Promise<ProfileResult>;
    private loadData;
    private processData;
    private processObject;
    private processArrayField;
    private processSimpleField;
    private generateResult;
    private saveResult;
    /**
     * Método para analisar apenas dados únicos
     * Remove duplicatas baseado no campo configurado em uniqueField
     */
    profileUnique(): Promise<ProfileResult>;
}

declare const fakeData: {
    apartamentos: {
        codigo: string;
        titulo_anuncio: string;
        observacoes: string;
        contrato: string;
        tipo: string;
        subtipo: string;
        mobiliado: number;
        financiavel: number;
        exclusividade: boolean;
        medida: string;
        endereco_estado: string;
        endereco_cidade: string;
        data_cadastro: string;
        data_update: string;
        data_atualizacao: string;
        updated_at: string;
        dormitorios: number;
        suites: number;
        banheiros: number;
        garagens: number;
        area_total: number;
        area_privativa: number;
        andar: number;
        valor_venda: number;
        endereco_bairro: string;
        endereco_logradouro: string;
        endereco_numero: string;
        endereco_cep: string;
        endereco_complemento: string;
        latitude: number;
        longitude: number;
        imovel_comodidades: string;
        imagens: {
            link: string;
            titulo: string;
            link_thumb: string;
        }[];
        videos: never[];
        tour360: never[];
        plantas: never[];
        valor_venda_visivel: boolean;
        valor_locacao_visivel: boolean;
        valor_temporada_visivel: boolean;
        valor_condominio_visivel: boolean;
        valor_iptu_visivel: boolean;
        endereco_estado_visivel: boolean;
        endereco_cidade_visivel: boolean;
        endereco_bairro_visivel: boolean;
        endereco_logradouro_visivel: boolean;
        endereco_numero_visivel: boolean;
        endereco_complemento_visivel: boolean;
    }[];
    casas: {
        codigo: string;
        titulo_anuncio: string;
        observacoes: string;
        contrato: string;
        tipo: string;
        subtipo: string;
        mobiliado: number;
        financiavel: number;
        exclusividade: boolean;
        medida: string;
        endereco_estado: string;
        endereco_cidade: string;
        data_cadastro: string;
        data_update: string;
        data_atualizacao: string;
        updated_at: string;
        dormitorios: number;
        suites: number;
        banheiros: number;
        garagens: number;
        area_total: number;
        area_privativa: number;
        terreno_total: number;
        valor_venda: number;
        endereco_bairro: string;
        endereco_logradouro: string;
        endereco_numero: string;
        endereco_cep: string;
        endereco_complemento: string;
        latitude: number;
        longitude: number;
        imovel_comodidades: string;
        imagens: {
            link: string;
            titulo: string;
            link_thumb: string;
        }[];
        videos: never[];
        tour360: never[];
        plantas: never[];
        valor_venda_visivel: boolean;
        valor_locacao_visivel: boolean;
        valor_temporada_visivel: boolean;
        valor_condominio_visivel: boolean;
        valor_iptu_visivel: boolean;
        endereco_estado_visivel: boolean;
        endereco_cidade_visivel: boolean;
        endereco_bairro_visivel: boolean;
        endereco_logradouro_visivel: boolean;
        endereco_numero_visivel: boolean;
        endereco_complemento_visivel: boolean;
    }[];
    comerciais: {
        codigo: string;
        titulo_anuncio: string;
        observacoes: string;
        contrato: string;
        tipo: string;
        mobiliado: number;
        financiavel: number;
        exclusividade: boolean;
        medida: string;
        endereco_estado: string;
        endereco_cidade: string;
        data_cadastro: string;
        data_update: string;
        data_atualizacao: string;
        updated_at: string;
        subtipo: string;
        banheiros: number;
        garagens: number;
        area_total: number;
        area_privativa: number;
        andar: number;
        valor_venda: number;
        endereco_bairro: string;
        endereco_logradouro: string;
        endereco_numero: string;
        endereco_cep: string;
        endereco_complemento: string;
        latitude: number;
        longitude: number;
        imovel_comodidades: string;
        imagens: {
            link: string;
            titulo: string;
            link_thumb: string;
        }[];
        videos: never[];
        tour360: never[];
        plantas: never[];
        valor_venda_visivel: boolean;
        valor_locacao_visivel: boolean;
        valor_temporada_visivel: boolean;
        valor_condominio_visivel: boolean;
        valor_iptu_visivel: boolean;
        endereco_estado_visivel: boolean;
        endereco_cidade_visivel: boolean;
        endereco_bairro_visivel: boolean;
        endereco_logradouro_visivel: boolean;
        endereco_numero_visivel: boolean;
        endereco_complemento_visivel: boolean;
    }[];
    terrenos: {
        codigo: string;
        titulo_anuncio: string;
        observacoes: string;
        contrato: string;
        tipo: string;
        subtipo: string;
        mobiliado: number;
        financiavel: number;
        exclusividade: boolean;
        dormitorios: number;
        suites: number;
        banheiros: number;
        area_total: number;
        area_privativa: number;
        medida: string;
        endereco_estado: string;
        endereco_cidade: string;
        data_cadastro: string;
        data_update: string;
        data_atualizacao: string;
        updated_at: string;
        terreno_total: number;
        valor_venda: number;
        endereco_bairro: string;
        endereco_logradouro: string;
        endereco_numero: string;
        endereco_cep: string;
        endereco_complemento: string;
        latitude: number;
        longitude: number;
        imovel_comodidades: string;
        imagens: {
            link: string;
            titulo: string;
            link_thumb: string;
        }[];
        videos: never[];
        tour360: never[];
        plantas: never[];
        valor_venda_visivel: boolean;
        valor_locacao_visivel: boolean;
        valor_temporada_visivel: boolean;
        valor_condominio_visivel: boolean;
        valor_iptu_visivel: boolean;
        endereco_estado_visivel: boolean;
        endereco_cidade_visivel: boolean;
        endereco_bairro_visivel: boolean;
        endereco_logradouro_visivel: boolean;
        endereco_numero_visivel: boolean;
        endereco_complemento_visivel: boolean;
    }[];
    coberturas: {
        codigo: string;
        titulo_anuncio: string;
        observacoes: string;
        contrato: string;
        tipo: string;
        subtipo: string;
        mobiliado: number;
        financiavel: number;
        exclusividade: boolean;
        medida: string;
        endereco_estado: string;
        endereco_cidade: string;
        data_cadastro: string;
        data_update: string;
        data_atualizacao: string;
        updated_at: string;
        dormitorios: number;
        suites: number;
        banheiros: number;
        garagens: number;
        area_total: number;
        area_privativa: number;
        andar: number;
        valor_venda: number;
        endereco_bairro: string;
        endereco_logradouro: string;
        endereco_numero: string;
        endereco_cep: string;
        endereco_complemento: string;
        latitude: number;
        longitude: number;
        imovel_comodidades: string;
        imagens: {
            link: string;
            titulo: string;
            link_thumb: string;
        }[];
        videos: never[];
        tour360: never[];
        plantas: never[];
        valor_venda_visivel: boolean;
        valor_locacao_visivel: boolean;
        valor_temporada_visivel: boolean;
        valor_condominio_visivel: boolean;
        valor_iptu_visivel: boolean;
        endereco_estado_visivel: boolean;
        endereco_cidade_visivel: boolean;
        endereco_bairro_visivel: boolean;
        endereco_logradouro_visivel: boolean;
        endereco_numero_visivel: boolean;
        endereco_complemento_visivel: boolean;
    }[];
};

export { type FieldConfig, JetimobApiClient, JetimobDownloader, type JetimobImovel, type ProfileResult, type ProfilerConfig, ProfilerService, type PropertyModel, convertJetimobToPropertyV3, fakeData };
