"use strict";
var __extends = (this && this.__extends) || (function () {
    var extendStatics = function (d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };
    return function (d, b) {
        if (typeof b !== "function" && b !== null)
            throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
exports.__esModule = true;
exports.GovernorBravoDelegateStorageV1__factory = void 0;
/* Autogenerated file. Do not edit manually. */
/* tslint:disable */
/* eslint-disable */
var ethers_1 = require("ethers");
var _abi = [
    {
        constant: true,
        inputs: [],
        name: "admin",
        outputs: [
            {
                internalType: "address",
                name: "",
                type: "address"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "comp",
        outputs: [
            {
                internalType: "contract CompInterface",
                name: "",
                type: "address"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "implementation",
        outputs: [
            {
                internalType: "address",
                name: "",
                type: "address"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "initialProposalId",
        outputs: [
            {
                internalType: "uint256",
                name: "",
                type: "uint256"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [
            {
                internalType: "address",
                name: "",
                type: "address"
            },
        ],
        name: "latestProposalIds",
        outputs: [
            {
                internalType: "uint256",
                name: "",
                type: "uint256"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "pendingAdmin",
        outputs: [
            {
                internalType: "address",
                name: "",
                type: "address"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "proposalCount",
        outputs: [
            {
                internalType: "uint256",
                name: "",
                type: "uint256"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "proposalThreshold",
        outputs: [
            {
                internalType: "uint256",
                name: "",
                type: "uint256"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [
            {
                internalType: "uint256",
                name: "",
                type: "uint256"
            },
        ],
        name: "proposals",
        outputs: [
            {
                internalType: "uint256",
                name: "id",
                type: "uint256"
            },
            {
                internalType: "address",
                name: "proposer",
                type: "address"
            },
            {
                internalType: "uint256",
                name: "eta",
                type: "uint256"
            },
            {
                internalType: "uint256",
                name: "startBlock",
                type: "uint256"
            },
            {
                internalType: "uint256",
                name: "endBlock",
                type: "uint256"
            },
            {
                internalType: "uint256",
                name: "forVotes",
                type: "uint256"
            },
            {
                internalType: "uint256",
                name: "againstVotes",
                type: "uint256"
            },
            {
                internalType: "uint256",
                name: "abstainVotes",
                type: "uint256"
            },
            {
                internalType: "bool",
                name: "canceled",
                type: "bool"
            },
            {
                internalType: "bool",
                name: "executed",
                type: "bool"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "timelock",
        outputs: [
            {
                internalType: "contract TimelockInterface",
                name: "",
                type: "address"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "votingDelay",
        outputs: [
            {
                internalType: "uint256",
                name: "",
                type: "uint256"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
    {
        constant: true,
        inputs: [],
        name: "votingPeriod",
        outputs: [
            {
                internalType: "uint256",
                name: "",
                type: "uint256"
            },
        ],
        payable: false,
        stateMutability: "view",
        type: "function"
    },
];
var _bytecode = "0x608060405234801561001057600080fd5b50610429806100206000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c80635c60da1b116100715780635c60da1b14610145578063b58131b01461014d578063d33219b414610155578063da35c6641461015d578063f851a44014610165578063fc4eee421461016d576100b4565b8063013cf08b146100b957806302a251a3146100eb578063109d0af81461010057806317977c611461011557806326782247146101285780633932abb11461013d575b600080fd5b6100cc6100c7366004610295565b610175565b6040516100e29a99989796959493929190610307565b60405180910390f35b6100f36101d8565b6040516100e291906102f9565b6101086101de565b6040516100e291906102eb565b6100f361012336600461026f565b6101ed565b6101306101ff565b6040516100e291906102dd565b6100f361020e565b610130610214565b6100f3610223565b610108610229565b6100f3610238565b61013061023e565b6100f361024d565b600a60208190526000918252604090912080546001820154600283015460078401546008850154600986015496860154600b870154600c9097015495976001600160a01b0390951696939592949193919290919060ff808216916101009004168a565b60045481565b6009546001600160a01b031681565b600b6020526000908152604090205481565b6001546001600160a01b031681565b60035481565b6002546001600160a01b031681565b60055481565b6008546001600160a01b031681565b60075481565b6000546001600160a01b031681565b60065481565b803561025e816103c6565b92915050565b803561025e816103dd565b60006020828403121561028157600080fd5b600061028d8484610253565b949350505050565b6000602082840312156102a757600080fd5b600061028d8484610264565b6102bc8161039c565b82525050565b6102bc816103a7565b6102bc816103bb565b6102bc816103b8565b6020810161025e82846102b3565b6020810161025e82846102cb565b6020810161025e82846102d4565b6101408101610316828d6102d4565b610323602083018c6102b3565b610330604083018b6102d4565b61033d606083018a6102d4565b61034a60808301896102d4565b61035760a08301886102d4565b61036460c08301876102d4565b61037160e08301866102d4565b61037f6101008301856102c2565b61038d6101208301846102c2565b9b9a5050505050505050505050565b600061025e826103ac565b151590565b6001600160a01b031690565b90565b600061025e8261039c565b6103cf8161039c565b81146103da57600080fd5b50565b6103cf816103b856fea365627a7a7231582048210c85a76013889f75a4aaa835811860b08ca9574b00105f522b851add52f16c6578706572696d656e74616cf564736f6c63430005100040";
var isSuperArgs = function (xs) { return xs.length > 1; };
var GovernorBravoDelegateStorageV1__factory = /** @class */ (function (_super) {
    __extends(GovernorBravoDelegateStorageV1__factory, _super);
    function GovernorBravoDelegateStorageV1__factory() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        var _this = this;
        if (isSuperArgs(args)) {
            _this = _super.apply(this, args) || this;
        }
        else {
            _this = _super.call(this, _abi, _bytecode, args[0]) || this;
        }
        return _this;
    }
    GovernorBravoDelegateStorageV1__factory.prototype.deploy = function (overrides) {
        return _super.prototype.deploy.call(this, overrides || {});
    };
    GovernorBravoDelegateStorageV1__factory.prototype.getDeployTransaction = function (overrides) {
        return _super.prototype.getDeployTransaction.call(this, overrides || {});
    };
    GovernorBravoDelegateStorageV1__factory.prototype.attach = function (address) {
        return _super.prototype.attach.call(this, address);
    };
    GovernorBravoDelegateStorageV1__factory.prototype.connect = function (signer) {
        return _super.prototype.connect.call(this, signer);
    };
    GovernorBravoDelegateStorageV1__factory.createInterface = function () {
        return new ethers_1.utils.Interface(_abi);
    };
    GovernorBravoDelegateStorageV1__factory.connect = function (address, signerOrProvider) {
        return new ethers_1.Contract(address, _abi, signerOrProvider);
    };
    GovernorBravoDelegateStorageV1__factory.bytecode = _bytecode;
    GovernorBravoDelegateStorageV1__factory.abi = _abi;
    return GovernorBravoDelegateStorageV1__factory;
}(ethers_1.ContractFactory));
exports.GovernorBravoDelegateStorageV1__factory = GovernorBravoDelegateStorageV1__factory;
//# sourceMappingURL=GovernorBravoDelegateStorageV1__factory.js.map