import type { ChildProduct } from '../../../api/commerce/common/product.js'; import type { RecommendationsCommerceSuccessResponse } from '../../../api/commerce/recommendations/recommendations-response.js'; import type { RecommendationsSection } from '../../../state/state-sections.js'; import { type StateNeededForPaginatedCommerceAPIRequest } from '../common/paginated-commerce-api-request-builder.js'; export interface QueryRecommendationsCommerceAPIThunkReturn { /** The successful recommendations response. */ response: RecommendationsCommerceSuccessResponse; } export type StateNeededByFetchRecommendations = StateNeededForPaginatedCommerceAPIRequest & RecommendationsSection; export interface FetchRecommendationsPayload { /** * The unique identifier of the recommendations slot (for example, `b953ab2e-022b-4de4-903f-68b2c0682942`). */ slotId: string; productId?: string; } export declare const fetchRecommendations: import("@reduxjs/toolkit").AsyncThunk | undefined; serializedErrorType?: unknown; pendingMeta?: unknown; fulfilledMeta?: unknown; rejectedMeta?: unknown; }>; export type FetchMoreRecommendationsPayload = FetchRecommendationsPayload; export declare const fetchMoreRecommendations: import("@reduxjs/toolkit").AsyncThunk | undefined; serializedErrorType?: unknown; pendingMeta?: unknown; fulfilledMeta?: unknown; rejectedMeta?: unknown; }>; interface SlotIdPayload { slotId: string; productId?: string; } export type RegisterRecommendationsSlotPayload = SlotIdPayload; export declare const registerRecommendationsSlot: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: SlotIdPayload], SlotIdPayload, "commerce/recommendations/registerSlot", never, never>; export interface PromoteChildToParentPayload extends SlotIdPayload { child: ChildProduct; } export declare const promoteChildToParent: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: PromoteChildToParentPayload], PromoteChildToParentPayload, "commerce/recommendations/promoteChildToParent", never, never>; export {};