/// <reference types="react" />
import { PureComponent } from 'react';
import { ReactNodeViewComponents } from '../factory';
import { Node as PMNode, EditorView } from '../../prosemirror';
import ProviderFactory from '../../providerFactory';
export interface ReactProsemirrorNodeProps {
    getPos: () => number;
    node: PMNode;
    providerFactory: ProviderFactory;
    components: ReactNodeViewComponents;
    view: EditorView;
    [key: string]: any;
}
export default class ReactProsemirrorNode extends PureComponent<ReactProsemirrorNodeProps, {}> {
    /**
     * All children components of ReactProsemirrorNode are React components
     * which are completely rendered by us, not Prosemirror. This also means
     * that we're responsible for rendering them, supporting keyboard navigation
     * and showing "selected" element. Wrapping ReactProsemirrorNode into HOC
     * helps us to pass "selected" prop into child components
     */
    private wrapped;
    private childIdToOffset;
    render(): JSX.Element;
    /**
     * Child node position is parent position + offset + 1
     * because each node has its own position
     * i.e. different nodes can't have the same position
     */
    private handleGetPos;
}
