import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime'; import Swiper from 'swiper'; import type { SwiperOptions } from 'swiper/types'; /** * @name Carousel * @category Display * @summary Use for cycling through a series of content slides with swipe or button navigation. */ export declare class Q2Carousel implements ComponentInterface { carouselPaneWrapperElement: HTMLElement; carouselWrapper: HTMLElement; fullWidthDisplayOptions: SwiperOptions; guid: number; mutationObserver: MutationObserver; paneResizeObserver?: ResizeObserver; swiper?: Swiper; syncPaneHeightFrame?: number; universalCarouselOptions: SwiperOptions; hostElement: HTMLElement; /** Manages re-rendering the component when the `ariaLive` value changes. */ ariaLiveValue: 'polite' | 'off'; /** Manages re-rendering the autoPlay button when clicked. */ autoPlayInProgress: boolean; /** Manages re-rendering the component when resize event is consumed. */ carouselWrapperWidth: number; /** Manages sizing the component based on changes in `carouselWrapperWidth`. */ compactMode: boolean; /** Manages re-rendering the component when panes are added or removed. */ currentPaneCount: number; /** @deprecated */ ariaLabel: string; /** Position to show the navigation arrows * `float`: vertically centered and float over the carousel pane. * `bottom`: bottom area around pagination indicator, the arrows at far left/right edges. * `hug`: bottom area around pagination indicator and wraps the pagination indicator. */ arrowPosition: 'bottom' | 'hug' | 'float' | undefined; /** Keeps all carousel panes at the height of the tallest pane. */ autoHeight: boolean; /** Enables the auto-play feature and starts the carousel without user input. */ autoPlay: boolean; /** Adjusts width of active pane automatically in compact screen based on the carousel width. */ autoWidth: boolean; /** Breakpoint pixel number for switching to compact mode when autoWIdth is enabled, default is 500.*/ compactBreakpoint: number; /** Display a gradient fade on the left and right edges of the carousel. */ edgeFade: boolean; /** Display the carousel panes as frameless with no container or shadow. */ framelessPanes: boolean; /** Display the carousel panes full-width rather than with peeking content. */ fullWidthPanes: boolean; /** Hide the dots below the carousel that provide navigation control and indicate which page is currently active. */ hidePagination: boolean; /** The currently displayed carousel pane. */ index: number; /** * The label that is associated with the carousel. This is not displayed visually, but is presented by screen readers. * @localizable */ label: string; /** Enables continuous looping so navigating past the last pane wraps to the first (and vice versa). Defaults to enabled; pass `false` to disable. */ loop: boolean; /** Display navigation arrow buttons as another way to navigate the carousel. */ showNavigationArrows: boolean; /** * Emitted when the displayed carousel pane changes. * @deprecated Use 'tctChange' instead */ change: EventEmitter<{ index: number; }>; /** * Emitted when the displayed carousel pane changes. */ tctChange: EventEmitter<{ index: number; }>; disconnectedCallback(): void; componentWillLoad(): void; componentDidLoad(): void; carouselPaneClicked(event: any): void; delegateFocus(event: FocusEvent): void; /** * Clicks and Focuses the `q2-carousel-pane` matching the specified index. * @testOnly */ selectCarouselPane(index: number): Promise; /** * Clicks and Focuses the `