import React from 'react'; import type { IconButtonSize } from '@shopgate/engage/components/v2'; export interface FavoritesButtonOwnProps { /** * Whether the product is on a favorites list. * @default false */ active?: boolean; /** * Hides the button from assistive technology, for a surface that exposes the action elsewhere. */ 'aria-hidden'?: boolean; /** * Custom class name for the button. */ className?: string; /** * If `true`, the button reacts to the first click only. * @default false */ once?: boolean; /** * The product the button toggles. */ productId?: string | null; /** * Milliseconds to wait before a product is removed again. * @default 0 */ removeThrottle?: number; /** * Whether removing the product also removes the favorites of its variants. * @default false */ removeWithRelatives?: boolean; /** * The size of the button. * @default 'small' */ size?: IconButtonSize; } /** * The props the connector provides. Optional, so that the defaults apply to a button that is * rendered without it. */ interface FavoritesButtonConnectedProps { addFavorites?: (productId: string) => void; removeFavorites?: (productId: string, removeWithRelatives?: boolean) => void; loadWishlistOnAppStartEnabled?: boolean; wishlistItemQuantityEnabled?: boolean; } export type FavoritesButtonProps = FavoritesButtonOwnProps & FavoritesButtonConnectedProps; /** * The favorites button toggles whether a product is on a favorites list, and shows which of the * two states it is in. It renders nothing at all in a shop without the favorites feature. */ declare const FavoritesButtonComponent: import("react-redux").ConnectedComponent React.JSX.Element | null>, { className?: string | undefined; size?: IconButtonSize | undefined; 'aria-hidden'?: boolean | undefined; active?: boolean | undefined; addFavorites?: ((productId: string) => void) | undefined; loadWishlistOnAppStartEnabled?: boolean | undefined; once?: boolean | undefined; productId?: string | null | undefined; removeFavorites?: ((productId: string, removeWithRelatives?: boolean) => void) | undefined; removeThrottle?: number | undefined; removeWithRelatives?: boolean | undefined; wishlistItemQuantityEnabled?: boolean | undefined; context?: import("react-redux/es/components/Context").ReactReduxContextInstance | undefined; store?: import("redux").Store | undefined; }>; export default FavoritesButtonComponent; //# sourceMappingURL=FavoritesButton.d.ts.map