import * as React from 'react'; import type { ElementType, ReactElement } from 'react'; import { type StackProps, type Theme, type TypographyProps } from '@mui/material'; import { type ComponentsOverrides } from '@mui/material/styles'; import { type Property } from 'csstype'; import { type ResponsiveStyleValue } from '@mui/system'; /** * Wrap a field or an input with a label if necessary. * * The label is displayed if: * - the field or input has a label prop that is not false, or * - the field or input has a source prop * * @example * * * */ export declare const Labeled: { (inProps: LabeledProps): React.JSX.Element; displayName: string; }; export interface LabeledProps extends StackProps { children: ReactElement; className?: string; color?: ResponsiveStyleValue | ((theme: Theme) => ResponsiveStyleValue); component?: ElementType; fullWidth?: boolean; htmlFor?: string; isRequired?: boolean; label?: string | ReactElement | boolean; resource?: string; source?: string; TypographyProps?: TypographyProps; } export declare const LabeledClasses: { label: string; fullWidth: string; }; declare module '@mui/material/styles' { interface ComponentNameToClassKey { RaLabeled: 'root' | 'label' | 'fullWidth'; } interface ComponentsPropsList { RaLabeled: Partial; } interface Components { RaLabeled?: { defaultProps?: ComponentsPropsList['RaLabeled']; styleOverrides?: ComponentsOverrides>['RaLabeled']; }; } } //# sourceMappingURL=Labeled.d.ts.map