analytica-frontend-lib
Version:
Repositório público dos componentes utilizados nas plataformas da Analytica Ensino
33 lines • 1.47 kB
TypeScript
import type React from 'react';
export interface ImageUploadProps {
/** File currently selected */
selectedFile?: File | null;
/** Upload progress (0-100). If not provided, progress bar won't show */
uploadProgress?: number;
/** Show progress bar even if uploadProgress is 100 */
showProgress?: boolean;
/** Callback when a file is selected */
onFileSelect?: (file: File) => void;
/** Callback when file is removed */
onRemoveFile?: () => void;
/** Custom button text when no file is selected */
buttonText?: string;
/** Custom button icon when no file is selected */
buttonIcon?: React.ReactNode;
/** Accept specific file types (default: "image/*") */
accept?: string;
/** Disabled state */
disabled?: boolean;
/** Custom class name */
className?: string;
/** Max file size in bytes */
maxSize?: number;
/** Callback when file size exceeds maxSize */
onSizeError?: (file: File, maxSize: number) => void;
/** Callback when invalid file type is selected */
onTypeError?: (file: File) => void;
/** Variant of the upload button */
variant?: 'default' | 'compact';
}
export default function ImageUpload({ selectedFile, onFileSelect, onRemoveFile, buttonText, buttonIcon, accept, disabled, className, maxSize, onSizeError, onTypeError, variant, }: Readonly<ImageUploadProps>): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=ImageUpload.d.ts.map