import * as React from 'react';
import { PaneviewPanelApi } from '../../api/paneviewPanelApi';
import { PaneviewApi } from '../../api/component.api';
import { PanelCollection, PanelParameters } from '../types';
import { PaneviewDropEvent2 } from '../../paneview/draggablePaneviewPanel';
export interface PaneviewReadyEvent {
    api: PaneviewApi;
}
export interface IPaneviewPanelProps<T extends {
    [index: string]: any;
} = any> extends PanelParameters<T> {
    api: PaneviewPanelApi;
    containerApi: PaneviewApi;
    title: string;
}
export interface PaneviewDropEvent extends PaneviewDropEvent2 {
    api: PaneviewApi;
}
export interface IPaneviewReactProps {
    onReady?: (event: PaneviewReadyEvent) => void;
    components?: PanelCollection<IPaneviewPanelProps>;
    headerComponents?: PanelCollection<IPaneviewPanelProps>;
    className?: string;
    disableAutoResizing?: boolean;
    disableDnd?: boolean;
    onDidDrop?(event: PaneviewDropEvent): void;
}
export declare const PaneviewReact: React.ForwardRefExoticComponent<IPaneviewReactProps & React.RefAttributes<HTMLDivElement>>;
