import type { CroppedAreaPixels } from '@components/AgentAvatar/cropImage';
import { type PropsWithChildren } from 'react';
import { type CropperProps } from 'react-easy-crop';
import { type ButtonProps } from '@components/Button';
export declare const useImageCropContext: () => {
    image?: string;
    croppedAreaPixels?: CroppedAreaPixels;
    setCroppedAreaPixels: (croppedAreaPixels?: CroppedAreaPixels) => void;
    onCrop: (croppedImage: string) => void;
    onCancel: () => void;
};
export type ImageCropProps = PropsWithChildren<{
    image?: string;
    onCrop: (croppedImage: string) => void;
    onCancel: () => void;
}>;
export declare const ImageCrop: ({ image, children, onCrop, onCancel, }: ImageCropProps) => import("react/jsx-runtime").JSX.Element;
export type ImageCropEditorProps = PropsWithChildren<Partial<CropperProps>> & {
    className?: string;
};
export declare const ImageCropEditor: ({ children, className, ...props }: ImageCropEditorProps) => import("react/jsx-runtime").JSX.Element;
export type ImageCropConfirmProps = ButtonProps;
export declare const ImageCropConfirm: ({ ...props }: ImageCropConfirmProps) => import("react/jsx-runtime").JSX.Element;
export type ImageCropCancelProps = ButtonProps;
export declare const ImageCropCancel: ({ ...props }: ImageCropCancelProps) => import("react/jsx-runtime").JSX.Element;
