import { FileFlow } from './../../resources/elements/flow-uploader';
import { PictureHelper, PictureType } from '../files/picture-helper';
import { BindingEngine } from 'aurelia-framework';
import { DialogService } from 'aurelia-dialog';
import breeze from 'breeze-client';
export declare class UIPictures {
    private pictureHelper;
    private bindingEngine;
    private dialogService;
    pictures: (PictureType & breeze.Entity)[];
    tagPropertyName: string;
    creatorPropertyPath: string;
    tagText: string | ((pict: any) => string);
    uploadButton: Element;
    pictureAddedFn: (file: FileFlow) => any;
    pictureUploadedFn: (file: FileFlow) => {};
    accept: string;
    folderName: string;
    canEdit: boolean;
    canRotate: boolean;
    canDelete: boolean;
    canDownload: boolean;
    showEditActions: boolean;
    showName: boolean;
    showCreatorInformations: boolean;
    deletePictureFn: () => {};
    resizePicture: boolean;
    autoConvert: boolean;
    selectedPictures: (PictureType & breeze.Entity)[];
    useUniqueName: boolean;
    private disposables;
    constructor(pictureHelper: PictureHelper, bindingEngine: BindingEngine, dialogService: DialogService);
    get isSelectable(): boolean;
    attached(): void;
    private addObserverIsSelected;
    detached(): void;
    getTag(picture: any): string;
    getCreator(picture: any): string;
    rotatePicture(pictureEntity: (PictureType & breeze.Entity), clockwise: boolean): Promise<void>;
    editPicture(pictureEntity: (PictureType & breeze.Entity)): Promise<void>;
    downloadPicture(pictureEntity: (PictureType & breeze.Entity)): Promise<void>;
}
