import { ElementType, ReactNode } from 'react';
import { TabProps } from '@material-ui/core/Tab';
/** @public */
export type SettingsLayoutRouteProps = {
    path: string;
    title: string;
    children: JSX.Element;
    tabProps?: TabProps<ElementType, {
        component?: ElementType;
    }>;
};
export declare const LAYOUT_DATA_KEY = "plugin.user-settings.settingsLayout";
export declare const LAYOUT_ROUTE_DATA_KEY = "plugin.user-settings.settingsLayoutRoute";
/** @public */
export type SettingsLayoutProps = {
    title?: string;
    subtitle?: string;
    children?: ReactNode;
};
/**
 * @public
 */
export declare const SettingsLayout: {
    (props: SettingsLayoutProps): import("react/jsx-runtime").JSX.Element;
    Route: (props: SettingsLayoutRouteProps) => null;
};
