import { SpacingValue } from '../theme/types'; import { UniversalSystemProps } from './universal'; /** Re-export SpacingValue from theme types */ export type { SpacingValue } from '../theme/types'; /** Base system props that include universal props */ export type BaseSystemProps = UniversalSystemProps; /** Enhanced spacing prop types with CSS value support */ export type SpacingProps = BaseSystemProps & { /** All margins */ m?: SpacingValue; /** Horizontal margins (left + right) */ mx?: SpacingValue; /** Vertical margins (top + bottom) */ my?: SpacingValue; /** Margin top */ mt?: SpacingValue; /** Margin right */ mr?: SpacingValue; /** Margin bottom */ mb?: SpacingValue; /** Margin left */ ml?: SpacingValue; /** All padding */ p?: SpacingValue; /** Horizontal padding (left + right) */ px?: SpacingValue; /** Vertical padding (top + bottom) */ py?: SpacingValue; /** Padding top */ pt?: SpacingValue; /** Padding right */ pr?: SpacingValue; /** Padding bottom */ pb?: SpacingValue; /** Padding left */ pl?: SpacingValue; }; /** * Enhanced utility function to generate spacing styles from props * Now supports RTL-aware spacing using logical properties on web and swapped values on native * * @param props - The spacing props to convert to styles * @param isRTL - Whether the current direction is RTL (optional, defaults to false for backwards compatibility) * @returns A record of CSS style properties */ export declare function getSpacingStyles(props: SpacingProps, isRTL?: boolean): Record; /** * Helper to extract spacing props from component props * @param props - The component props to extract spacing props from * @returns An object containing separated spacing props and other props */ export declare function extractSpacingProps(props: T): { spacingProps: SpacingProps; otherProps: Omit; };