import { IComponent } from "../../interfaces/iComponent"; import { BeanStub } from "../../context/beanStub"; export declare enum RegisteredComponentSource { DEFAULT = 0, REGISTERED = 1 } /** * B the business interface (ie IHeader) * A the agGridComponent interface (ie IHeaderComp). The final object acceptable by ag-grid */ export interface RegisteredComponent & B, B> { component: RegisteredComponentInput; componentFromFramework: boolean; source: RegisteredComponentSource; } export declare type RegisteredComponentInput & B, B> = AgGridRegisteredComponentInput | { new (): B; }; export declare type AgGridRegisteredComponentInput> = AgGridComponentFunctionInput | { new (): A; }; export declare type AgGridComponentFunctionInput = (params: any) => string | HTMLElement; export interface DeprecatedComponentName { propertyHolder: string; newComponentName: string; } export declare class UserComponentRegistry extends BeanStub { private gridOptions; private agGridDefaults; private agDeprecatedNames; private jsComponents; private frameworkComponents; private init; registerDefaultComponent>(rawName: string, component: AgGridRegisteredComponentInput): void; registerComponent>(rawName: string, component: AgGridRegisteredComponentInput): void; /** * B the business interface (ie IHeader) * A the agGridComponent interface (ie IHeaderComp). The final object acceptable by ag-grid */ registerFwComponent & B, B>(rawName: string, component: { new (): IComponent; }): void; /** * B the business interface (ie IHeader) * A the agGridComponent interface (ie IHeaderComp). The final object acceptable by ag-grid */ retrieve & B, B>(rawName: string): RegisteredComponent; private translateIfDeprecated; }