import React, { Dispatch } from 'react';
import { Specialty } from "../../../../interfaces/types";
import type { DebouncedFunc } from 'lodash';
import { ReducerState, Action } from "../reducer";
import { TypeSearch, SearchClick, GATrackingCode } from "../types";
export interface SearchInputsRef {
    focus: () => void;
}
type Props = {
    state: ReducerState;
    type: TypeSearch;
    initalSearchValue?: string;
    isMobile: boolean;
    isLoading: boolean;
    hideSpecialtySelection?: boolean;
    clientSlug?: string;
    typeInformation: {
        [key in TypeSearch]: {
            name: string;
            icon: React.ReactNode;
            slug: string;
        };
    };
    trackingAttributes?: GATrackingCode;
    onlyShowSearchBox?: boolean;
    dispatch: Dispatch<Action>;
    onSearch?: (info: SearchClick) => void;
    onEnterSearch?: () => void;
    onFocusInput?: () => void;
    focusSearchInput?: () => void;
    onChangeSpecialty?: (specialty: Specialty) => void;
    debouncedFetchSearchResults: DebouncedFunc<(keyword: string, state: ReducerState, searchType: TypeSearch, clientSlug?: string) => Promise<void>>;
};
declare const SearchInputs: React.ForwardRefExoticComponent<Props & React.RefAttributes<SearchInputsRef>>;
export default SearchInputs;
