import { GraphQLClient, Contact, Customer } from '@propeller-commerce/propeller-sdk-v2'; import { FavoriteListChange } from '../composables/vue/useFavorites'; export interface FavoriteListFormData { name: string; isDefault: boolean; } export interface FavoriteListsProps { /** The authenticated user (Contact or Customer). Resolved from PropellerProvider when omitted. */ user?: Contact | Customer | null; /** The initialized GraphQL Client instance. Resolved from PropellerProvider when omitted. */ graphqlClient?: GraphQLClient; /** Callback when a list is clicked (navigate to detail) */ onListClick?: (listId: string | number) => void; /** Limit the number of lists shown (e.g. 3 = last 3 modified). undefined = show all */ limit?: number; /** Displays the "Default" badge on the favorite list (default: true) */ showDefaultIndicator?: boolean; /** Displays the last modified date on the favorite list (default: true) */ showLastModified?: boolean; /** Displays number of products and clusters contained in the favorite list (default: true) */ showItemsCount?: boolean; /** Displays edit/delete action buttons on each list (default: true) */ showActions?: boolean; /** Displays create new favorite list button (default: true) */ allowFavoriteListCreate?: boolean; /** Custom class name */ className?: string; /** Format date function override. If not provided, dates are formatted as dd/mm/YYYY */ formatDate?: (dateString: string) => string; /** Localization labels */ labels?: { lastModified?: string; items?: string; products?: string; clusters?: string; defaultBadge?: string; editSave?: string; editCancel?: string; makeDefault?: string; deleteTitle?: string; deleteConfirm?: string; deleteWarning?: string; deleteButton?: string; cancelButton?: string; createTitle?: string; createButton?: string; createPlaceholder?: string; setAsDefault?: string; saveButton?: string; noLists?: string; noListsDescription?: string; createFirstList?: string; loading?: string; nameLabel?: string; editTooltip?: string; deleteTooltip?: string; }; /** Action function triggered when creating a new favorite list. If not provided, the default action is executed */ onCreate?: (favoriteListData: FavoriteListFormData) => void; /** Action function triggered when editing a favorite list. If not provided, the default action is executed */ onEdit?: (favoriteListId: string, favoriteListData: FavoriteListFormData) => void; /** Action function triggered when deleting a favorite list. If not provided, the default action is executed */ onDelete?: (favoriteListId: string) => void; /** * Called after any list mutation succeeds, with what it did. * * The argument is optional so existing zero-argument callbacks keep working. */ onListChanged?: (change?: FavoriteListChange) => void; } declare const _default: import('vue').DefineComponent & Readonly<{}>, { showDefaultIndicator: boolean; showLastModified: boolean; showItemsCount: boolean; showActions: boolean; allowFavoriteListCreate: boolean; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>; export default _default;