import type { AgBaseBean } from './agBaseBean'; export type AgEventHandlers = { [K in TEventKey]?: (event?: TEvent) => void; }; /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */ export interface IContext { createBean>(bean: T, afterPreCreateCallback?: (bean: AgBaseBean) => void): T; getBean(name: T): TBeanCollection[T]; getBeans(): TBeanCollection; destroyBean(bean: AgBaseBean | null | undefined): undefined; destroyBeans>(beans: (T | null | undefined)[]): T[]; getId(): string; destroy(): void; isDestroyed(): boolean; readonly instanceId: number; } /** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */ export type ClassImp = new (...args: []) => object;