import { ZoomPolicy } from "./viewer/geometry.mjs";
import { CSSProperties, ComponentProps, ReactNode, Ref } from "react";
//#region src/Image/type.d.ts
interface ImagePreviewOptions {
  autoZoomThreshold?: number;
  defaultZoom?: ZoomPolicy;
  maxScale?: number;
  onOpenChange?: (open: boolean) => void;
  src?: string;
  toolbarAddon?: ReactNode;
}
type ImageProps = Omit<ComponentProps<'img'>, 'width' | 'height'> & {
  actions?: ReactNode;
  alwaysShowActions?: boolean;
  classNames?: {
    image?: string;
    wrapper?: string;
  };
  height?: number | string;
  isLoading?: boolean;
  maxHeight?: number | string;
  maxWidth?: number | string;
  minHeight?: number | string;
  minWidth?: number | string;
  objectFit?: 'cover' | 'contain';
  preview?: boolean | ImagePreviewOptions;
  ref?: Ref<HTMLDivElement>;
  size?: number | string;
  styles?: {
    image?: CSSProperties;
    wrapper?: CSSProperties;
  };
  variant?: 'borderless' | 'filled' | 'outlined';
  width?: number | string;
};
interface PreviewGroupProps {
  children?: ReactNode;
  enable?: boolean;
  preview?: boolean | ImagePreviewOptions;
}
//#endregion
export { ImagePreviewOptions, ImageProps, PreviewGroupProps };
//# sourceMappingURL=type.d.mts.map