"use strict";

var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.DaoCoreQueryClient = exports.DaoCoreClient = void 0;
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
/**
* This file was automatically generated by @cosmwasm/ts-codegen@0.26.0.
* DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
* and run the @cosmwasm/ts-codegen generate command to regenerate this file.
*/
var DaoCoreQueryClient = exports.DaoCoreQueryClient = /*#__PURE__*/(0, _createClass2["default"])(function DaoCoreQueryClient(client, contractAddress) {
  var _this = this;
  (0, _classCallCheck2["default"])(this, DaoCoreQueryClient);
  (0, _defineProperty2["default"])(this, "client", void 0);
  (0, _defineProperty2["default"])(this, "contractAddress", void 0);
  (0, _defineProperty2["default"])(this, "admin", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee() {
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          return _context.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            admin: {}
          }));
      }
    }, _callee);
  })));
  (0, _defineProperty2["default"])(this, "adminNomination", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee2() {
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          return _context2.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            admin_nomination: {}
          }));
      }
    }, _callee2);
  })));
  (0, _defineProperty2["default"])(this, "config", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee3() {
    return _regenerator().w(function (_context3) {
      while (1) switch (_context3.n) {
        case 0:
          return _context3.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            config: {}
          }));
      }
    }, _callee3);
  })));
  (0, _defineProperty2["default"])(this, "cw20Balances", /*#__PURE__*/function () {
    var _ref5 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee4(_ref4) {
      var limit, startAfter;
      return _regenerator().w(function (_context4) {
        while (1) switch (_context4.n) {
          case 0:
            limit = _ref4.limit, startAfter = _ref4.startAfter;
            return _context4.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              cw20_balances: {
                limit: limit,
                start_after: startAfter
              }
            }));
        }
      }, _callee4);
    }));
    return function (_x) {
      return _ref5.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "cw20TokenList", /*#__PURE__*/function () {
    var _ref7 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee5(_ref6) {
      var limit, startAfter;
      return _regenerator().w(function (_context5) {
        while (1) switch (_context5.n) {
          case 0:
            limit = _ref6.limit, startAfter = _ref6.startAfter;
            return _context5.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              cw20_token_list: {
                limit: limit,
                start_after: startAfter
              }
            }));
        }
      }, _callee5);
    }));
    return function (_x2) {
      return _ref7.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "cw721TokenList", /*#__PURE__*/function () {
    var _ref9 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee6(_ref8) {
      var limit, startAfter;
      return _regenerator().w(function (_context6) {
        while (1) switch (_context6.n) {
          case 0:
            limit = _ref8.limit, startAfter = _ref8.startAfter;
            return _context6.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              cw721_token_list: {
                limit: limit,
                start_after: startAfter
              }
            }));
        }
      }, _callee6);
    }));
    return function (_x3) {
      return _ref9.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "dumpState", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee7() {
    return _regenerator().w(function (_context7) {
      while (1) switch (_context7.n) {
        case 0:
          return _context7.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            dump_state: {}
          }));
      }
    }, _callee7);
  })));
  (0, _defineProperty2["default"])(this, "getItem", /*#__PURE__*/function () {
    var _ref10 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee8(_ref1) {
      var key;
      return _regenerator().w(function (_context8) {
        while (1) switch (_context8.n) {
          case 0:
            key = _ref1.key;
            return _context8.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              get_item: {
                key: key
              }
            }));
        }
      }, _callee8);
    }));
    return function (_x4) {
      return _ref10.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "listItems", /*#__PURE__*/function () {
    var _ref12 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee9(_ref11) {
      var limit, startAfter;
      return _regenerator().w(function (_context9) {
        while (1) switch (_context9.n) {
          case 0:
            limit = _ref11.limit, startAfter = _ref11.startAfter;
            return _context9.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              list_items: {
                limit: limit,
                start_after: startAfter
              }
            }));
        }
      }, _callee9);
    }));
    return function (_x5) {
      return _ref12.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "info", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee0() {
    return _regenerator().w(function (_context0) {
      while (1) switch (_context0.n) {
        case 0:
          return _context0.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            info: {}
          }));
      }
    }, _callee0);
  })));
  (0, _defineProperty2["default"])(this, "proposalModules", /*#__PURE__*/function () {
    var _ref15 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee1(_ref14) {
      var limit, startAfter;
      return _regenerator().w(function (_context1) {
        while (1) switch (_context1.n) {
          case 0:
            limit = _ref14.limit, startAfter = _ref14.startAfter;
            return _context1.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              proposal_modules: {
                limit: limit,
                start_after: startAfter
              }
            }));
        }
      }, _callee1);
    }));
    return function (_x6) {
      return _ref15.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "activeProposalModules", /*#__PURE__*/function () {
    var _ref17 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee10(_ref16) {
      var limit, startAfter;
      return _regenerator().w(function (_context10) {
        while (1) switch (_context10.n) {
          case 0:
            limit = _ref16.limit, startAfter = _ref16.startAfter;
            return _context10.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              active_proposal_modules: {
                limit: limit,
                start_after: startAfter
              }
            }));
        }
      }, _callee10);
    }));
    return function (_x7) {
      return _ref17.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "proposalModuleCount", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee11() {
    return _regenerator().w(function (_context11) {
      while (1) switch (_context11.n) {
        case 0:
          return _context11.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            proposal_module_count: {}
          }));
      }
    }, _callee11);
  })));
  (0, _defineProperty2["default"])(this, "pauseInfo", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee12() {
    return _regenerator().w(function (_context12) {
      while (1) switch (_context12.n) {
        case 0:
          return _context12.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            pause_info: {}
          }));
      }
    }, _callee12);
  })));
  (0, _defineProperty2["default"])(this, "votingModule", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee13() {
    return _regenerator().w(function (_context13) {
      while (1) switch (_context13.n) {
        case 0:
          return _context13.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            voting_module: {}
          }));
      }
    }, _callee13);
  })));
  (0, _defineProperty2["default"])(this, "listSubDaos", /*#__PURE__*/function () {
    var _ref22 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee14(_ref21) {
      var limit, startAfter;
      return _regenerator().w(function (_context14) {
        while (1) switch (_context14.n) {
          case 0:
            limit = _ref21.limit, startAfter = _ref21.startAfter;
            return _context14.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              list_sub_daos: {
                limit: limit,
                start_after: startAfter
              }
            }));
        }
      }, _callee14);
    }));
    return function (_x8) {
      return _ref22.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "daoURI", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee15() {
    return _regenerator().w(function (_context15) {
      while (1) switch (_context15.n) {
        case 0:
          return _context15.a(2, _this.client.queryContractSmart(_this.contractAddress, {
            dao_u_r_i: {}
          }));
      }
    }, _callee15);
  })));
  (0, _defineProperty2["default"])(this, "votingPowerAtHeight", /*#__PURE__*/function () {
    var _ref25 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee16(_ref24) {
      var address, height;
      return _regenerator().w(function (_context16) {
        while (1) switch (_context16.n) {
          case 0:
            address = _ref24.address, height = _ref24.height;
            return _context16.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              voting_power_at_height: {
                address: address,
                height: height
              }
            }));
        }
      }, _callee16);
    }));
    return function (_x9) {
      return _ref25.apply(this, arguments);
    };
  }());
  (0, _defineProperty2["default"])(this, "totalPowerAtHeight", /*#__PURE__*/function () {
    var _ref27 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee17(_ref26) {
      var height;
      return _regenerator().w(function (_context17) {
        while (1) switch (_context17.n) {
          case 0:
            height = _ref26.height;
            return _context17.a(2, _this.client.queryContractSmart(_this.contractAddress, {
              total_power_at_height: {
                height: height
              }
            }));
        }
      }, _callee17);
    }));
    return function (_x0) {
      return _ref27.apply(this, arguments);
    };
  }());
  this.client = client;
  this.contractAddress = contractAddress;
  this.admin = this.admin.bind(this);
  this.adminNomination = this.adminNomination.bind(this);
  this.config = this.config.bind(this);
  this.cw20Balances = this.cw20Balances.bind(this);
  this.cw20TokenList = this.cw20TokenList.bind(this);
  this.cw721TokenList = this.cw721TokenList.bind(this);
  this.dumpState = this.dumpState.bind(this);
  this.getItem = this.getItem.bind(this);
  this.listItems = this.listItems.bind(this);
  this.info = this.info.bind(this);
  this.proposalModules = this.proposalModules.bind(this);
  this.activeProposalModules = this.activeProposalModules.bind(this);
  this.proposalModuleCount = this.proposalModuleCount.bind(this);
  this.pauseInfo = this.pauseInfo.bind(this);
  this.votingModule = this.votingModule.bind(this);
  this.listSubDaos = this.listSubDaos.bind(this);
  this.daoURI = this.daoURI.bind(this);
  this.votingPowerAtHeight = this.votingPowerAtHeight.bind(this);
  this.totalPowerAtHeight = this.totalPowerAtHeight.bind(this);
});
var DaoCoreClient = exports.DaoCoreClient = /*#__PURE__*/function (_DaoCoreQueryClient2) {
  function DaoCoreClient(client, _sender, contractAddress) {
    var _this2;
    (0, _classCallCheck2["default"])(this, DaoCoreClient);
    _this2 = _callSuper(this, DaoCoreClient, [client, contractAddress]);
    (0, _defineProperty2["default"])(_this2, "client", void 0);
    (0, _defineProperty2["default"])(_this2, "sender", void 0);
    (0, _defineProperty2["default"])(_this2, "contractAddress", void 0);
    (0, _defineProperty2["default"])(_this2, "executeAdminMsgs", /*#__PURE__*/function () {
      var _ref29 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee18(_ref28) {
        var msgs,
          fee,
          memo,
          funds,
          _args18 = arguments;
        return _regenerator().w(function (_context18) {
          while (1) switch (_context18.n) {
            case 0:
              msgs = _ref28.msgs;
              fee = _args18.length > 1 && _args18[1] !== undefined ? _args18[1] : "auto";
              memo = _args18.length > 2 ? _args18[2] : undefined;
              funds = _args18.length > 3 ? _args18[3] : undefined;
              _context18.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                execute_admin_msgs: {
                  msgs: msgs
                }
              }, fee, memo, funds);
            case 1:
              return _context18.a(2, _context18.v);
          }
        }, _callee18);
      }));
      return function (_x1) {
        return _ref29.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "executeProposalHook", /*#__PURE__*/function () {
      var _ref31 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee19(_ref30) {
        var msgs,
          fee,
          memo,
          funds,
          _args19 = arguments;
        return _regenerator().w(function (_context19) {
          while (1) switch (_context19.n) {
            case 0:
              msgs = _ref30.msgs;
              fee = _args19.length > 1 && _args19[1] !== undefined ? _args19[1] : "auto";
              memo = _args19.length > 2 ? _args19[2] : undefined;
              funds = _args19.length > 3 ? _args19[3] : undefined;
              _context19.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                execute_proposal_hook: {
                  msgs: msgs
                }
              }, fee, memo, funds);
            case 1:
              return _context19.a(2, _context19.v);
          }
        }, _callee19);
      }));
      return function (_x10) {
        return _ref31.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "pause", /*#__PURE__*/function () {
      var _ref33 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee20(_ref32) {
        var duration,
          fee,
          memo,
          funds,
          _args20 = arguments;
        return _regenerator().w(function (_context20) {
          while (1) switch (_context20.n) {
            case 0:
              duration = _ref32.duration;
              fee = _args20.length > 1 && _args20[1] !== undefined ? _args20[1] : "auto";
              memo = _args20.length > 2 ? _args20[2] : undefined;
              funds = _args20.length > 3 ? _args20[3] : undefined;
              _context20.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                pause: {
                  duration: duration
                }
              }, fee, memo, funds);
            case 1:
              return _context20.a(2, _context20.v);
          }
        }, _callee20);
      }));
      return function (_x11) {
        return _ref33.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "receive", /*#__PURE__*/function () {
      var _ref35 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee21(_ref34) {
        var amount,
          msg,
          sender,
          fee,
          memo,
          funds,
          _args21 = arguments;
        return _regenerator().w(function (_context21) {
          while (1) switch (_context21.n) {
            case 0:
              amount = _ref34.amount, msg = _ref34.msg, sender = _ref34.sender;
              fee = _args21.length > 1 && _args21[1] !== undefined ? _args21[1] : "auto";
              memo = _args21.length > 2 ? _args21[2] : undefined;
              funds = _args21.length > 3 ? _args21[3] : undefined;
              _context21.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                receive: {
                  amount: amount,
                  msg: msg,
                  sender: sender
                }
              }, fee, memo, funds);
            case 1:
              return _context21.a(2, _context21.v);
          }
        }, _callee21);
      }));
      return function (_x12) {
        return _ref35.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "receiveNft", /*#__PURE__*/function () {
      var _ref37 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee22(_ref36) {
        var msg,
          sender,
          tokenId,
          fee,
          memo,
          funds,
          _args22 = arguments;
        return _regenerator().w(function (_context22) {
          while (1) switch (_context22.n) {
            case 0:
              msg = _ref36.msg, sender = _ref36.sender, tokenId = _ref36.tokenId;
              fee = _args22.length > 1 && _args22[1] !== undefined ? _args22[1] : "auto";
              memo = _args22.length > 2 ? _args22[2] : undefined;
              funds = _args22.length > 3 ? _args22[3] : undefined;
              _context22.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                receive_nft: {
                  msg: msg,
                  sender: sender,
                  token_id: tokenId
                }
              }, fee, memo, funds);
            case 1:
              return _context22.a(2, _context22.v);
          }
        }, _callee22);
      }));
      return function (_x13) {
        return _ref37.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "removeItem", /*#__PURE__*/function () {
      var _ref39 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee23(_ref38) {
        var key,
          fee,
          memo,
          funds,
          _args23 = arguments;
        return _regenerator().w(function (_context23) {
          while (1) switch (_context23.n) {
            case 0:
              key = _ref38.key;
              fee = _args23.length > 1 && _args23[1] !== undefined ? _args23[1] : "auto";
              memo = _args23.length > 2 ? _args23[2] : undefined;
              funds = _args23.length > 3 ? _args23[3] : undefined;
              _context23.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                remove_item: {
                  key: key
                }
              }, fee, memo, funds);
            case 1:
              return _context23.a(2, _context23.v);
          }
        }, _callee23);
      }));
      return function (_x14) {
        return _ref39.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "setItem", /*#__PURE__*/function () {
      var _ref41 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee24(_ref40) {
        var key,
          value,
          fee,
          memo,
          funds,
          _args24 = arguments;
        return _regenerator().w(function (_context24) {
          while (1) switch (_context24.n) {
            case 0:
              key = _ref40.key, value = _ref40.value;
              fee = _args24.length > 1 && _args24[1] !== undefined ? _args24[1] : "auto";
              memo = _args24.length > 2 ? _args24[2] : undefined;
              funds = _args24.length > 3 ? _args24[3] : undefined;
              _context24.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                set_item: {
                  key: key,
                  value: value
                }
              }, fee, memo, funds);
            case 1:
              return _context24.a(2, _context24.v);
          }
        }, _callee24);
      }));
      return function (_x15) {
        return _ref41.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "nominateAdmin", /*#__PURE__*/function () {
      var _ref43 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee25(_ref42) {
        var admin,
          fee,
          memo,
          funds,
          _args25 = arguments;
        return _regenerator().w(function (_context25) {
          while (1) switch (_context25.n) {
            case 0:
              admin = _ref42.admin;
              fee = _args25.length > 1 && _args25[1] !== undefined ? _args25[1] : "auto";
              memo = _args25.length > 2 ? _args25[2] : undefined;
              funds = _args25.length > 3 ? _args25[3] : undefined;
              _context25.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                nominate_admin: {
                  admin: admin
                }
              }, fee, memo, funds);
            case 1:
              return _context25.a(2, _context25.v);
          }
        }, _callee25);
      }));
      return function (_x16) {
        return _ref43.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "acceptAdminNomination", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee26() {
      var fee,
        memo,
        funds,
        _args26 = arguments;
      return _regenerator().w(function (_context26) {
        while (1) switch (_context26.n) {
          case 0:
            fee = _args26.length > 0 && _args26[0] !== undefined ? _args26[0] : "auto";
            memo = _args26.length > 1 ? _args26[1] : undefined;
            funds = _args26.length > 2 ? _args26[2] : undefined;
            _context26.n = 1;
            return _this2.client.execute(_this2.sender, _this2.contractAddress, {
              accept_admin_nomination: {}
            }, fee, memo, funds);
          case 1:
            return _context26.a(2, _context26.v);
        }
      }, _callee26);
    })));
    (0, _defineProperty2["default"])(_this2, "withdrawAdminNomination", /*#__PURE__*/(0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee27() {
      var fee,
        memo,
        funds,
        _args27 = arguments;
      return _regenerator().w(function (_context27) {
        while (1) switch (_context27.n) {
          case 0:
            fee = _args27.length > 0 && _args27[0] !== undefined ? _args27[0] : "auto";
            memo = _args27.length > 1 ? _args27[1] : undefined;
            funds = _args27.length > 2 ? _args27[2] : undefined;
            _context27.n = 1;
            return _this2.client.execute(_this2.sender, _this2.contractAddress, {
              withdraw_admin_nomination: {}
            }, fee, memo, funds);
          case 1:
            return _context27.a(2, _context27.v);
        }
      }, _callee27);
    })));
    (0, _defineProperty2["default"])(_this2, "updateConfig", /*#__PURE__*/function () {
      var _ref47 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee28(_ref46) {
        var config,
          fee,
          memo,
          funds,
          _args28 = arguments;
        return _regenerator().w(function (_context28) {
          while (1) switch (_context28.n) {
            case 0:
              config = _ref46.config;
              fee = _args28.length > 1 && _args28[1] !== undefined ? _args28[1] : "auto";
              memo = _args28.length > 2 ? _args28[2] : undefined;
              funds = _args28.length > 3 ? _args28[3] : undefined;
              _context28.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                update_config: {
                  config: config
                }
              }, fee, memo, funds);
            case 1:
              return _context28.a(2, _context28.v);
          }
        }, _callee28);
      }));
      return function (_x17) {
        return _ref47.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "updateCw20List", /*#__PURE__*/function () {
      var _ref49 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee29(_ref48) {
        var toAdd,
          toRemove,
          fee,
          memo,
          funds,
          _args29 = arguments;
        return _regenerator().w(function (_context29) {
          while (1) switch (_context29.n) {
            case 0:
              toAdd = _ref48.toAdd, toRemove = _ref48.toRemove;
              fee = _args29.length > 1 && _args29[1] !== undefined ? _args29[1] : "auto";
              memo = _args29.length > 2 ? _args29[2] : undefined;
              funds = _args29.length > 3 ? _args29[3] : undefined;
              _context29.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                update_cw20_list: {
                  to_add: toAdd,
                  to_remove: toRemove
                }
              }, fee, memo, funds);
            case 1:
              return _context29.a(2, _context29.v);
          }
        }, _callee29);
      }));
      return function (_x18) {
        return _ref49.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "updateCw721List", /*#__PURE__*/function () {
      var _ref51 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee30(_ref50) {
        var toAdd,
          toRemove,
          fee,
          memo,
          funds,
          _args30 = arguments;
        return _regenerator().w(function (_context30) {
          while (1) switch (_context30.n) {
            case 0:
              toAdd = _ref50.toAdd, toRemove = _ref50.toRemove;
              fee = _args30.length > 1 && _args30[1] !== undefined ? _args30[1] : "auto";
              memo = _args30.length > 2 ? _args30[2] : undefined;
              funds = _args30.length > 3 ? _args30[3] : undefined;
              _context30.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                update_cw721_list: {
                  to_add: toAdd,
                  to_remove: toRemove
                }
              }, fee, memo, funds);
            case 1:
              return _context30.a(2, _context30.v);
          }
        }, _callee30);
      }));
      return function (_x19) {
        return _ref51.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "updateProposalModules", /*#__PURE__*/function () {
      var _ref53 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee31(_ref52) {
        var toAdd,
          toDisable,
          fee,
          memo,
          funds,
          _args31 = arguments;
        return _regenerator().w(function (_context31) {
          while (1) switch (_context31.n) {
            case 0:
              toAdd = _ref52.toAdd, toDisable = _ref52.toDisable;
              fee = _args31.length > 1 && _args31[1] !== undefined ? _args31[1] : "auto";
              memo = _args31.length > 2 ? _args31[2] : undefined;
              funds = _args31.length > 3 ? _args31[3] : undefined;
              _context31.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                update_proposal_modules: {
                  to_add: toAdd,
                  to_disable: toDisable
                }
              }, fee, memo, funds);
            case 1:
              return _context31.a(2, _context31.v);
          }
        }, _callee31);
      }));
      return function (_x20) {
        return _ref53.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "updateVotingModule", /*#__PURE__*/function () {
      var _ref55 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee32(_ref54) {
        var module,
          fee,
          memo,
          funds,
          _args32 = arguments;
        return _regenerator().w(function (_context32) {
          while (1) switch (_context32.n) {
            case 0:
              module = _ref54.module;
              fee = _args32.length > 1 && _args32[1] !== undefined ? _args32[1] : "auto";
              memo = _args32.length > 2 ? _args32[2] : undefined;
              funds = _args32.length > 3 ? _args32[3] : undefined;
              _context32.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                update_voting_module: {
                  module: module
                }
              }, fee, memo, funds);
            case 1:
              return _context32.a(2, _context32.v);
          }
        }, _callee32);
      }));
      return function (_x21) {
        return _ref55.apply(this, arguments);
      };
    }());
    (0, _defineProperty2["default"])(_this2, "updateSubDaos", /*#__PURE__*/function () {
      var _ref57 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator().m(function _callee33(_ref56) {
        var toAdd,
          toRemove,
          fee,
          memo,
          funds,
          _args33 = arguments;
        return _regenerator().w(function (_context33) {
          while (1) switch (_context33.n) {
            case 0:
              toAdd = _ref56.toAdd, toRemove = _ref56.toRemove;
              fee = _args33.length > 1 && _args33[1] !== undefined ? _args33[1] : "auto";
              memo = _args33.length > 2 ? _args33[2] : undefined;
              funds = _args33.length > 3 ? _args33[3] : undefined;
              _context33.n = 1;
              return _this2.client.execute(_this2.sender, _this2.contractAddress, {
                update_sub_daos: {
                  to_add: toAdd,
                  to_remove: toRemove
                }
              }, fee, memo, funds);
            case 1:
              return _context33.a(2, _context33.v);
          }
        }, _callee33);
      }));
      return function (_x22) {
        return _ref57.apply(this, arguments);
      };
    }());
    _this2.client = client;
    _this2.sender = _sender;
    _this2.contractAddress = contractAddress;
    _this2.executeAdminMsgs = _this2.executeAdminMsgs.bind(_this2);
    _this2.executeProposalHook = _this2.executeProposalHook.bind(_this2);
    _this2.pause = _this2.pause.bind(_this2);
    _this2.receive = _this2.receive.bind(_this2);
    _this2.receiveNft = _this2.receiveNft.bind(_this2);
    _this2.removeItem = _this2.removeItem.bind(_this2);
    _this2.setItem = _this2.setItem.bind(_this2);
    _this2.nominateAdmin = _this2.nominateAdmin.bind(_this2);
    _this2.acceptAdminNomination = _this2.acceptAdminNomination.bind(_this2);
    _this2.withdrawAdminNomination = _this2.withdrawAdminNomination.bind(_this2);
    _this2.updateConfig = _this2.updateConfig.bind(_this2);
    _this2.updateCw20List = _this2.updateCw20List.bind(_this2);
    _this2.updateCw721List = _this2.updateCw721List.bind(_this2);
    _this2.updateProposalModules = _this2.updateProposalModules.bind(_this2);
    _this2.updateVotingModule = _this2.updateVotingModule.bind(_this2);
    _this2.updateSubDaos = _this2.updateSubDaos.bind(_this2);
    return _this2;
  }
  (0, _inherits2["default"])(DaoCoreClient, _DaoCoreQueryClient2);
  return (0, _createClass2["default"])(DaoCoreClient);
}(DaoCoreQueryClient);