import { ISdk, EnforcedWidgetSettings } from "../types"; export type EventCallback = (event: CustomEvent) => void | Promise; export declare const EVENT_PRODUCT_ACTION_CLICK = "productActionClick"; export declare const EVENT_PRODUCT_HIDE_ICON_CLICK = "productHideIconClick"; export declare const EVENT_EXPANDED_TILE_IMAGE_LOAD = "expandedTileImageLoad"; export declare const EVENT_EXPANDED_TILE_OPEN = "expandedTileOpen"; export declare const EVENT_EXPANDED_TILE_CLOSE = "expandedTileClose"; export declare const EVENT_BEFORE_EXPANDED_TILE_IMAGE_RESIZE = "beforeExpandedTileImageResize"; export declare const EVENT_EXPANDED_TILE_IMAGE_RESIZE = "expandedTileImageResize"; export declare const EVENT_BEFORE_EXPANDED_TILE_CLOSE = "beforeExpandedTileClose"; export declare const EVENT_BEFORE_EVENT_EXPANDED_TILE_OPEN = "beforeExpandedTileOpen"; export declare const EVENT_SHOPSPOT_FLYOUT_EXPAND = "shopspotFlyoutExpand"; export declare const EVENT_SHOPSPOT_TOGGLE = "shopspotToggle"; export declare const EVENT_SHOPSPOT_OPEN = "shopspotOpen"; export declare const EVENT_SHOPSPOT_ACTION_CLICK = "shopspotActionClick"; export declare const EVENT_USER_CLICK = "userClick"; export declare const EVENT_IMPRESSION = "impression"; export declare const EVENT_LOAD = "load"; export declare const EVENT_LOAD_MORE = "moreLoad"; export declare const EVENT_LIKE = "like"; export declare const EVENT_DISLIKE = "dislike"; export declare const EVENT_HOVER = "tileHover"; export declare const EVENT_PRODUCT_CLICK = "productClick"; export declare const EVENT_PRODUCT_PINCLICK = "pinClick"; export declare const EVENT_TILE_EXPAND = "tileExpand"; export declare const EVENT_PRODUCT_EVENT_USER_CLICK = "userClick"; export declare const EVENT_SHARE_CLICK = "shareClick"; export declare const EVENT_SHOPSPOT_FLYOUT = "shopspotFlyout"; export declare const EVENT_TILE_METADATA_LOADED = "tileMetadataLoaded"; export declare const EVENT_TILE_DATA_SET = "tileDataSet"; export declare const EVENT_HTML_RENDERED = "htmlRendered"; export declare const EVENT_JS_RENDERED = "jsRendered"; export declare const EVENT_GLOBALS_LOADED = "globalsLoaded"; export declare const EVENT_CROSS_SELLERS_LOADED = "crossSellersLoaded"; export declare const EVENT_PRODUCT_PAGE_LOADED = "productPageLoaded"; export declare const EVENT_PRODUCTS_UPDATED = "productsUpdated"; export declare const EVENT_ADD_TO_CART_FAILED = "addToCartFailed"; export declare const EVENT_TILES_UPDATED = "tilesUpdated"; export declare const EVENT_WIDGET_INIT_COMPLETE = "widgetInitComplete"; export declare const EMAIL_TILE_LOAD = "emailTileLoad"; export declare const EMAIL_TILE_CLICK = "emailTileClick"; export declare const EVENT_LIKE_CLICK = "likeClick"; export declare const EVENT_DISLIKE_CLICK = "dislikeClick"; export declare const EVENT_TILE_EXPAND_RENDERED = "expandedTileRendered"; export declare const EVENT_TILE_EXPAND_PROD_RECS_RENDERED = "tileExpandProductRecsRendered"; export declare const EVENT_TILE_EXPAND_CROSS_SELLERS_RENDERED = "tileExpandCrossSellersRendered"; export declare const EVENT_TILE_BG_IMG_ERROR = "tileBgImageError"; export declare const EVENT_TILE_BG_IMG_RENDER_COMPLETE = "tileBgImgRenderComplete"; export declare const EVENT_SHARE_MENU_OPENED = "shareMenuOpened"; export declare const EVENT_SHARE_MENU_CLOSED = "shareMenuClosed"; export declare const EVENT_TAGS_LOADED = "tagsLoaded"; export declare const EVENT_PRODUCT_NAVIGATION = "productNavigation"; export declare const EVENT_TILES_DEPLETED = "tilesDepleted"; export declare const EVENT_MOUSE_LEAVE = "mouseLeave"; export declare const allEvents: string[]; export type AdvancedEventNames = [`${typeof EVENT_PRODUCT_NAVIGATION}:${string}`]; export type EventName = (typeof allEvents)[number] | AdvancedEventNames[number]; export type EventMapping = Record; export declare const callbackDefaults: { onResize: never[]; onLoad: never[]; onTileExpand: never[]; onTileClose: never[]; onTileRendered: never[]; onTilesUpdated: never[]; onCrossSellersRendered: never[]; onWidgetInitComplete: never[]; onTileBgImgRenderComplete: never[]; onTileBgImageError: never[]; onProductActionClick: never[]; onProductHideIconClick: never[]; onExpandedTileImageLoad: never[]; onExpandedTileOpen: never[]; onExpandedTileClose: never[]; onBeforeExpandedTileImageResize: never[]; onBeforeExpandedTileClose: never[]; onBeforeExpandedTileOpen: never[]; onShopspotFlyoutExpand: never[]; onShopspotToggle: never[]; onShopspotOpen: never[]; onShopspotActionClick: never[]; onUserClick: never[]; onShareClick: never[]; onImpression: never[]; onLoadMore: never[]; onLike: never[]; onDislike: never[]; onHover: never[]; onMouseLeave: never[]; onProductClick: never[]; onProductPinClick: never[]; onProductUserClick: never[]; onShopspotFlyout: never[]; onTileMetadataLoaded: never[]; onTileDataSet: never[]; onHtmlRendered: never[]; onJsRendered: never[]; onGlobalsLoaded: never[]; onProductPageLoaded: never[]; onProductsUpdated: never[]; onAddToCartFailed: never[]; onEmailTileLoad: never[]; onEmailTileClick: never[]; onLikeClick: never[]; onDislikeClick: never[]; onTileExpandProductRecsRendered: never[]; onTileExpandCrossSellersRendered: never[]; onShareMenuOpened: never[]; onShareMenuClosed: never[]; }; /** * Interface representing various callback events. */ export type Callbacks = Record; /** * Registers event listeners for the widget. * @param settings */ export declare function loadListeners(sdk: ISdk, settings: EnforcedWidgetSettings): void; export declare function registerTileExpandListener(sdk: ISdk, fn?: (sdk: ISdk, tileId: string) => void): void; export declare function registerDefaultClickEvents(sdk: ISdk): void; export declare function registerCrossSellersLoadListener(sdk: ISdk, fn?: (tileId: string, target: HTMLElement) => void): void; export declare function registerGenericEventListener(sdk: ISdk, eventName: EventName, fn: EventCallback): void; export declare function registerShareMenuOpenedListener(sdk: ISdk, fn?: (tileId: string) => void): void; export declare function registerShareMenuClosedListener(sdk: ISdk, fn?: (tileId: string) => void): void; export declare function registerProductsUpdatedListener(sdk: ISdk, fn?: (sdk: ISdk, tileId: string, target: HTMLElement) => void): void; //# sourceMappingURL=index.d.ts.map