import type { AriaAttributes } from 'react'; import type { AssignableElementProps, BaseProps, ChildrenProps, StylableProps } from '~/types/component'; import type { SpaceToken } from '~/types/tokens'; import type { ValueOrResponsive } from '~/utilities/opaque-responsive'; export interface SpacerProps extends AssignableElementProps, AriaAttributes, BaseProps, Omit, ChildrenProps { /** Spacing to apply to all margins */ m?: ValueOrResponsive; /** Spacing to apply to top and bottom margins */ mv?: ValueOrResponsive; /** Spacing to apply to left and right margins */ mh?: ValueOrResponsive; /** Spacing to apply to top margin */ mt?: ValueOrResponsive; /** Spacing to apply to bottom margin */ mb?: ValueOrResponsive; /** Spacing to apply to left margin */ ml?: ValueOrResponsive; /** Spacing to apply to right margin */ mr?: ValueOrResponsive; /** Spacing to apply to all padding */ p?: ValueOrResponsive; /** Spacing to apply to top and bottom padding */ pv?: ValueOrResponsive; /** Spacing to apply to left and right padding */ ph?: ValueOrResponsive; /** Spacing to apply to top padding */ pt?: ValueOrResponsive; /** Spacing to apply to bottom padding */ pb?: ValueOrResponsive; /** Spacing to apply to left padding */ pl?: ValueOrResponsive; /** Spacing to apply to right padding */ pr?: ValueOrResponsive; /** * Custom className applied to the root element * * @deprecated do not mix usage of `Spacer` with CSS modules */ className?: string; }