import React, { Component } from 'react';
import * as Rsg from 'react-styleguidist';
import PropTypes from 'prop-types';
import { JssInjectedProps } from 'rsg-components/Styled';
interface ReactComponentProps extends JssInjectedProps {
    component: Rsg.Component & {
        subComponents?: (Rsg.Component & {
            parentComponent?: {
                href?: string;
                visibleName?: string;
            };
        })[];
    };
    depth: number;
    exampleMode?: string;
    usageMode?: string;
}
export declare const DocumentedComponentContext: React.Context<{}>;
export declare class VsgReactComponent extends Component<ReactComponentProps> {
    static propTypes: {
        classes: PropTypes.Validator<{
            [x: string]: string;
        }>;
        component: PropTypes.Validator<object>;
        depth: PropTypes.Validator<number>;
        exampleMode: PropTypes.Validator<string>;
        usageMode: PropTypes.Validator<string>;
    };
    static contextType: React.Context<import("rsg-components/Context").StyleGuideContextContents>;
    render(): JSX.Element;
}
declare const _default: React.ComponentType<Omit<ReactComponentProps, "classes">>;
export default _default;
