/** * Centralized field configuration for MUI adapter * * This file contains all field-related design constants that can be easily modified. * Changes here will apply globally across all field components. */ import type { SxProps, Theme } from '@mui/material'; /** * Standard field heights for different sizes * Modify these values to change heights globally */ export declare const FIELD_HEIGHTS: { readonly small: 40; readonly medium: 48; }; /** * Field padding configuration */ export declare const FIELD_PADDING: { readonly horizontal: 14; }; /** * Calculate input padding for fields with custom bordered containers * * @param size - Field size ('small' | 'medium') * @returns Padding string in format 'vertical horizontal' (e.g., '11px 14px') * * Formula: (containerHeight - borderTop - borderBottom - lineHeight) / 2 * - small: (40 - 1 - 1 - 23) / 2 = 15 / 2 = 7.5px ≈ 8.5px * - medium: (48 - 1 - 1 - 23) / 2 = 23 / 2 = 11.5px ≈ 11.5px */ export declare function getContainerInputPadding(size?: 'small' | 'medium'): string; /** * Get sx styles for consistent field sizing * * This function generates MUI sx props to enforce consistent field heights * across all input components (TextField, Select, Autocomplete, AmountInput, etc.) * * @param size - Field size ('small' | 'medium') * @param userStyle - Optional user-provided React.CSSProperties (from DSL style prop) * @returns SxProps with standardized field dimensions * * @example * ```tsx * // In Field components: convert DSL style to MUI sx * * ``` */ export declare function getFieldSx(size?: 'small' | 'medium', userStyle?: React.CSSProperties): SxProps; /** * Get sx styles for FormControl wrapper * Some components need consistent height on the FormControl level */ export declare function getFormControlSx(size?: 'small' | 'medium', userStyle?: React.CSSProperties): SxProps; /** * Get sx styles for non-input field containers * Used for Checkbox, Switch, Rating, Slider, ButtonGroup, Radio fields * to ensure vertical alignment with input fields when displayed inline * * @param size - Field size ('small' | 'medium') * @param userStyle - Optional user-provided React.CSSProperties * @returns SxProps with minimum height for alignment * * @example * ```tsx * // Wrap the control in a Box with minimum height * * * * ``` */ export declare function getControlContainerSx(size?: 'small' | 'medium', userStyle?: React.CSSProperties): SxProps; /** * Get border styles for combo fields (PhoneField, DateRangeField) * Uses box-shadow inset to avoid affecting box model * Supports theme customization via CSS Variables * * @param error - Whether the field is in error state * @returns SxProps with border, hover, and focus styles * * @example * ```tsx * // In PhoneField or DateRangeField container * * ``` */ export declare function getComboFieldBorderSx(error?: boolean): SxProps; //# sourceMappingURL=fieldConfig.d.ts.map