import { AfterViewInit, OnDestroy, QueryList, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { ContextService, PaneRouteData, UrlManagerService } from '@nakedobjects/services';
import { RecentItemsViewModel, RecentItemViewModel, ViewModelFactoryService, DragAndDropService } from '@nakedobjects/view-models';
import { IActionHolder } from '../action/action.component';
import { PaneComponent } from '../pane/pane';
import { RowComponent } from '../row/row.component';
import * as i0 from "@angular/core";
export declare class RecentComponent extends PaneComponent implements AfterViewInit, OnInit, OnDestroy {
    private readonly viewModelFactory;
    private readonly dragAndDrop;
    constructor(activatedRoute: ActivatedRoute, urlManager: UrlManagerService, context: ContextService, viewModelFactory: ViewModelFactoryService, dragAndDrop: DragAndDropService);
    private clearButton;
    private clearSelectedButton;
    private sortByUsageButton;
    private sortByTypeButton;
    private sortByTitleButton;
    actionChildren?: QueryList<RowComponent>;
    private sub?;
    private ddSub?;
    dropZones: string[];
    recent?: RecentItemsViewModel;
    paneRouteData?: PaneRouteData;
    title: string;
    items: () => RecentItemViewModel[];
    get actionHolders(): IActionHolder[];
    hasItems(): boolean;
    private clear;
    private clearDisabled;
    private clearSelected;
    private clearSelectedDisabled;
    private sortByUsage;
    private sortByUsageDisabled;
    private sortByType;
    private sortByTypeDisabled;
    private sortByTitle;
    private sortByTitleDisabled;
    private getMessage;
    protected setup(routeData: PaneRouteData): void;
    focusOnFirstRow(rows?: QueryList<RowComponent>): void;
    ngAfterViewInit(): void;
    setDropZones(ids: string[]): void;
    ngOnInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<RecentComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<RecentComponent, "nof-recent", never, {}, {}, never, never, false, never>;
}
