import { OnInit, AfterViewInit, EventEmitter, QueryList, ChangeDetectorRef } from '@angular/core';
import { BehaviorSubject } from 'rxjs';
import { WorkItemModel } from '../../models/work-item';
import { WorkItemService, TaxonomyFieldDefinitionService } from 'e5core-angular-services';
import { E5coreUiWorkRelatedItemsBaseComponent } from './component/e5core-ui-work-related-items-base';
import { ViewerDisplayEvent } from '../../events/viewer-display-event';
import { OpenWorkEvent } from '../../events/open-work-event';
import { CategorizationChangeEvent } from '../../events/categorization-change-event';
import { KeyValuePair } from '../../util/key-value-pair';
export declare class E5coreUiWorkRelatedItemsComponent implements AfterViewInit, OnInit {
    private workItemService;
    private fieldDefinitonServices;
    private changeDetectorRef;
    workItem$: BehaviorSubject<WorkItemModel>;
    findId: number;
    createButtonText: string;
    fieldsToShow: KeyValuePair[];
    readonly: boolean;
    pagesizes: number[];
    showCreateChildButton: boolean;
    showDefinedChildrenOnly: boolean;
    workItemSelectEvent: EventEmitter<OpenWorkEvent>;
    attachmentSelectEvent: EventEmitter<ViewerDisplayEvent>;
    categorisationChangeEvent: EventEmitter<CategorizationChangeEvent>;
    createChildWorkItemEvent: EventEmitter<OpenWorkEvent>;
    workId: string;
    selectedPage: any;
    selectedCategory: any;
    labels: string[];
    workRelatedItemsComponents: QueryList<E5coreUiWorkRelatedItemsBaseComponent>;
    constructor(workItemService: WorkItemService, fieldDefinitonServices: TaxonomyFieldDefinitionService, changeDetectorRef: ChangeDetectorRef);
    ngOnInit(): void;
    private setLabel;
    private populateWorkClassChildren;
    private populateWorkRelatedItems;
    private convertToUiModel;
    private processChildren;
    private populateDataFields;
    ngAfterViewInit(): void;
    CreateChildWorkItem(selectedCategory: any): void;
    onCreateChildWorkItem(): void;
    onCategorizationChange($event: CategorizationChangeEvent): void;
    onWorkItemSelect(openWorkEvent: OpenWorkEvent): void;
    onAttachmentSelect(viewerDisplayEvent: ViewerDisplayEvent): void;
    onPageEvent(event: any): void;
}
