import { VuiTheme } from "../theme/types.js";
import { SystemProp, VariantsType } from "@xstyled/system";

//#region src/system/space.d.ts
type SpaceGetter = VariantsType<VuiTheme['spaces']>;
type MarginProp = SystemProp<SpaceGetter, VuiTheme>;
type MarginProps = {
  m?: MarginProp;
  lastM?: MarginProp;
};
type MarginTopProp = SystemProp<SpaceGetter, VuiTheme>;
type MarginTopProps = {
  mt?: MarginTopProp;
  lastMt?: MarginTopProp;
};
type MarginRightProp = SystemProp<SpaceGetter, VuiTheme>;
type MarginRightProps = {
  mr?: MarginRightProp;
  lastMr?: MarginRightProp;
};
type MarginBottomProp = SystemProp<SpaceGetter, VuiTheme>;
type MarginBottomProps = {
  mb?: MarginBottomProp;
  lastMb?: MarginBottomProp;
};
type MarginLeftProp = SystemProp<SpaceGetter, VuiTheme>;
type MarginLeftProps = {
  ml?: MarginLeftProp;
  lastMl?: MarginLeftProp;
};
type MarginXProp = SystemProp<SpaceGetter, VuiTheme>;
type MarginXProps = {
  mx?: MarginXProp;
  lastMx?: MarginXProp;
};
type MarginYProp = SystemProp<SpaceGetter, VuiTheme>;
type MarginYProps = {
  my?: MarginYProp;
  lastMy?: MarginYProp;
};
type PaddingProp = SystemProp<SpaceGetter, VuiTheme>;
type PaddingProps = {
  p?: PaddingProp;
  lastP?: PaddingProp;
};
type PaddingTopProp = SystemProp<SpaceGetter, VuiTheme>;
type PaddingTopProps = {
  pt?: PaddingTopProp;
  lastPt?: PaddingTopProp;
};
type PaddingRightProp = SystemProp<SpaceGetter, VuiTheme>;
type PaddingRightProps = {
  pr?: PaddingRightProp;
  lastPr?: PaddingRightProp;
};
type PaddingBottomProp = SystemProp<SpaceGetter, VuiTheme>;
type PaddingBottomProps = {
  pb?: PaddingBottomProp;
  lastPb?: PaddingBottomProp;
};
type PaddingLeftProp = SystemProp<SpaceGetter, VuiTheme>;
type PaddingLeftProps = {
  pl?: PaddingLeftProp;
  lastPl?: PaddingLeftProp;
};
type PaddingXProp = SystemProp<SpaceGetter, VuiTheme>;
type PaddingXProps = {
  px?: PaddingXProp;
  lastPx?: PaddingXProp;
};
type PaddingYProp = SystemProp<SpaceGetter, VuiTheme>;
type PaddingYProps = {
  py?: PaddingYProp;
  lastPy?: PaddingYProp;
};
type SpaceXProp = SystemProp<SpaceGetter, VuiTheme>;
type SpaceXProps = {
  spaceX?: SpaceXProp;
};
type SpaceYProp = SystemProp<SpaceGetter, VuiTheme>;
type SpaceYProps = {
  spaceY?: SpaceYProp;
};
type SpaceXReverseProp = SystemProp<SpaceGetter, VuiTheme>;
type SpaceXReverseProps = {
  spaceXReverse?: SpaceXReverseProp;
};
type SpaceYReverseProp = SystemProp<SpaceGetter, VuiTheme>;
type SpaceYReverseProps = {
  spaceYReverse?: SpaceYReverseProp;
};
type SpaceProps = MarginProps & MarginTopProps & MarginRightProps & MarginBottomProps & MarginLeftProps & MarginXProps & MarginYProps & PaddingProps & PaddingTopProps & PaddingRightProps & PaddingBottomProps & PaddingLeftProps & PaddingXProps & PaddingYProps & SpaceXProps & SpaceYProps & SpaceXReverseProps & SpaceYReverseProps;
//#endregion
export { MarginBottomProps, MarginLeftProps, MarginProps, MarginRightProps, MarginTopProps, MarginXProps, MarginYProps, PaddingBottomProps, PaddingLeftProps, PaddingProps, PaddingRightProps, PaddingTopProps, PaddingXProps, PaddingYProps, SpaceGetter, SpaceProps, SpaceXProps, SpaceXReverseProps, SpaceYProps, SpaceYReverseProps };

//# sourceMappingURL=space.d.ts.map