/** * ObjectUI * Copyright (c) 2024-present ObjectStack Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import * as React from 'react'; export interface LightboxImage { url: string; name?: string; } export interface ImageLightboxProps { images: LightboxImage[]; /** Index of the image shown when the lightbox opens. */ index: number; open: boolean; onOpenChange: (open: boolean) => void; /** Called when the user navigates to another image (prev/next, arrow keys). */ onIndexChange?: (index: number) => void; } /** * Full-screen image preview with prev/next navigation for a set of images. * * Controlled: the caller owns `open` and the current `index`. Built on the * shared `Dialog`, so backdrop-click and Escape close it for free; this adds * left/right arrow-key navigation and a position counter for the multi-image * case. A single image simply omits the arrows and counter. */ export declare function ImageLightbox({ images, index, open, onOpenChange, onIndexChange }: ImageLightboxProps): React.JSX.Element | null;