import type { EditCell, ColumnDataSchemaModel, HyperFunc, VNode, EditorBase } from '@revolist/revogrid';
import { Injector, Type } from '@angular/core';
import { AngularElement } from './renderer';
/**
 * Data passed to editor
 */
export type EditorType = {
    column: ColumnDataSchemaModel;
    save: (value: any, preventFocus?: boolean) => void;
    close: (focusNext?: boolean) => void;
} & Partial<EditCell>;
export declare class EditorAdapter implements EditorBase {
    private EditorComponent;
    private injector;
    column: ColumnDataSchemaModel;
    private save;
    private close;
    element: AngularElement | null;
    editCell?: EditCell;
    private renderedComponent;
    constructor(EditorComponent: Type<any>, injector: Injector, column: ColumnDataSchemaModel, save: (value: any, preventFocus?: boolean) => void, close: (focusNext?: boolean) => void);
    componentDidRender(): void;
    disconnectedCallback(): void;
    render(h: HyperFunc<VNode>): VNode;
}
