import { EventEmitter, OnInit } from '@angular/core';
import { FormComponent } from '@colijnit/corecomponents_v12';
import { DocumentPublication } from "@colijnit/articleapi/build/enum/refcode/document-publication.enum";
import { StoreGroup } from "@colijnit/mainapi/build/model/store-group.bo";
import { PromptService } from "@colijnit/corecomponents_v12";
import { CoDocument } from "@colijnit/mainapi/build/model/co-document.bo";
import { TagCategory } from "../../enum/tag-category.enum";
import { FilesUploadConfigObjects } from "../../enum/files-upload-config-objects";
import { TableName } from "../../enum/table-name.enum";
import { FileType } from "../../enum/file-type";
import { DocumentEmailReport } from "../../enum/document-email-report.enum";
import { TagsComponentConfigNames } from "../../enum/tags-component-config-names";
import { DomainMultipleName } from "../../enum/domain-multiple-name.enum";
import { TagTreeItem } from "../../model/tag-tree-item.bo";
import { FileTypeImagePipe } from "../../pipe/file-type-image.pipe";
import { Icon } from "../../enum/icon.enum";
import { IconCacheService } from "../../service/icon-cache.service";
export declare class FileUploadPopupComponent implements OnInit {
    private _promptService;
    private _fileTypeImgPipe;
    iconCacheService: IconCacheService;
    readonly icon: typeof Icon;
    form: FormComponent;
    useWithoutSettingProps: boolean;
    hasPublicAccessVisible: boolean;
    showDocumentReportPicker: boolean;
    set documentUnderEdit(doc: CoDocument);
    get documentUnderEdit(): CoDocument;
    set readonly(value: boolean);
    set filesUploadConfigObjects(value: FilesUploadConfigObjects);
    tagCategory: TagCategory;
    medicalUserGroups: boolean;
    displayReadWriteAccess: boolean;
    tagReferenceTable: TableName;
    documentKey: string;
    documentTable: string;
    fileType: FileType;
    addDocumentByUrl: boolean;
    readonly documentChangeEvent: EventEmitter<CoDocument>;
    readonly popupCloseEvent: EventEmitter<void>;
    showClass(): boolean;
    readonly documentPublication: typeof DocumentPublication;
    readonly documentEmailReports: typeof DocumentEmailReport;
    get showReadWriteAccess(): boolean;
    get filesUploadConfigObjects(): FilesUploadConfigObjects;
    get isWorkability(): boolean;
    get docUnderEditIsReadOnly(): boolean;
    get thumbnail(): string;
    get popupHeader(): string;
    get publicationConfigName(): string;
    get tagsConfigName(): TagsComponentConfigNames;
    readonly domain: typeof DomainMultipleName;
    readonly fileTypes: typeof FileType;
    _documentUnderEdit: CoDocument;
    hideCancel: boolean;
    storeGroups: StoreGroup[];
    publicationIds: number[];
    storeGroupIds: string[];
    userGroupsForWrite: number[];
    userGroupsForRead: number[];
    documentTags: TagTreeItem[];
    private _filesUploadConfigObjects;
    private _boFactory;
    private _readonly;
    private _publicationNumber;
    private _reportsNumber;
    private _thumbnail;
    constructor(_promptService: PromptService, _fileTypeImgPipe: FileTypeImagePipe, iconCacheService: IconCacheService);
    ngOnInit(): void;
    loadCollection(): Promise<void>;
    onPreviewClick(): void;
    saveDocumentUnderEditRights(): void;
    onPopupOkClick(): void;
    handlePropertyChange(refSumOfEnabledItems: number): any;
    handleReportsPropertyChange(refSumOfEnabledItems: number): any;
    onValidSubmit(): Promise<void>;
    onPopupCancelClick(): Promise<void>;
    onPopupClose(): void;
}
