import { __require as requireType } from "../../es-errors/type.js";
import { __require as requireHasown } from "../../hasown/index.js";
import { __require as requirePropertyDescriptor } from "../helpers/records/property-descriptor.js";
var IsAccessorDescriptor;
var hasRequiredIsAccessorDescriptor;
function requireIsAccessorDescriptor() {
  if (hasRequiredIsAccessorDescriptor) return IsAccessorDescriptor;
  hasRequiredIsAccessorDescriptor = 1;
  var $TypeError = requireType();
  var hasOwn = requireHasown();
  var isPropertyDescriptor = requirePropertyDescriptor();
  IsAccessorDescriptor = function IsAccessorDescriptor2(Desc) {
    if (typeof Desc === "undefined") {
      return false;
    }
    if (!isPropertyDescriptor(Desc)) {
      throw new $TypeError("Assertion failed: `Desc` must be a Property Descriptor");
    }
    if (!hasOwn(Desc, "[[Get]]") && !hasOwn(Desc, "[[Set]]")) {
      return false;
    }
    return true;
  };
  return IsAccessorDescriptor;
}
export {
  requireIsAccessorDescriptor as __require
};
