import { GraphQLClient, Contact, Customer } from '@propeller-commerce/propeller-sdk-v2'; /** Which way the favorite toggle went — see `onFavoriteChanged`. */ export interface FavoriteChange { action: "added" | "removed"; listId?: string | number; productId?: number; clusterId?: number; } export interface AddToFavoriteProps { /** The initialized GraphQL Client instance. Resolved from PropellerProvider when omitted. */ graphqlClient?: GraphQLClient; /** The authenticated user. Resolved from PropellerProvider when omitted. */ user?: Contact | Customer | null; /** Product ID to add/remove from favorites (for products) */ productId?: number; /** Cluster ID to add/remove from favorites (for clusters) */ clusterId?: number; /** Extra CSS class applied to the root button */ className?: string; /** UI string overrides */ labels?: Record; /** * Called after the favorite toggle succeeds, with which way it went. * * The argument is optional so existing zero-argument callbacks keep working. * Without it an add and a removal are indistinguishable, so a host cannot * report "added to wishlist" without inventing the direction — and a * wishlist metric that also counts removals is worse than none. */ onFavoriteChanged?: (change?: FavoriteChange) => void; } declare const _default: import('vue').DefineComponent & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>; export default _default;