import type { InfolandAPI, SearchResult } from "@/types/SearchTypes.ts";
interface Props {
    categories?: string;
    autofocus?: boolean;
    placeholder?: string;
    isLoggedIn?: boolean;
}
declare var __VLS_1: {}, __VLS_51: {};
type __VLS_Slots = {} & {
    left?: (props: typeof __VLS_1) => any;
} & {
    right?: (props: typeof __VLS_51) => any;
};
declare const __VLS_base: import("vue").DefineComponent<Props, {
    processQuery: (query: string) => void;
    clearSearch: () => void;
    goToHome: () => void;
    goToStep: (index: number) => Promise<void>;
    getSearchTerm: () => string;
    isLoading: () => boolean;
    focus: () => any;
    detailView: import("vue").Ref<{
        visible: boolean;
        loading: boolean;
        error: boolean;
        data: {
            key: string;
            title: string;
            subtitle?: string | undefined;
            owners?: {
                name: string;
                share?: string | undefined;
            }[] | undefined;
            conveyance?: {
                dateRegistered?: {
                    timestamp: number;
                    formatted?: string | undefined;
                } | undefined;
                purchasePrice?: number | undefined;
                conveyanceType?: {
                    code?: string | undefined;
                    text: string;
                } | undefined;
            } | undefined;
            management?: {
                organizationNumber?: string | undefined;
                name?: string | undefined;
            } | undefined;
            validation?: {
                showInfo: boolean;
                message?: string | undefined;
                redirect?: boolean | undefined;
                links?: {
                    key: string;
                    query: string;
                }[] | undefined;
            } | undefined;
        } | null;
    }, {
        visible: boolean;
        loading: boolean;
        error: boolean;
        data: import("@/types/SearchTypes.ts").ResultDetails | null;
    } | {
        visible: boolean;
        loading: boolean;
        error: boolean;
        data: {
            key: string;
            title: string;
            subtitle?: string | undefined;
            owners?: {
                name: string;
                share?: string | undefined;
            }[] | undefined;
            conveyance?: {
                dateRegistered?: {
                    timestamp: number;
                    formatted?: string | undefined;
                } | undefined;
                purchasePrice?: number | undefined;
                conveyanceType?: {
                    code?: string | undefined;
                    text: string;
                } | undefined;
            } | undefined;
            management?: {
                organizationNumber?: string | undefined;
                name?: string | undefined;
            } | undefined;
            validation?: {
                showInfo: boolean;
                message?: string | undefined;
                redirect?: boolean | undefined;
                links?: {
                    key: string;
                    query: string;
                }[] | undefined;
            } | undefined;
        } | null;
    }>;
    selectedResult: import("vue").ComputedRef<SearchResult | null>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
    redirect: (link: {
        key: string;
        query: string;
    }) => any;
    "show-products": (result: SearchResult) => any;
    "search-result": (result: InfolandAPI) => any;
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
    onRedirect?: ((link: {
        key: string;
        query: string;
    }) => any) | undefined;
    "onShow-products"?: ((result: SearchResult) => any) | undefined;
    "onSearch-result"?: ((result: InfolandAPI) => any) | undefined;
}>, {
    categories: string;
    autofocus: boolean;
    placeholder: string;
    isLoggedIn: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
