import { AxiosError } from 'axios';
import AttachmentFileChunk from './AttachmentFileChunk';
export interface FileLike {
    name?: string;
    size?: number;
    type?: string;
    lastModified?: number;
    uid?: string;
    url?: string;
    originFileObj?: File;
    creationDate?: Date;
    attachmentUUID?: string;
    [key: string]: any;
}
export default class AttachmentFile implements FileLike {
    name: string;
    size: number;
    type: string;
    lastModified?: number;
    uid: string;
    url?: string | undefined;
    filename: string;
    ext: string;
    originFileObj?: File | undefined;
    status?: 'error' | 'success' | 'uploading' | 'deleting' | 'done';
    private $percent?;
    md5?: string;
    get percent(): number | undefined;
    set percent(percent: number | undefined);
    error?: AxiosError | undefined;
    errorMessage?: string | undefined;
    invalid?: boolean;
    creationDate: Date;
    attachmentUUID?: string | undefined;
    chunks?: AttachmentFileChunk[];
    constructor(file: FileLike);
    private load;
}
