import * as i0 from '@angular/core'; import { Renderer2, OnInit, OnDestroy, ElementRef, NgZone, EventEmitter, Type, ApplicationRef, EnvironmentInjector, ChangeDetectorRef } from '@angular/core'; import { Subject } from 'rxjs'; import { DomServiceIf, EventListenerIf, TableApi, GeScrollEvent, GeMouseEvent, GeModelChangeEvent, SelectionModelIf, FocusModelIf, TableModelIf, TableOptionsIf, AreaIdent, AreaModelIf, RendererCleanupFnType, CellRendererIf } from '@guiexpert/table'; declare class DomService implements DomServiceIf { readonly renderer: Renderer2; constructor(renderer: Renderer2); setStyle(el: any, style: string, value: any): any; appendText(parent: HTMLDivElement, text: string): HTMLDivElement; addClass(div: HTMLDivElement, clazz: string): HTMLDivElement; removeClass(div: HTMLDivElement, clazz: string): HTMLDivElement; appendChild(parent: HTMLElement, child: HTMLElement): void; createElement(name: string): T; createText(text: string): HTMLElement; setAttribute(ele: HTMLElement, key: string, value: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class TableComponent implements OnInit, OnDestroy, EventListenerIf { private readonly renderer; private readonly elementRef; private readonly zone; private readonly domService; tableReady: Subject; scroll: Subject; mouseMoved: Subject; mouseDragging: Subject; mouseDraggingEnded: Subject; contextmenu: Subject; mouseClicked: Subject; modelChanged: Subject; selectionChanged: Subject; focusChanged: Subject; checkboxChanged: Subject; tableModel?: TableModelIf; tableOptions: TableOptionsIf; debounceMouseClickDelay: number; private debounceMouseClick; private tableScope?; private alive; constructor(renderer: Renderer2, elementRef: ElementRef, zone: NgZone, domService: DomService); onSelectionChanged(model: SelectionModelIf): void; onFocusChanged(model: FocusModelIf): void; onContextmenu(evt: GeMouseEvent): void; onScroll(evt: GeScrollEvent): void; onMouseMoved(evt: GeMouseEvent): void; onMouseClicked(evt: GeMouseEvent): void; onCheckboxChanged(arr: any[]): void; onModelChanged(evt: GeModelChangeEvent): void; ngOnInit(): void; ngOnDestroy(): void; onMouseDragging(evt: GeMouseEvent): void; onMouseDraggingEnd(evt: GeMouseEvent): void; private initModel; private init; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } interface ComponentRendererIf { setData(rowIndex: number, columnIndex: number, areaIdent: AreaIdent, areaModel: AreaModelIf, cellValue: any): RendererCleanupFnType | undefined; } declare class RendererWrapper> implements CellRendererIf { private componentType; private appRef; private injector; private cdr; private readonly zone; readonly event$: EventEmitter; private readonly closed$; constructor(componentType: Type>, appRef: ApplicationRef, injector: EnvironmentInjector, cdr: ChangeDetectorRef, zone: NgZone); render(cellDiv: HTMLDivElement, rowIndex: number, columnIndex: number, areaIdent: AreaIdent, areaModel: AreaModelIf, cellValue: any, domService: DomServiceIf): RendererCleanupFnType | undefined; } declare class RenderWrapperFactory { private readonly appRef; private readonly injector; private readonly zone; constructor(appRef: ApplicationRef, injector: EnvironmentInjector, zone: NgZone); create(componentType: Type>, cdr: ChangeDetectorRef): RendererWrapper>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export { DomService, RenderWrapperFactory, RendererWrapper, TableComponent }; export type { ComponentRendererIf };