import { Router } from 'aurelia-router';
import { BindingEngine, Disposable } from 'aurelia-framework';
import { Box } from '../../../../modules/box';
import { CustomLogger } from '../../../../modules/custom-logger';
import { Datacontext } from '../../../../data/data-context';
import { I18N } from 'aurelia-i18n';
import { GridOptions } from '../../utilities/ag-grid-helpers';
import { AgGridView } from '../../../../model/common-model';
import { IMenuItems } from '../../../../ui/menu/ui-menus';
import { AuthService } from '../../../../security/auth-service';
import { Config } from '../../../../config';
export interface AgGridViewFilter {
    name: string;
    agGridView: AgGridView;
    visibility: string;
    menuItems: Array<IMenuItems>;
}
export declare class AgGridViewList {
    private i18n;
    private config;
    private authService;
    private box;
    private logger;
    private bindingEngine;
    private router;
    protected element: Element;
    showAllView: boolean;
    gridOptions: GridOptions;
    defaultAgGridView: AgGridView;
    fixedFiltersObserverDisabled: boolean;
    showFilterBox: boolean;
    datacontext: Datacontext;
    private agGridSearch;
    agGridViewList: Array<AgGridView>;
    agGridViewListChanged(newValue: any, oldValue: any): void;
    setAgGridView: (agGridView: any) => void;
    afterSetAgGridView: (agGridView: any) => void;
    private allowSharedViews;
    private viewsSeparatedByVisibility;
    private showViewVisibiliyInList;
    private showSystemViewOnlyAsPublicView;
    private allViews;
    private privateViews;
    private publicViews;
    private sharedViews;
    private tabList;
    disposables: Array<Disposable>;
    private gridViewService;
    private agGridViewUserService;
    constructor(i18n: I18N, config: Config, authService: AuthService, box: Box, logger: CustomLogger, bindingEngine: BindingEngine, router: Router, element: Element);
    bind(): void;
    detached(): void;
    private addAgGridViewListObserver;
    viewsConstruct(): void;
    private canModifyAgGridView;
    private menuItemAuthor;
    private menuItemDuplicate;
    private menuItemCanShowAll;
    private getVisibilityTranslation;
    private modifyAgGridView;
    private deleteAgGridView;
    private duplicateAgGridView;
    private duplicateAgGridViewUser;
    private copyAgGridView;
    private isDefaultView;
}
