import { Observable } from 'rxjs'; import { ChangeDetectorRef, ElementRef, Injector, NgZone, ViewContainerRef } from '@angular/core'; import { Direction, Directionality } from '@angular/cdk/bidi'; import { PblNgridConfigService, PblNgridEvents } from '@pebula/ngrid/core'; import { PblNgridRegistryService } from './registry/registry.service'; import { PblNgridInternalExtensionApi } from '../ext/grid-ext-api'; import { PblNgridPluginContext } from '../ext/plugin-control'; import { OnPropChangedEvent } from '../ext/types'; import { ColumnApi, PblColumnStore } from './column/management'; import { PblNgridColumnWidthCalc } from './column/width-logic/column-width-calc'; import { PblNgridComponent } from './ngrid.component'; import { PblCdkTableComponent } from './pbl-cdk-table/pbl-cdk-table.component'; import { PblRowsApi } from './row/rows-api'; import { ContextApi } from './context/api'; import { PblCdkVirtualScrollViewportComponent } from './features/virtual-scroll/virtual-scroll-viewport.component'; import { Logicaps } from './logicap/index'; export interface RequiredAngularTokens { ngZone: NgZone; injector: Injector; vcRef: ViewContainerRef; cdRef: ChangeDetectorRef; elRef: ElementRef; config: PblNgridConfigService; registry: PblNgridRegistryService; dir?: Directionality; } export declare function createApis(grid: PblNgridComponent, tokens: RequiredAngularTokens): InternalExtensionApi; declare class InternalExtensionApi implements PblNgridInternalExtensionApi { readonly grid: PblNgridComponent; readonly config: PblNgridConfigService; readonly registry: PblNgridRegistryService; readonly element: HTMLElement; readonly propChanged: Observable; readonly columnStore: PblColumnStore; readonly columnApi: ColumnApi; readonly rowsApi: PblRowsApi; readonly events: Observable; readonly plugin: PblNgridPluginContext; readonly widthCalc: PblNgridColumnWidthCalc; readonly logicaps: Logicaps; get cdkTable(): PblCdkTableComponent; get contextApi(): ContextApi; get viewport(): PblCdkVirtualScrollViewportComponent; get pluginCtrl(): import("../ext/plugin-control").PblNgridPluginController; private _cdkTable; private _contextApi; private _viewPort; private _create; private dir?; private readonly _propChanged; constructor(grid: PblNgridComponent, tokens: RequiredAngularTokens); getDirection(): Direction; directionChange(): Observable; onConstructed(fn: () => void): void; onInit(fn: () => void): void; setCdkTable(cdkTable: PblCdkTableComponent): void; setViewport(viewport: PblCdkVirtualScrollViewportComponent): void; notifyPropChanged(source: any, key: any, prev: any, curr: any): void; private createPlugin; } export {};