import {
  __decorateClass
} from "../../chunks/chunk.QU3DSPNU.js";
import { styleExpressionProperty } from "../decorators/style-expression-property.js";
import {
  forSpaceTokens,
  forSpaceTokensAndCustomValues,
  forSpaceTokensSupportingNegative
} from "../helpers/index.js";
function withSizeXProps(base) {
  class DimensionPropsMixin extends base {
  }
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "width", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "min-width", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "max-width", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "inline-size", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "min-inline-size", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "max-inline-size", 2);
  return DimensionPropsMixin;
}
function withSizeYProps(base) {
  class DimensionPropsMixin extends base {
  }
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "height", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "min-height", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "max-height", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "block-size", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "min-block-size", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensAndCustomValues)
  ], DimensionPropsMixin.prototype, "max-block-size", 2);
  return DimensionPropsMixin;
}
function withMarginProps(base) {
  class MarginPropsMixin extends base {
  }
  __decorateClass([
    styleExpressionProperty(forSpaceTokensSupportingNegative)
  ], MarginPropsMixin.prototype, "margin", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensSupportingNegative)
  ], MarginPropsMixin.prototype, "margin-inline", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokensSupportingNegative)
  ], MarginPropsMixin.prototype, "margin-block", 2);
  return MarginPropsMixin;
}
function withPaddingProps(base) {
  class PaddingPropsMixin extends base {
  }
  __decorateClass([
    styleExpressionProperty(forSpaceTokens)
  ], PaddingPropsMixin.prototype, "padding", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokens)
  ], PaddingPropsMixin.prototype, "padding-inline", 2);
  __decorateClass([
    styleExpressionProperty(forSpaceTokens)
  ], PaddingPropsMixin.prototype, "padding-block", 2);
  return PaddingPropsMixin;
}
function withLayoutChildProps(base) {
  class LayoutChildPropsMixin extends base {
  }
  __decorateClass([
    styleExpressionProperty()
  ], LayoutChildPropsMixin.prototype, "align-self", 2);
  __decorateClass([
    styleExpressionProperty()
  ], LayoutChildPropsMixin.prototype, "justify-self", 2);
  __decorateClass([
    styleExpressionProperty()
  ], LayoutChildPropsMixin.prototype, "place-self", 2);
  __decorateClass([
    styleExpressionProperty()
  ], LayoutChildPropsMixin.prototype, "grid-column", 2);
  __decorateClass([
    styleExpressionProperty()
  ], LayoutChildPropsMixin.prototype, "grid-row", 2);
  __decorateClass([
    styleExpressionProperty()
  ], LayoutChildPropsMixin.prototype, "grid-area", 2);
  __decorateClass([
    styleExpressionProperty()
  ], LayoutChildPropsMixin.prototype, "flex", 2);
  __decorateClass([
    styleExpressionProperty()
  ], LayoutChildPropsMixin.prototype, "order", 2);
  return LayoutChildPropsMixin;
}
function withPositioningProps(base) {
  class PositioningPropsMixin extends base {
  }
  __decorateClass([
    styleExpressionProperty()
  ], PositioningPropsMixin.prototype, "position", 2);
  __decorateClass([
    styleExpressionProperty()
  ], PositioningPropsMixin.prototype, "transform", 2);
  __decorateClass([
    styleExpressionProperty()
  ], PositioningPropsMixin.prototype, "inset", 2);
  return PositioningPropsMixin;
}
export {
  withLayoutChildProps,
  withMarginProps,
  withPaddingProps,
  withPositioningProps,
  withSizeXProps,
  withSizeYProps
};
