/// <reference types="node" />
import { AFile } from "../file/AFile";
import { Message } from "../action/resp/Message";
import { IConfig } from "../config/IConfig";
import { FileCommited } from "../file/FileCommited";
import { DownloadedURL } from "../file/URLDownloader";
export declare class FileUploaded extends AFile {
    protected m_newName: string;
    protected m_conflictsErrors: Message[];
    protected m_customErrors: Message[];
    constructor(config: IConfig, dir: string, name: string, newName: string);
    getBaseDir(): string;
    getNewName(): string;
    checkForErrors(checkForExist: boolean): boolean;
    addCustomError(message: Message): void;
    getErrors(): Message[];
    getCommitedFile(dir: string): FileCommited;
    checkForConflicts(dir: string): void;
    uploadAndCommit(is: Buffer): void;
    rehost(url: string, onFinish: (result: DownloadedURL | Error) => void): void;
    commit(dir: string, autoRename: boolean): FileCommited;
    isCommited(): boolean;
}
