import { Case } from '../../resources/interface/case';
import { Observable, Subscription } from 'rxjs';
import { HeaderType } from '../../header/models/header-type';
import { CaseViewService } from './service/case-view-service';
import { AbstractViewWithHeadersComponent } from '../abstract/view-with-headers';
import { Authority } from '../../resources/interface/authority';
import { OverflowService } from '../../header/services/overflow.service';
import { NewCaseCreationConfigurationData } from '../../side-menu/content-components/new-case/model/new-case-injection-data';
import { OnDestroy } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import * as i0 from "@angular/core";
export declare abstract class AbstractCaseViewComponent extends AbstractViewWithHeadersComponent implements OnDestroy {
    protected _caseViewService: CaseViewService;
    protected _overflowService?: OverflowService;
    protected _authority: Array<Authority>;
    protected _newCaseCreationConfig: NewCaseCreationConfigurationData;
    protected _activatedRoute?: ActivatedRoute;
    readonly MINIMAL_OFFSET = 120;
    readonly headerType: HeaderType;
    cases$: Observable<Array<Case>>;
    loading: boolean;
    canCreate: boolean;
    authorityToCreate: Array<string>;
    protected canCreateSub: Subscription;
    protected constructor(_caseViewService: CaseViewService, _overflowService?: OverflowService, _authority?: Array<Authority>, _newCaseCreationConfig?: NewCaseCreationConfigurationData, _activatedRoute?: ActivatedRoute);
    get newCaseCreationConfig(): NewCaseCreationConfigurationData;
    abstract handleCaseClick(clickedCase: Case): void;
    hasAuthority(): boolean;
    getWidth(): string;
    getOverflowStatus(): boolean;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AbstractCaseViewComponent, [null, null, null, { optional: true; }, null]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AbstractCaseViewComponent, "ncc-abstract-case-view", never, {}, {}, never, never, false, never>;
}
