import { LitElement } from 'lit'; export interface LightboxImage { src: string; alt?: string; caption?: string; thumbnail?: string; } /** * Lightbox/Image Gallery Component * * Full-screen image viewer with zoom, navigation, and gallery support. * * @element ui-lightbox * * @slot - Default slot for triggering element(s) * * @fires lightbox-open - Dispatched when lightbox opens * @fires lightbox-close - Dispatched when lightbox closes * @fires lightbox-change - Dispatched when current image changes * * @csspart overlay - The overlay background * @csspart content - The main content container * @csspart image - The current image * @csspart controls - The control buttons container * @csspart thumbnails - The thumbnail strip */ export declare class UILightbox extends LitElement { static styles: import("lit").CSSResult; /** * Array of images to display in the gallery */ images: LightboxImage[]; /** * Initial image index */ initialIndex: number; /** * Show thumbnail strip */ showThumbnails: boolean; /** * Show navigation arrows */ showNavigation: boolean; /** * Enable zoom functionality */ enableZoom: boolean; /** * Show image counter */ showCounter: boolean; /** * Enable infinite loop navigation */ infiniteLoop: boolean; /** * Enable slideshow mode */ slideshow: boolean; /** * Slideshow interval in milliseconds */ slideshowInterval: number; private isOpen; private currentIndex; private isLoading; private isZoomed; private lightboxId; private dialogId; private zoomLevel; private slideshowTimer?; connectedCallback(): void; disconnectedCallback(): void; private handleKeyDown; /** * Open the lightbox at a specific index */ open(index?: number): void; /** * Close the lightbox */ close(): void; /** * Go to next image */ next(): void; /** * Go to previous image */ previous(): void; /** * Go to specific image index */ goToImage(index: number): void; /** * Zoom in */ zoomIn(): void; /** * Zoom out */ zoomOut(): void; /** * Toggle zoom */ toggleZoom(): void; /** * Start slideshow */ startSlideshow(): void; /** * Stop slideshow */ stopSlideshow(): void; private handleImageLoad; private handleOverlayClick; private handleImageClick; render(): import("lit-html").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'ui-lightbox': UILightbox; } } //# sourceMappingURL=lightbox.d.ts.map