ag-grid-community
Version:
Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
60 lines (59 loc) • 2.69 kB
TypeScript
import type { GridApi } from './api/gridApi';
import type { Context } from './context/context';
import type { GridOptions } from './entities/gridOptions';
import type { IFrameworkOverrides } from './interfaces/iFrameworkOverrides';
import type { Module } from './interfaces/iModule';
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export interface GridParams {
globalListener?: (...args: any[]) => any;
globalSyncListener?: (...args: any[]) => any;
frameworkOverrides?: IFrameworkOverrides;
providedBeanInstances?: {
[key: string]: any;
};
withinStudio?: boolean;
/**
* Modules to be registered directly with this grid instance.
*/
modules?: Module[];
}
export interface Params {
/**
* Modules to be registered directly with this grid instance.
*/
modules?: Module[];
}
/**
* Creates a grid inside the provided HTML element.
* @param eGridDiv Parent element to contain the grid.
* @param gridOptions Configuration for the grid.
* @param params Individually register AG Grid Modules to this grid.
* @returns api to be used to interact with the grid.
*/
export declare function createGrid<TData>(eGridDiv: HTMLElement, gridOptions: GridOptions<TData>, params?: Params): GridApi<TData>;
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export declare class GridCoreCreator {
/**
* @param eOutermostGridOwned the outermost element owned by grid code, the parent of which is application-owned
* @param eGridDiv the element into which the grid UI should be appended - the inner element of the styled root
*/
create(eOutermostGridOwned: HTMLElement, eGridDiv: HTMLElement, providedOptions: GridOptions, createUi: (context: Context) => void, acceptChanges?: (context: Context) => void, params?: GridParams, _destroyCallback?: () => void): GridApi;
private getRegisteredModules;
private registerModuleFeatures;
private createProvidedBeans;
private createBeansList;
}
/**
* Returns the `GridApi` associated with a grid
*
* The `gridElement` argument can be:
* - the grid ID as determined by the `gridId` grid option
* - a DOM node or a CSS selector string identifying a DOM node. This can point
* to any element within a grid, or to the parent element of the grid if the
* grid is the first child.
*/
export declare function getGridApi(gridElement: Element | string | null | undefined): GridApi | undefined;
/**
* Returns the `Element` instance associated with the grid instance referred to by `GridApi`
*/
export declare function getGridElement(api: GridApi): Element | undefined;