import { ElementRef, Type, WritableSignal, Signal, OnDestroy, Injector } from '@angular/core'; import { MatDialog } from '@angular/material/dialog'; import { PermanentStorage } from '@anglr/common'; import { GridColumn, GridPlugin, MetadataGatherer, TableGridMetadata, GridPluginInstances } from '@anglr/grid'; import { Subscription } from 'rxjs'; import { DialogMetadataSelectorOptions, DialogMetadataSelector } from './dialogMetadataSelector.interface'; import * as i0 from "@angular/core"; /** * Storage state */ export interface StorageState { [id: string]: GridColumn; } /** * Component for rendering dialog metadata selector */ export declare class DialogMetadataSelectorComponent implements DialogMetadataSelector>, GridPlugin, OnDestroy { protected storage: PermanentStorage; protected dialog: MatDialog; /** * Instance of signal for obtaining metadata */ protected metadataValue: Signal | undefined | null>; /** * Metadata for dialog component */ protected metadataForDialogComponent: Signal>; /** * Options for grid plugin */ protected optionsValue: WritableSignal; /** * Instance of injector used for DI */ protected injector: Injector; /** * Subscription for metadata changes */ protected metadataChangedSubscription: Subscription | undefined | null; /** * Indication whether gahterer has been initialized */ protected gathererInitialized: boolean; /** * Instance of metadata gatherer, which is used for getting initial metadata */ protected metadataGatherer: MetadataGatherer> | undefined | null; /** * All metadata that are available */ protected allMetadata: WritableSignal | undefined | null>; /** * Array of visiblity flags for columns originaly obtained from metadata selector */ protected originalColumnsVisibility: boolean[]; /** * Component that is used for handling metadata selection itself */ protected dialogComponent: Type | undefined | null; /** * Columns for selection that are currently */ protected columnsForSelection: WritableSignal; /** * @inheritdoc */ gridPlugins: GridPluginInstances | undefined | null; /** * @inheritdoc */ pluginElement: ElementRef; /** * @inheritdoc */ get options(): DialogMetadataSelectorOptions; set options(options: DialogMetadataSelectorOptions); /** * @inheritdoc */ get metadata(): Signal | undefined | null>; constructor(storage: PermanentStorage, dialog: MatDialog, options?: DialogMetadataSelectorOptions); /** * Called when component is destroyed */ ngOnDestroy(): void; /** * @inheritdoc */ show(): void; /** * @inheritdoc */ resetMetadata(): void; /** * @inheritdoc */ setMetadataGatherer(gatherer: MetadataGatherer>): void; /** * @inheritdoc */ initialize(force: boolean): void; /** * @inheritdoc */ initOptions(): void; /** * @inheritdoc */ invalidateVisuals(): void; /** * Initialize metadata */ protected initMetadata(): void; /** * Saves current state to storage */ protected saveToStorage(): void; /** * Gets stored storage state */ protected loadFromStorage(): StorageState | undefined | null; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } //# sourceMappingURL=dialogMetadataSelector.component.d.ts.map