import { IRenderable, IRenderer, ISpecification } from '../../api'; /** * Implementation of the 'upload' markup element. * Multiple HTML elements are used to create an upload drop area. * For CSS manipulations the following classes are added: * lto-upload-error-label: text for error messages * lto-upload-file-label: upload file text * lto-upload-file-extension-label: file extension text label * lto-upload-size-label: file size text label * lto-upload-text-label: upload file text label * lto-upload: general CSS upload class * * @see {@link IRenderable} */ export declare class Upload implements IRenderable { private readonly spec; private errorSpan; private fileSpan; private dropArea; constructor(spec: ISpecification); /** * @inheritDoc */ render(renderer: IRenderer, isNested: boolean): HTMLElement; doValidateAndGetBase64(file: File): void; doValidateCompressAndGetBase64(file: File): void; setSuccessClass(): void; removeSuccessClass(): void; setDataToValue(data: string, file: File): void; private compressImage; setFileNameToSpan(name: string): this; setErrorSpanTo(text: string): this; validateFile(size: number, extension?: string): boolean; }