import React from "react";
import type { LightBoxNavigationProps, LightBoxProps } from "./LightBox.types";
import { LightBoxProvider } from "./LightBoxContext";
export declare function LightBoxContent(): React.JSX.Element;
/**
* Blurred, desaturated copy of the current image rendered as a full-bleed
* background behind the lightbox. Pass `className` to apply additional styles.
*/
declare function LightBoxBackground({ className }: {
readonly className?: string;
}): React.JSX.Element;
/**
* Semi-transparent blur backdrop. Clicking it calls `onRequestClose`.
* Pass `className` to apply additional styles.
*/
declare function LightBoxOverlay({ className }: {
readonly className?: string;
}): React.JSX.Element;
/**
* Top bar showing the current image counter (`1/3`) and a close button.
* Styled for dark backgrounds.
*/
declare function LightBoxToolbar(): React.JSX.Element;
/**
* The animated hero image with swipe-to-navigate and slide animation.
*
* Pass `className` to add styles to the image wrapper. Supports
* swipe-to-navigate (drag). Keyboard arrow navigation is handled by
* `LightBox.Provider`.
*
* @example
* ```tsx
*
*
* ```
*/
declare function LightBoxSlides({ className }: {
readonly className?: string;
}): React.JSX.Element;
/**
* Previous and next navigation buttons. Returns `null` when the image set
* has only one image.
*
* Use `prevButtonClassName` and `nextButtonClassName` to override the styles
* on each button's wrapper for custom layouts.
*
* @example
* ```tsx
*
* ```
*/
declare function LightBoxNavigation({ prevButtonClassName, nextButtonClassName, }: LightBoxNavigationProps): React.JSX.Element | null;
/**
* Title and caption text for the current image. Only renders when the current
* image has a `title` or `caption`. Styled for dark backgrounds.
*/
declare function LightBoxCaption(): React.JSX.Element | null;
/**
* Scrollable thumbnail strip. Only renders when there are two or more images.
*/
declare function LightBoxThumbnails(): React.JSX.Element | null;
/**
* LightBox displays images in a fullscreen overlay.
*
* **Self-contained (legacy) usage:**
* ```tsx
* { setIsOpen(false); }}
* />
* ```
*
* **Full composable (fullscreen) usage:**
* ```tsx
*
*
*
* ```
*
* **Inline gallery usage (no overlay, no close):**
* ```tsx
*
*
*
*
*
*
*
*
* ```
*/
declare function LightBox(props: LightBoxProps): React.JSX.Element;
declare namespace LightBox {
var Provider: typeof LightBoxProvider;
var Content: typeof LightBoxContent;
var Background: typeof LightBoxBackground;
var Overlay: typeof LightBoxOverlay;
var Toolbar: typeof LightBoxToolbar;
var Slides: typeof LightBoxSlides;
var Navigation: typeof LightBoxNavigation;
var Caption: typeof LightBoxCaption;
var Thumbnails: typeof LightBoxThumbnails;
}
export { LightBox };