import type { ChildProduct } from '../../../api/commerce/common/product.js'; import type { SearchCommerceSuccessResponse } from '../../../api/commerce/search/response.js'; import { type UpdateQueryPayload } from '../query/query-actions.js'; import { type StateNeededByExecuteSearch } from './search-actions-thunk-processor.js'; export interface QuerySearchCommerceAPIThunkReturn { /** The successful response. */ response: SearchCommerceSuccessResponse; /** The query that was executed. */ queryExecuted: string; /** The original query expression that was received and automatically corrected. */ originalQuery: string; } export interface FetchSearchPayload { /** * When set to true, fills the `results` field rather than the `products` field * in the response. It may also include Spotlight Content in the results. * @default false */ enableResults?: boolean; } export interface PrepareForSearchWithQueryOptions { /** * Whether to clear all active query filters when the end user submits a new query from the search box. * Setting this option to "false" is not recommended and can lead to an increasing number of queries returning no results. */ clearFilters: boolean; } interface FetchInstantProductsPayload { /** * The search box ID. */ id: string; /** * The query for which instant products are retrieved. */ q: string; /** * Number in milliseconds that cached products will be valid for. Set to 0 so that products never expire. */ cacheTimeout?: number; } interface FetchInstantProductsThunkReturn { /** The successful response. */ response: SearchCommerceSuccessResponse; } export declare const executeSearch: import("@reduxjs/toolkit").AsyncThunk | undefined; serializedErrorType?: unknown; pendingMeta?: unknown; fulfilledMeta?: unknown; rejectedMeta?: unknown; }>; export declare const fetchMoreProducts: import("@reduxjs/toolkit").AsyncThunk | undefined; serializedErrorType?: unknown; pendingMeta?: unknown; fulfilledMeta?: unknown; rejectedMeta?: unknown; }>; export type PrepareForSearchWithQueryPayload = UpdateQueryPayload & PrepareForSearchWithQueryOptions; export declare const prepareForSearchWithQuery: import("@reduxjs/toolkit").AsyncThunk | undefined; serializedErrorType?: unknown; pendingMeta?: unknown; fulfilledMeta?: unknown; rejectedMeta?: unknown; }>; export declare const fetchInstantProducts: import("@reduxjs/toolkit").AsyncThunk | undefined; serializedErrorType?: unknown; pendingMeta?: unknown; fulfilledMeta?: unknown; rejectedMeta?: unknown; }>; export interface PromoteChildToParentPayload { child: ChildProduct; } export declare const promoteChildToParent: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: PromoteChildToParentPayload], PromoteChildToParentPayload, "commerce/search/promoteChildToParent", never, never>; export {};