import type { QuerySuggestSuccessResponse } from '../../../api/commerce/search/query-suggest/query-suggest-response.js';
import type { CartSection, CommerceConfigurationSection, CommerceContextSection, CommerceQuerySection, QuerySetSection, VersionSection } from '../../../state/state-sections.js';
import type { ClearQuerySuggestActionCreatorPayload, FetchQuerySuggestionsActionCreatorPayload, RegisterQuerySuggestActionCreatorPayload, SelectQuerySuggestionActionCreatorPayload } from '../../query-suggest/query-suggest-actions.js';
export type ClearQuerySuggestPayload = ClearQuerySuggestActionCreatorPayload;
export declare const clearQuerySuggest: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: ClearQuerySuggestActionCreatorPayload], ClearQuerySuggestActionCreatorPayload, "commerce/querySuggest/clear", never, never>;
export type FetchQuerySuggestionsPayload = FetchQuerySuggestionsActionCreatorPayload;
export type StateNeededByQuerySuggest = CommerceConfigurationSection & CommerceContextSection & CartSection & QuerySetSection & CommerceQuerySection & Partial<VersionSection>;
export interface FetchQuerySuggestionsThunkReturn extends FetchQuerySuggestionsActionCreatorPayload, QuerySuggestSuccessResponse {
    /**
     * The query for which query suggestions were retrieved.
     */
    query: string | undefined;
}
export declare const fetchQuerySuggestions: import("@reduxjs/toolkit").AsyncThunk<FetchQuerySuggestionsThunkReturn, FetchQuerySuggestionsActionCreatorPayload, {
    state: StateNeededByQuerySuggest;
    rejectValue: import("../../../api/commerce/commerce-api-error-response.js").CommerceAPIErrorStatusResponse;
    extra: import("../../../app/commerce-thunk-extra-arguments.js").CommerceThunkExtraArguments;
    dispatch?: import("redux-thunk").ThunkDispatch<unknown, unknown, import("redux").UnknownAction> | undefined;
    serializedErrorType?: unknown;
    pendingMeta?: unknown;
    fulfilledMeta?: unknown;
    rejectedMeta?: unknown;
}>;
export type RegisterQuerySuggestPayload = RegisterQuerySuggestActionCreatorPayload;
export declare const registerQuerySuggest: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: RegisterQuerySuggestActionCreatorPayload], RegisterQuerySuggestActionCreatorPayload, "commerce/querySuggest/register", never, never>;
export type SelectQuerySuggestionPayload = SelectQuerySuggestionActionCreatorPayload;
export declare const selectQuerySuggestion: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: SelectQuerySuggestionActionCreatorPayload], SelectQuerySuggestionActionCreatorPayload, "commerce/querySuggest/selectSuggestion", never, never>;
