System.register(["__unresolved_0", "__unresolved_1"], function (_export, _context) {
  "use strict";

  var _req, _loader, _cjsExports, __cjsMetaURL;

  _export("default", void 0);

  return {
    setters: [function (_unresolved_) {
      _req = _unresolved_.__cjsMetaURL;
    }, function (_unresolved_2) {
      _loader = _unresolved_2.default;
    }],
    execute: function () {
      _loader.define(_context.meta.url, function (exports, _require, module, __filename, __dirname) {
        var require = _loader.createRequireWithReqMap({
          "../internals/a-callable": _req
        }, _require);

        (function () {
          var aCallable = require('../internals/a-callable');

          var PromiseCapability = function PromiseCapability(C) {
            var resolve, reject;
            this.promise = new C(function ($$resolve, $$reject) {
              if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
              resolve = $$resolve;
              reject = $$reject;
            });
            this.resolve = aCallable(resolve);
            this.reject = aCallable(reject);
          }; // `NewPromiseCapability` abstract operation
          // https://tc39.es/ecma262/#sec-newpromisecapability


          module.exports.f = function (C) {
            return new PromiseCapability(C);
          };
        })();

        _export("default", _cjsExports = module.exports);
      });

      _export("__cjsMetaURL", __cjsMetaURL = _context.meta.url);
    }
  };
});
//# sourceMappingURL=new-promise-capability.js.map