import s from "./index-extends.js";
import d from "./index-objectWithoutPropertiesLoose.js";
import P from "./index-resolveComponentProps.js";
import S from "./index-mergeSlotProps.js";
import c from "./index-useForkRef.js";
import u from "./index-appendOwnerState.js";
const v = ["elementType", "externalSlotProps", "ownerState", "skipResolvingSlotProps"];
function C(o) {
  var r;
  const {
    elementType: p,
    externalSlotProps: n,
    ownerState: t,
    skipResolvingSlotProps: l = !1
  } = o, i = d(o, v), e = l ? {} : P(n, t), {
    props: m,
    internalRef: a
  } = S(s({}, i, {
    externalSlotProps: e
  })), f = c(a, e == null ? void 0 : e.ref, (r = o.additionalProps) == null ? void 0 : r.ref);
  return u(p, s({}, m, {
    ref: f
  }), t);
}
export {
  C as default
};
