import { LitElement } from 'lit'; /** * @element ui-carousel * @description A responsive carousel/slider component with auto-play, navigation, and touch support * * @slot - Default slot for carousel items * * @fires slide-change - Dispatched when active slide changes * @fires slide-click - Dispatched when a slide is clicked * * @cssprop --carousel-height - Height of carousel (default: 400px) * @cssprop --carousel-gap - Gap between slides (default: 1rem) * @cssprop --carousel-nav-color - Navigation button color * @cssprop --carousel-nav-bg - Navigation button background * @cssprop --carousel-dot-color - Pagination dot color * @cssprop --carousel-dot-active-color - Active pagination dot color * * @csspart container - The carousel container * @csspart track - The slides track * @csspart slide - Individual slide * @csspart nav - Navigation buttons container * @csspart prev-button - Previous button * @csspart next-button - Next button * @csspart pagination - Pagination dots container * @csspart thumbnails - Thumbnails container * * @example * ```html * *
*
*
*
* ``` */ export declare class UICarousel extends LitElement { static styles: import("lit").CSSResult; /** * Number of items to show per view */ itemsPerView: number; /** * Auto-play interval in milliseconds (0 to disable) */ autoPlay: number; /** * Enable infinite loop */ loop: boolean; /** * Show navigation arrows */ showNavigation: boolean; /** * Show pagination dots */ showPagination: boolean; /** * Show thumbnails */ showThumbnails: boolean; /** * Transition effect */ transition: 'slide' | 'fade'; /** * Carousel orientation */ orientation: 'horizontal' | 'vertical'; /** * Hide navigation on blur */ hideNavOnBlur: boolean; /** * Enable touch gestures */ enableTouch: boolean; ariaLabel: string | null; ariaLabelledby: string | null; private currentIndex; private totalSlides; private slides; private isUserPaused; private track; private carousel; private autoPlayInterval?; private touchStartX; private touchStartY; private isDragging; private carouselId; private liveRegionId; /** * Handle keyboard navigation */ private _handleKeyDown; /** * Handle focus to pause autoplay */ private _handleFocus; /** * Handle blur to resume autoplay */ private _handleBlur; connectedCallback(): void; disconnectedCallback(): void; firstUpdated(): void; private setupSlides; private updateSlides; private setupTouchEvents; private handleTouchStart; private handleTouchMove; private handleTouchEnd; private handleMouseDown; private handleMouseMove; private handleMouseUp; private startAutoPlay; private stopAutoPlay; /** * Go to next slide */ next(): void; /** * Go to previous slide */ prev(): void; /** * Go to specific slide */ goToSlide(index: number): void; private handleDotClick; render(): import("lit-html").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'ui-carousel': UICarousel; } } //# sourceMappingURL=carousel.d.ts.map