import { ComputedRef, Ref } from 'vue';
export interface HeaderSearchState {
    clearSearch: () => void;
    closeSearch: () => void;
    hasValue: ComputedRef<boolean>;
    isExpanded: Ref<boolean>;
    openSearch: () => void;
}
export declare function isOutsideHeaderSearch(searchElement: Pick<HTMLElement, 'contains'> | null, target: Node | null): boolean;
export declare function shouldShowHeaderSearchPanel(isExpanded: boolean, hasValue: boolean, showPanelOnEmptyQuery?: boolean): boolean;
export declare function useHeaderSearchState(query: Ref<string>, options?: {
    clearOnClose?: boolean;
}): HeaderSearchState;
