import { AfterViewInit, ComponentRef, ComponentFactoryResolver, ElementRef, EventEmitter, OnDestroy, InjectionToken, RendererFactory2 } from '@angular/core'; import { DragAndDropGhostComponent } from './../../components/drag-and-drop-ghost/drag-and-drop-ghost.component'; import { TablejsGridProxy } from './../../shared/classes/tablejs-grid-proxy'; import { GridService } from './../../services/grid/grid.service'; import { DirectiveRegistrationService } from './../../services/directive-registration/directive-registration.service'; import { IColumnData } from './../../shared/interfaces/i-column-data'; import { ScrollViewportDirective } from './../../directives/scroll-viewport/scroll-viewport.directive'; import { ScrollDispatcherService } from './../../services/scroll-dispatcher/scroll-dispatcher.service'; import { OperatingSystemService } from './../../services/operating-system/operating-system.service'; import { ResizeSensor } from 'css-element-queries'; import { Subject, Subscription } from 'rxjs'; import { Overlay, OverlayConfig, OverlayRef, PositionStrategy } from '@angular/cdk/overlay'; import { ComponentType } from '@angular/cdk/portal'; import { IColumnHierarchy } from '../../shared/interfaces/i-column-hierarchy'; import { IColumnHideChange } from '../../shared/interfaces/events/i-column-hide-change'; import * as i0 from "@angular/core"; export declare class GridDirective extends TablejsGridProxy implements AfterViewInit, OnDestroy { private elementRef; private resolver; private gridService; private directiveRegistrationService; private document; private overlay; private scrollDispatcherService; private operatingSystem; private rendererFactory; dragging: boolean; reordering: boolean; startX: number; startY: number; stylesByClass: any[]; id: string | null; viewport: HTMLElement | null | undefined; viewportID: string | null; currentClassesToResize: string[]; startingWidths: number[]; minWidths: number[]; totalComputedMinWidth: number; totalComputedWidth: number; defaultTableMinWidth: number; gridTemplateClasses: string[]; gridOrder: number[]; classWidths: any[]; gridTemplateTypes: any[]; draggingColumn: HTMLElement | null; colRangeGroups: number[][][]; lastDraggedOverElement: any; lastDraggedGroupIndex: number; lastDraggedOverRect: ClientRect | null; lastDraggedGroupBoundingRects: ClientRect[] | null; lastMoveDirection: number; resizableColumns: HTMLElement[]; resizableGrips: HTMLElement[]; reorderGrips: HTMLElement[]; reorderableColumns: HTMLElement[]; columnsWithDataClasses: HTMLElement[]; rows: HTMLElement[]; infiniteScrollViewports: HTMLElement[]; mutationResizableColumns: HTMLElement[]; mutationResizableGrips: HTMLElement[]; mutationReorderGrips: HTMLElement[]; mutationReorderableColumns: HTMLElement[]; mutationColumnsWithDataClasses: HTMLElement[]; mutationRows: HTMLElement[]; mutationInfiniteScrollViewports: HTMLElement[]; headTag: HTMLHeadElement; styleContent: string; headStyle: HTMLStyleElement | null; styleList: HTMLStyleElement[]; initialWidths: any[]; initialWidthsAreSet: boolean | undefined; lastColumns: any[]; contentResizeSensor: ResizeSensor | null; observer: MutationObserver | null; isCustomElement: boolean; pointerListenerFunc: any; parentGroups: Element[][]; colData: IColumnData | null; colDataGroups: IColumnData[][]; elementsWithHighlight: any[]; dragAndDropGhostComponent: DragAndDropGhostComponent | null; dragOffsetX: number; dragOffsetY: number; reorderHandleColOffset: number; scrollbarWidth: number; initialWidthSettingsSubscription$: Subscription; reorderableClass: string; widthStyle: HTMLStyleElement | null; widthStyleFragment: DocumentFragment | null; reorderHighlightStyle: HTMLStyleElement | null; reorderHighlightStyleFragment: DocumentFragment | null; subGroupStyles: (HTMLStyleElement | null)[]; subGroupFragments: (DocumentFragment | null)[]; gridOrderStyles: (HTMLStyleElement | null)[]; gridOrderFragments: (DocumentFragment | null)[]; subGroupStyleObjs: any; scrollbarAdjustmentFragment: DocumentFragment | null; scrollbarAdjustmentStyle: HTMLStyleElement | null; resizeMakeUpPercent: number; resizeMakeUpPerColPercent: number; scrollViewportDirective: ScrollViewportDirective | null; overlayRef: OverlayRef; hiddenColumnIndices: number[]; hiddenColumnChanges: Subject; private hiddenColumnChangesSubscription$; HIDDEN_COLUMN_CLASS: string; private injector; private DRAG_AND_DROP_GHOST_OVERLAY_DATA; private animationFrameIDs; linkClass: string | undefined; resizeColumnWidthByPercent: boolean; columnResizeStart: EventEmitter; columnResize: EventEmitter; columnResizeEnd: EventEmitter; columnReorder: EventEmitter; columnReorderStart: EventEmitter; dragOver: EventEmitter; columnReorderEnd: EventEmitter; preGridInitialize: EventEmitter; gridInitialize: EventEmitter; constructor(elementRef: ElementRef, resolver: ComponentFactoryResolver, gridService: GridService, directiveRegistrationService: DirectiveRegistrationService, document: any, overlay: Overlay, scrollDispatcherService: ScrollDispatcherService, operatingSystem: OperatingSystemService, rendererFactory: RendererFactory2); private registerDirectiveToElement; private attachMutationObserver; private updateMutations; private getChildNodes; ngAfterViewInit(): void; private onEnterFrame; canHideColumn(column: Element): boolean; getFlattenedHierarchy(): IColumnHierarchy[]; private getSubColumns; getColumnHierarchy(): any; getHierarchySubColumns(item: IColumnData, levelCount: number): IColumnHierarchy[]; checkForGridInitReady(): void; private awaitWidths; private awaitSingleFrame; private onPointerDown; private getClassWidthInPixels; private setMinimumWidths; private attachReorderGhost; private getContainerScrollCount; private onPointerMove; private getLastVisibleColumnClass; private getRangePosition; private columnIsHiddenWithClass; private getTotalGroupedColumnsVisible; private getFirstGridOrderIndexAfterColumnGroup; private getPostColumnWidthTotal; private getPostColumnMinimumWidthTotal; private getPreviousColumnWidthTotal; private updateWidthsInPercent; private updateWidthsInPixels; private fitWidthsToOneHundredPercent; private updateWidths; private generateWidthStyle; private getResizableClasses; private setResizableStyles; private addStyle; private setStyleContent; moveStyleContentToProminent(): void; private setReorderStyles; private getColSpan; private validateColumnSpansAreTheSame; private onPointerUp; private addPointerListeners; private removePointerListeners; private endDrag; private initGrid; private setGridTemplateClasses; private verifyLinkedTemplateClassesMatch; private calculateWidthsFromStyles; private emitGridInitialization; private createDragAndDropComponent; openModal(componentType: ComponentType, token: InjectionToken, data: any, positionStrategy?: PositionStrategy | null, overlayConfig?: OverlayConfig | null): ComponentRef; private createInjector; private setDragAndDropPosition; private removeDragAndDropComponent; private setParentGroups; private generateColumnGroups; private verifyLinkedGroupStructuresMatch; private setHiddenClassForAllLinkedParentHeaders; private setHiddenClassForAllLinkedHeaders; private setHiddenClassForColumnGroup; getRelatedHeaders(element: Element): (Element | any)[]; getRelatedHeader(element: Element): Element | any; private setLinkedChildren; private setLinkedHeaderContainerClasses; private addClassToLinkedHeader; private generateSubGroup; private orderSubGroups; private setColumnStyle; private setGridOrder; private getOffset; private getParentTablejsGridDirective; private elementRefUnderPoint; private getResizeGripUnderPoint; private getReorderColsUnderPoint; private getReorderHandlesUnderPoint; private getResizableElements; removeHighlights(elToExclude?: HTMLElement | null, moveDirection?: number): void; removeElementHighlight(el: HTMLElement): void; private reorderColumns; private getAverageColumnWidth; private getFirstVisibleItemWidth; private setLinkedColumnIndicesFromMaster; private updateMasterColumnIndices; private updateHiddenColumnIndices; private constructGridTemplateColumns; private getHiddenColumnIndices; private orderSubCols; private setReorderHighlightHeight; private retrieveOrCreateElementID; private generateGridID; private generateContainerID; private generateViewportID; private attachContentResizeSensor; private setScrollbarAdjustmentStyle; private clearSelection; private addResizableGrip; private addResizableColumn; private addReorderGrip; private addReorderableColumn; private addColumnsWithDataClasses; private addRow; private addInfiniteScrollViewport; private removeStylesFromHead; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } export interface ISortableWidthItem { minWidth: number; width: number; className: string; }