export default Lightbox;
/**
 * @deprecated - Components in the legacy folder (/src/legacy) are deprecated. Please use a component from the components folder (/src/components) instead. Legacy components may not follow accessibility standards.
 **/
declare class Lightbox extends React.Component<any, any, any> {
    constructor(props: any);
    nameId: string;
    state: {
        viewportDimensions: {
            width: number;
            height: number;
        };
        zoom: number;
    };
    componentDidMount(): void;
    componentDidUpdate(prevProps: any): void;
    componentWillUnmount(): void;
    handleResize: () => void;
    handleKeyDown: (e: any) => void;
    handleThumbnailClick: (index: any) => void;
    triggerPageChange: (index: any, e: any, needFocus: any) => void;
    stopPropagation: (e: any) => void;
    setZoom: (increment: any) => void;
    handleDownload: () => void;
    handleClose: () => void;
    render(): JSX.Element;
    imgWrapper: HTMLDivElement;
    lightBox: HTMLDivElement;
    viewport: HTMLDivElement;
}
declare namespace Lightbox {
    namespace propTypes {
        let applicationId: PropTypes.Validator<string>;
        let decrypting: PropTypes.Requireable<boolean>;
        let downloading: PropTypes.Requireable<boolean>;
        let height: PropTypes.Validator<number>;
        let imgClassName: PropTypes.Requireable<string>;
        let index: PropTypes.Requireable<number>;
        let info: PropTypes.Requireable<PropTypes.InferProps<{
            sharedBy: PropTypes.Requireable<string>;
            sharedOn: PropTypes.Requireable<string>;
            size: PropTypes.Requireable<string>;
        }>>;
        let isImageRotated: PropTypes.Requireable<boolean>;
        let name: PropTypes.Validator<string>;
        let onChange: PropTypes.Requireable<(...args: any[]) => any>;
        let onClose: PropTypes.Requireable<(...args: any[]) => any>;
        let onDownload: PropTypes.Requireable<(...args: any[]) => any>;
        let pages: PropTypes.Validator<any[]>;
        let popoverProps: PropTypes.Requireable<object>;
        let theme: PropTypes.Requireable<string>;
        let tooltips: PropTypes.Requireable<PropTypes.InferProps<{
            download: PropTypes.Requireable<string>;
            downloading: PropTypes.Requireable<string>;
            exit: PropTypes.Requireable<string>;
            previous: PropTypes.Requireable<string>;
            next: PropTypes.Requireable<string>;
            zoomIn: PropTypes.Requireable<string>;
            zoomOut: PropTypes.Requireable<string>;
        }>>;
        let width: PropTypes.Validator<number>;
    }
    namespace defaultProps {
        let decrypting_1: boolean;
        export { decrypting_1 as decrypting };
        let downloading_1: boolean;
        export { downloading_1 as downloading };
        let imgClassName_1: string;
        export { imgClassName_1 as imgClassName };
        let index_1: number;
        export { index_1 as index };
        let info_1: {};
        export { info_1 as info };
        let isImageRotated_1: boolean;
        export { isImageRotated_1 as isImageRotated };
        let name_1: string;
        export { name_1 as name };
        let onChange_1: any;
        export { onChange_1 as onChange };
        let onClose_1: any;
        export { onClose_1 as onClose };
        let onDownload_1: any;
        export { onDownload_1 as onDownload };
        export namespace popoverProps_1 {
            let isContained: boolean;
            let direction: string;
        }
        export { popoverProps_1 as popoverProps };
        let theme_1: string;
        export { theme_1 as theme };
        export namespace tooltips_1 {
            export let download: string;
            let downloading_2: string;
            export { downloading_2 as downloading };
            export let exit: string;
            export let previous: string;
            export let next: string;
            export let zoomIn: string;
            export let zoomOut: string;
        }
        export { tooltips_1 as tooltips };
    }
    let displayName: string;
}
import React from 'react';
import PropTypes from 'prop-types';
