import * as React from "react"; import { ViewProps } from "../View"; export interface ImageUploadSlatProps extends ViewProps { onChange?: (evt: { target: { name: string; value: string | File; }; }) => void; value?: File | string; name?: string; uploadProgress: number; onUploadProgress: ({ loaded, total, }: { loaded: number; total: number; }) => void; showUploadCompleted: boolean; fileName?: string; dragDropText?: string; dropImageText?: string; deleteText?: string; replaceImageText?: string; uploadedText?: string; uploadingText?: string; sizeLimitText?: string; acceptedFileTypesText?: string; chooseAFileText?: string; } interface State { file?: File; disabledClick?: boolean; preview?: string; } declare class ImageUploadSlat extends React.Component { static defaultProps: { fileName: string; dragDropText: string; dropImageText: string; deleteText: string; replaceImageText: string; uploadedText: string; uploadingText: string; sizeLimitText: string; acceptedFileTypesText: string; chooseAFileText: string; }; static getDerivedStateFromProps(nextProps: ImageUploadSlatProps, prevState: State): { preview: string; file?: undefined; } | { file: File; preview: string; }; private height; private imageWidth; constructor(props: ImageUploadSlatProps); componentDidMount(): void; componentWillUnmount(): void; onChange(files: File[]): void; removeImage(): void; renderNoFileState(): JSX.Element; renderPreview(): JSX.Element; renderUploadInProgressState(): JSX.Element; renderUploadHasCompleted(): JSX.Element; renderHasValueState(fileName: string, open: any): JSX.Element; render(): JSX.Element; } export default ImageUploadSlat;