/**
 * This component renders an input field that allows the user to type a query. It also reacts to
 * query changes through event listening.
 *
 * @public
 */
declare const _default: import("vue").DefineComponent<{
    /**
     * Maximum characters allowed in the input search.
     */
    maxLength: {
        type: NumberConstructor;
        default: number;
    };
    /**
     * Allows input autofocus when the search field is rendered.
     */
    autofocus: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Enables the auto-accept query after debounce.
     */
    instant: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Debounce time for the instant.
     */
    instantDebounceInMs: {
        type: NumberConstructor;
        default: number;
    };
}, {
    query: import("vue").ComputedRef<any>;
    inputElement: import("vue").Ref<HTMLInputElement | undefined>;
    emitUserHoveredInSearchBox: () => void;
    emitUserHoveredOutSearchBox: () => void;
    emitUserBlurredSearchBox: () => void;
    emitUserClickedSearchBox: () => void;
    emitUserFocusedSearchBox: () => void;
    emitUserIsTypingAQueryEvents: () => void;
    emitUserPressedEnterKey: () => void;
    emitUserPressedArrowKey: (event: KeyboardEvent) => void;
    preventSpecialKey: (event: InputEvent) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    /**
     * Maximum characters allowed in the input search.
     */
    maxLength: {
        type: NumberConstructor;
        default: number;
    };
    /**
     * Allows input autofocus when the search field is rendered.
     */
    autofocus: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Enables the auto-accept query after debounce.
     */
    instant: {
        type: BooleanConstructor;
        default: boolean;
    };
    /**
     * Debounce time for the instant.
     */
    instantDebounceInMs: {
        type: NumberConstructor;
        default: number;
    };
}>>, {
    maxLength: number;
    autofocus: boolean;
    instant: boolean;
    instantDebounceInMs: number;
}, {}>;
export default _default;
//# sourceMappingURL=search-input.vue?vue&type=script&lang.d.ts.map