import { Subscription } from 'rxjs';
import { IFileService } from '../../../interfaces/file-service.interface';
import { OFileItem } from './o-file-item.class';
export declare class OFileUploader {
    protected service: IFileService;
    entity: string;
    files: OFileItem[];
    isUploading: boolean;
    progress: number;
    nextIndex: number;
    splitUpload: boolean;
    data: object;
    protected _uploadSuscription: Subscription;
    constructor(service: IFileService, entity: string);
    addFile(fileItem: OFileItem): void;
    clear(): void;
    removeFile(value: any): void;
    upload(): void;
    uploadItem(item: OFileItem): void;
    uploadItems(items: OFileItem[]): void;
    cancel(): void;
    cancelItem(value: OFileItem): void;
    getNotUploadedItems(): OFileItem[];
    getIndexOfItem(value: any): number;
    onBeforeUploadItem(fileItem: OFileItem): any;
    onBeforeUploadAll(): any;
    onProgressItem(fileItem: OFileItem, progress: any): any;
    onProgressAll(progress: any): any;
    onCancelItem(fileItem: OFileItem): any;
    onCancelAll(): any;
    onSuccessItem(fileItem: OFileItem, response: any): any;
    onSuccessAll(response: any): any;
    onErrorItem(fileItem: OFileItem, error: any): any;
    onErrorAll(error: any): any;
    onCompleteItem(fileItem: OFileItem): any;
    onCompleteAll(): any;
    protected _onBeforeUploadItem(item: OFileItem): void;
    protected _onBeforeUploadAll(): void;
    protected _onProgressItem(item: OFileItem, progress: number): void;
    protected _onProgressAll(progress: number): void;
    protected _onSuccessItem(item: OFileItem, response: any): void;
    protected _onSuccessAll(response: any): void;
    protected _onErrorItem(item: OFileItem, error: any): void;
    protected _onErrorAll(error: any): void;
    protected _onCancelItem(item: OFileItem): void;
    protected _onCancelAll(): void;
    protected _onCompleteItem(item: OFileItem): void;
    protected _onCompleteAll(): void;
    protected _getReadyItems(): OFileItem[];
    protected _getTotalProgress(value?: number): number;
}
