/**
 * User avatar editor to Blob helper
 */
export interface UserAvatarEditorToBlob {
    (canvas: HTMLCanvasElement, mimeType?: string, quality?: number): Promise<Blob>;
}
/**
 * User avatar editor on done handler
 */
export interface UserAvatarEditorOnDoneHandler {
    (canvas: HTMLCanvasElement, toBlob: UserAvatarEditorToBlob, type: string): Promise<void | true | undefined>;
}
/**
 * User avatar editor props
 */
export interface UserAvatarEditorProps {
    /**
     * Cropping border size
     */
    border?: number;
    /**
     * Image source
     */
    image?: string | File;
    /**
     * Max width to save
     */
    maxWidth?: number;
    /**
     * On done handler
     */
    onDone: UserAvatarEditorOnDoneHandler;
    /**
     * Select file label
     */
    selectFileLabel?: string;
    /**
     * Return scaled result?
     */
    scaledResult?: boolean;
    /**
     * Width of the editor
     */
    width?: number;
    /**
     * Height of the editor
     */
    height?: number;
    /**
     * Value range
     */
    range?: [number, number, number];
}
/**
 * User avatar editor
 * https://github.com/mosch/react-avatar-editor
 * @param props Props
 * @returns Component
 */
export declare function UserAvatarEditor(props: UserAvatarEditorProps): import("react/jsx-runtime").JSX.Element;
