import { __require as requireCallBind } from "../call-bind/index.js";
import { __require as requireDefineProperties } from "../define-properties/index.js";
import { __require as requireRequireObjectCoercible } from "../es-object-atoms/RequireObjectCoercible.js";
import { __require as requireImplementation } from "./implementation.js";
import { __require as requirePolyfill } from "./polyfill.js";
import { __require as requireShim } from "./shim.js";
var string_prototype_trim;
var hasRequiredString_prototype_trim;
function requireString_prototype_trim() {
  if (hasRequiredString_prototype_trim) return string_prototype_trim;
  hasRequiredString_prototype_trim = 1;
  var callBind = requireCallBind();
  var define = requireDefineProperties();
  var RequireObjectCoercible = requireRequireObjectCoercible();
  var implementation = requireImplementation();
  var getPolyfill = requirePolyfill();
  var shim = requireShim();
  var bound = callBind(getPolyfill());
  var boundMethod = function trim(receiver) {
    RequireObjectCoercible(receiver);
    return bound(receiver);
  };
  define(boundMethod, {
    getPolyfill,
    implementation,
    shim
  });
  string_prototype_trim = boundMethod;
  return string_prototype_trim;
}
export {
  requireString_prototype_trim as __require
};
