import * as React from 'react'; import { ReactElement, ReactNode } from 'react'; import { ComponentsOverrides, TabProps as MuiTabProps } from '@mui/material'; import { ResponsiveStyleValue } from '@mui/system'; import { RaRecord } from 'ra-core'; /** * Tab element for the TabbedShowLayout. * * The `` component accepts the following props: * * - label: The string displayed for each tab * - icon: The icon to show before the label (optional). Must be a component. * - path: The string used for custom urls * * It is also available as TabbedShowLayout.Tab. * * @example * // in src/posts.js * import * as React from "react"; * import FavoriteIcon from '@mui/icons-material/Favorite'; * import PersonPinIcon from '@mui/icons-material/PersonPin'; * import { Show, TabbedShowLayout, TextField } from 'react-admin'; * * export const PostShow = () => ( * * * }> * * * * } path="metadata"> * * * * * ); * * // in src/App.js * import * as React from "react"; * import { Admin, Resource } from 'react-admin'; * * import { PostShow } from './posts'; * * const App = () => ( * * * * ); * export default App; */ export declare const Tab: (inProps: TabProps) => React.JSX.Element; export declare const TabClasses: { row: string; }; export interface TabProps extends Omit { children: ReactNode; contentClassName?: string; context?: 'header' | 'content'; count?: ReactNode; className?: string; divider?: ReactNode; icon?: ReactElement; label: string | ReactElement; path?: string; record?: RaRecord; spacing?: ResponsiveStyleValue; syncWithLocation?: boolean; value?: string | number; } declare module '@mui/material/styles' { interface ComponentNameToClassKey { RaTab: 'root' | 'row'; } interface ComponentsPropsList { RaTab: Partial; } interface Components { RaTab?: { defaultProps?: ComponentsPropsList['RaTab']; styleOverrides?: ComponentsOverrides>['RaTab']; }; } } //# sourceMappingURL=Tab.d.ts.map