import { OnDestroy, OnInit } from '@angular/core';
import { DatagridFieldDirective } from './datagrid-field.directive';
import { ClrDatagrid, ClrDatagridHideableColumn } from '@clr/angular';
import { StatePersistenceKeyDirective } from './state-persistence-key.directive';
import { Subject } from 'rxjs';
import * as i0 from "@angular/core";
export declare class ColumnHiddenStatePersistenceDirective implements OnInit, OnDestroy {
    private columnDirective;
    private statePersistenceKey;
    private datagrid;
    private hideableColumnDirective;
    destroy$: Subject<void>;
    constructor(columnDirective: DatagridFieldDirective, statePersistenceKey: StatePersistenceKeyDirective, datagrid: ClrDatagrid, hideableColumnDirective: ClrDatagridHideableColumn);
    ngOnInit(): void;
    private initHiddenState;
    private setHiddenState;
    private readStoredState;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ColumnHiddenStatePersistenceDirective, [{ optional: true; }, { optional: true; }, null, null]>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<ColumnHiddenStatePersistenceDirective, "[clrDgHideableColumn]", never, {}, {}, never, never, false, never>;
}
