import React from "react"; import type { DataType, ReachMoveFunction, ReachFunction, PhotoTapFunction, BrokenElementParams, ExposedProperties } from "./types"; import "./PhotoBox.scss"; export interface PhotoBoxProps { item: DataType; visible: boolean; speed: number; easing: string; wrapClassName?: string; className?: string; style?: object; loadingElement?: JSX.Element; brokenElement?: JSX.Element | ((photoProps: BrokenElementParams) => JSX.Element); onPhotoTap: PhotoTapFunction; onMaskTap: PhotoTapFunction; onReachMove: ReachMoveFunction; onReachUp: ReachFunction; onPhotoResize: () => void; expose: (state: ExposedProperties) => void; isActive: boolean; container?: HTMLElement; } export default function PhotoBox({ item: { src, render, width: customWidth, height: customHeight, originRef, }, visible, speed, easing, wrapClassName, className, style, loadingElement, brokenElement, onPhotoTap, onMaskTap, onReachMove, onReachUp, onPhotoResize, isActive, expose, container }: PhotoBoxProps): React.JSX.Element;