import type { ThunkAction } from 'redux-thunk'; import { AnyAction } from 'redux'; export interface FetchProductsResult { products: any[]; totalProductCount: number; } export interface FetchProductsConfig { /** * Array of product IDs to fetch. */ productIds: string[]; /** * Optional unique identifier for the component making the request. */ componentId?: string | null; /** * Whether to cache the result by hash. */ cached?: boolean; /** * Whether to include fulfillment information in the response. */ includeFulfillment?: boolean; /** * Optional type of the product IDs. Needs only to be set if the product IDs are not regular * product IDs. */ productIdType?: 'id' | 'sku' | 'ean' | 'upc'; } /** * Dispatches a fetch products action to retrieve products by their IDs. */ declare function fetchProductsById( options: FetchProductsConfig ): ThunkAction, any, unknown, AnyAction>; /** * Dispatches a fetch products action to retrieve products by their IDs. * @deprecated Use the object-based API instead. */ declare function fetchProductsById( /** * Array of product IDs to fetch. */ productIds: string[], /** * Optional unique identifier for the component making the request. */ componentId?: string | null, /** * Whether to cache the result by hash. */ cached?: boolean, /** * Whether to include fulfillment information in the response. */ includeFulfillment?: boolean ): ThunkAction, any, unknown, AnyAction>; export default fetchProductsById;