import { CarouselMode } from "../../vviinn-carousel/vviinn-carousel"; import { CampaignName } from "../../../campaign/Campaign"; import { Locale } from "../../../locale"; import { UpdateButtonLocation } from "../../vviinn-vpr-widget/vviinn-vpr-widget"; import { ClickEvent } from "../../../geometry/Rectangle"; import { Recommendation } from "../../../components"; type SidebarState = "idle" | "open" | "closed"; export declare class RecommendationsSidebar { el: HTMLElement; sidebarTitle: string; sidebarSubtitle: string; token: string; locale: Locale; numberLocale?: string; currencySign: string; pricePrefix: string; productId: string; position: "bottom" | "right"; widgetScrollbar: boolean; mode: CarouselMode; /** comma-separated list of campaign-ids */ campaigns: string; campaignType: CampaignName; color: string; imageWidth: number; showMultipleImages: boolean; cssUrl: string | null; noResultText: string; noResultShow: boolean; /** Hiding disabled arrows in the carousel if true */ gridArrowsDynamic: boolean; excluded: string; /** Toggle for opening product link in new tab or not */ productDetailsNewTab: boolean; /** Toggle for redirection to PDP on product's click */ productDetailsRedirect: boolean; /** Show or hide Add to Basket buttons */ addToBasketShow: boolean; /** Wrap the Product Card's price values in the container. */ addPriceContainer?: boolean; showFilters: boolean; setModeDiscounts: string; setItemsAmount?: number; updateButtonLocation: UpdateButtonLocation; favoriteShow: boolean; useCarousel: boolean; showInWidget: boolean; imageResolutionWidth: number; apiPath: string; /** @internal */ showInCustomContainer: boolean; /** @internal */ buttonChildren: HTMLCollection; /** @internal */ buttonElementId?: string; /** @internal */ widgetVersion: string; /** @internal */ showingInButton: boolean; /** @internal */ showInModal: boolean; /** @internal */ isAppended: boolean; /** @internal */ uiSessionId?: string; /** @internal - Element that triggered the sidebar opening (for focus management) */ triggerElement?: HTMLElement; sidebarState: SidebarState; sourceProduct?: Recommendation; showLoadingClass: boolean; recommendationsLoading: boolean; hidden: boolean; private setRecommendationsLoading; private loadingClassTimeout; updatingAllCardsStarted(): void; updatingAllCardsFinished(): void; bodyClickListener(event: ClickEvent): void; sourceProductReceived(event: CustomEvent): void; handleEscape(event: KeyboardEvent): void; handleLoadingChange(loading: boolean): void; handleSidebarStateChange(newState: SidebarState, oldState: SidebarState): void; private getClassMap; private getAsideElement; private getSidebarRectangle; componentDidLoad(): void; disconnectedCallback(): void; render(): any; private renderSourceImage; private isSourceImageValid; private handleAnimationEnd; } export {};