/// <reference types="react" />
import { GroupPanelPartInitParameters, IContentRenderer } from '../../../groupview/types';
import { GroupviewPanel } from '../../../groupview/groupviewPanel';
import { PanelUpdateEvent } from '../../../panel/types';
import { ReactPortalStore } from '../../react';
import { IDockviewPanelProps } from '../dockview';
export declare class ReactContentRenderer implements IContentRenderer {
    readonly id: string;
    private readonly component;
    private readonly reactPortalStore;
    private _hostedContainer;
    private _element;
    private part?;
    private _group;
    private parameters;
    get element(): HTMLElement;
    get onDidBlur(): import("../../..").Event<void>;
    get onDidFocus(): import("../../..").Event<void>;
    constructor(id: string, component: React.FunctionComponent<IDockviewPanelProps>, reactPortalStore: ReactPortalStore);
    focus(): void;
    init(parameters: GroupPanelPartInitParameters): void;
    toJSON(): {
        id: string;
    };
    update(params: PanelUpdateEvent): void;
    updateParentGroup(group: GroupviewPanel, isPanelVisible: boolean): void;
    layout(width: number, height: number): void;
    close(): Promise<boolean>;
    dispose(): void;
}
