import { ColumnDataSchemaModel, EditCell, EditorBase, HyperFunc, VNode } from '@revolist/revogrid';
import { Component } from 'svelte';
import { SvelteElement } from './renderer';
export type EditorType = Partial<EditCell> & {
    column: ColumnDataSchemaModel;
    save: (value: any, preventFocus?: boolean) => void;
    close: (focusNext?: boolean) => void;
    [key: string]: any;
};
export declare class SvelteEditorAdapter implements EditorBase {
    private EditorComponent;
    column: ColumnDataSchemaModel;
    private save;
    private close;
    element: SvelteElement | null;
    editCell?: EditCell;
    private renderedComponent;
    constructor(EditorComponent: Component<EditorType>, column: ColumnDataSchemaModel, save: (value: any, preventFocus?: boolean) => void, close: (focusNext?: boolean) => void);
    beforeUpdate(): void;
    beforeDisconnect(): void;
    beforeAutoSave(value?: any): any;
    componentDidRender(): void;
    disconnectedCallback(): void;
    getValue(): any;
    render(h: HyperFunc<VNode>): VNode;
}
