UNPKG

@vaimee/my3sec-contracts

Version:

A set of contracts that implements the My3Sec protocol

392 lines (391 loc) 29.9 kB
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../../../common"; export interface IGovernorInterface extends utils.Interface { functions: { "COUNTING_MODE()": FunctionFragment; "castVote(uint256,uint8)": FunctionFragment; "castVoteBySig(uint256,uint8,uint8,bytes32,bytes32)": FunctionFragment; "castVoteWithReason(uint256,uint8,string)": FunctionFragment; "castVoteWithReasonAndParams(uint256,uint8,string,bytes)": FunctionFragment; "castVoteWithReasonAndParamsBySig(uint256,uint8,string,bytes,uint8,bytes32,bytes32)": FunctionFragment; "execute(address[],uint256[],bytes[],bytes32)": FunctionFragment; "getVotes(address,uint256)": FunctionFragment; "getVotesWithParams(address,uint256,bytes)": FunctionFragment; "hasVoted(uint256,address)": FunctionFragment; "hashProposal(address[],uint256[],bytes[],bytes32)": FunctionFragment; "name()": FunctionFragment; "proposalDeadline(uint256)": FunctionFragment; "proposalSnapshot(uint256)": FunctionFragment; "propose(address[],uint256[],bytes[],string)": FunctionFragment; "quorum(uint256)": FunctionFragment; "state(uint256)": FunctionFragment; "supportsInterface(bytes4)": FunctionFragment; "version()": FunctionFragment; "votingDelay()": FunctionFragment; "votingPeriod()": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "COUNTING_MODE" | "castVote" | "castVoteBySig" | "castVoteWithReason" | "castVoteWithReasonAndParams" | "castVoteWithReasonAndParamsBySig" | "execute" | "getVotes" | "getVotesWithParams" | "hasVoted" | "hashProposal" | "name" | "proposalDeadline" | "proposalSnapshot" | "propose" | "quorum" | "state" | "supportsInterface" | "version" | "votingDelay" | "votingPeriod"): FunctionFragment; encodeFunctionData(functionFragment: "COUNTING_MODE", values?: undefined): string; encodeFunctionData(functionFragment: "castVote", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "castVoteBySig", values: [ PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "castVoteWithReason", values: [ PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "castVoteWithReasonAndParams", values: [ PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<string>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "castVoteWithReasonAndParamsBySig", values: [ PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<string>, PromiseOrValue<BytesLike>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "execute", values: [ PromiseOrValue<string>[], PromiseOrValue<BigNumberish>[], PromiseOrValue<BytesLike>[], PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "getVotes", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getVotesWithParams", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "hasVoted", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "hashProposal", values: [ PromiseOrValue<string>[], PromiseOrValue<BigNumberish>[], PromiseOrValue<BytesLike>[], PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "name", values?: undefined): string; encodeFunctionData(functionFragment: "proposalDeadline", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "proposalSnapshot", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "propose", values: [ PromiseOrValue<string>[], PromiseOrValue<BigNumberish>[], PromiseOrValue<BytesLike>[], PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "quorum", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "state", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [PromiseOrValue<BytesLike>]): string; encodeFunctionData(functionFragment: "version", values?: undefined): string; encodeFunctionData(functionFragment: "votingDelay", values?: undefined): string; encodeFunctionData(functionFragment: "votingPeriod", values?: undefined): string; decodeFunctionResult(functionFragment: "COUNTING_MODE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "castVote", data: BytesLike): Result; decodeFunctionResult(functionFragment: "castVoteBySig", data: BytesLike): Result; decodeFunctionResult(functionFragment: "castVoteWithReason", data: BytesLike): Result; decodeFunctionResult(functionFragment: "castVoteWithReasonAndParams", data: BytesLike): Result; decodeFunctionResult(functionFragment: "castVoteWithReasonAndParamsBySig", data: BytesLike): Result; decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVotes", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVotesWithParams", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasVoted", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hashProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "name", data: BytesLike): Result; decodeFunctionResult(functionFragment: "proposalDeadline", data: BytesLike): Result; decodeFunctionResult(functionFragment: "proposalSnapshot", data: BytesLike): Result; decodeFunctionResult(functionFragment: "propose", data: BytesLike): Result; decodeFunctionResult(functionFragment: "quorum", data: BytesLike): Result; decodeFunctionResult(functionFragment: "state", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "version", data: BytesLike): Result; decodeFunctionResult(functionFragment: "votingDelay", data: BytesLike): Result; decodeFunctionResult(functionFragment: "votingPeriod", data: BytesLike): Result; events: { "ProposalCanceled(uint256)": EventFragment; "ProposalCreated(uint256,address,address[],uint256[],string[],bytes[],uint256,uint256,string)": EventFragment; "ProposalExecuted(uint256)": EventFragment; "VoteCast(address,uint256,uint8,uint256,string)": EventFragment; "VoteCastWithParams(address,uint256,uint8,uint256,string,bytes)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "ProposalCanceled"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalCreated"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalExecuted"): EventFragment; getEvent(nameOrSignatureOrTopic: "VoteCast"): EventFragment; getEvent(nameOrSignatureOrTopic: "VoteCastWithParams"): EventFragment; } export interface ProposalCanceledEventObject { proposalId: BigNumber; } export type ProposalCanceledEvent = TypedEvent<[ BigNumber ], ProposalCanceledEventObject>; export type ProposalCanceledEventFilter = TypedEventFilter<ProposalCanceledEvent>; export interface ProposalCreatedEventObject { proposalId: BigNumber; proposer: string; targets: string[]; values: BigNumber[]; signatures: string[]; calldatas: string[]; startBlock: BigNumber; endBlock: BigNumber; description: string; } export type ProposalCreatedEvent = TypedEvent<[ BigNumber, string, string[], BigNumber[], string[], string[], BigNumber, BigNumber, string ], ProposalCreatedEventObject>; export type ProposalCreatedEventFilter = TypedEventFilter<ProposalCreatedEvent>; export interface ProposalExecutedEventObject { proposalId: BigNumber; } export type ProposalExecutedEvent = TypedEvent<[ BigNumber ], ProposalExecutedEventObject>; export type ProposalExecutedEventFilter = TypedEventFilter<ProposalExecutedEvent>; export interface VoteCastEventObject { voter: string; proposalId: BigNumber; support: number; weight: BigNumber; reason: string; } export type VoteCastEvent = TypedEvent<[ string, BigNumber, number, BigNumber, string ], VoteCastEventObject>; export type VoteCastEventFilter = TypedEventFilter<VoteCastEvent>; export interface VoteCastWithParamsEventObject { voter: string; proposalId: BigNumber; support: number; weight: BigNumber; reason: string; params: string; } export type VoteCastWithParamsEvent = TypedEvent<[ string, BigNumber, number, BigNumber, string, string ], VoteCastWithParamsEventObject>; export type VoteCastWithParamsEventFilter = TypedEventFilter<VoteCastWithParamsEvent>; export interface IGovernor extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: IGovernorInterface; queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>; listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>; listeners(eventName?: string): Array<Listener>; removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this; removeAllListeners(eventName?: string): this; off: OnEvent<this>; on: OnEvent<this>; once: OnEvent<this>; removeListener: OnEvent<this>; functions: { COUNTING_MODE(overrides?: CallOverrides): Promise<[string]>; castVote(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; castVoteBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; castVoteWithReason(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; castVoteWithReasonAndParams(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; castVoteWithReasonAndParamsBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; execute(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getVotes(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; getVotesWithParams(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, params: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[BigNumber]>; hasVoted(proposalId: PromiseOrValue<BigNumberish>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>; hashProposal(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[BigNumber]>; name(overrides?: CallOverrides): Promise<[string]>; proposalDeadline(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; proposalSnapshot(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; propose(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], description: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; quorum(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; state(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[number]>; supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[boolean]>; version(overrides?: CallOverrides): Promise<[string]>; votingDelay(overrides?: CallOverrides): Promise<[BigNumber]>; votingPeriod(overrides?: CallOverrides): Promise<[BigNumber]>; }; COUNTING_MODE(overrides?: CallOverrides): Promise<string>; castVote(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; castVoteBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; castVoteWithReason(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; castVoteWithReasonAndParams(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; castVoteWithReasonAndParamsBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; execute(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getVotes(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesWithParams(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, params: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; hasVoted(proposalId: PromiseOrValue<BigNumberish>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; hashProposal(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; name(overrides?: CallOverrides): Promise<string>; proposalDeadline(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; proposalSnapshot(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; propose(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], description: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; quorum(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; state(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>; supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>; version(overrides?: CallOverrides): Promise<string>; votingDelay(overrides?: CallOverrides): Promise<BigNumber>; votingPeriod(overrides?: CallOverrides): Promise<BigNumber>; callStatic: { COUNTING_MODE(overrides?: CallOverrides): Promise<string>; castVote(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; castVoteBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; castVoteWithReason(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; castVoteWithReasonAndParams(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; castVoteWithReasonAndParamsBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; execute(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; getVotes(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesWithParams(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, params: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; hasVoted(proposalId: PromiseOrValue<BigNumberish>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; hashProposal(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; name(overrides?: CallOverrides): Promise<string>; proposalDeadline(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; proposalSnapshot(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; propose(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], description: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; quorum(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; state(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>; supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>; version(overrides?: CallOverrides): Promise<string>; votingDelay(overrides?: CallOverrides): Promise<BigNumber>; votingPeriod(overrides?: CallOverrides): Promise<BigNumber>; }; filters: { "ProposalCanceled(uint256)"(proposalId?: null): ProposalCanceledEventFilter; ProposalCanceled(proposalId?: null): ProposalCanceledEventFilter; "ProposalCreated(uint256,address,address[],uint256[],string[],bytes[],uint256,uint256,string)"(proposalId?: null, proposer?: null, targets?: null, values?: null, signatures?: null, calldatas?: null, startBlock?: null, endBlock?: null, description?: null): ProposalCreatedEventFilter; ProposalCreated(proposalId?: null, proposer?: null, targets?: null, values?: null, signatures?: null, calldatas?: null, startBlock?: null, endBlock?: null, description?: null): ProposalCreatedEventFilter; "ProposalExecuted(uint256)"(proposalId?: null): ProposalExecutedEventFilter; ProposalExecuted(proposalId?: null): ProposalExecutedEventFilter; "VoteCast(address,uint256,uint8,uint256,string)"(voter?: PromiseOrValue<string> | null, proposalId?: null, support?: null, weight?: null, reason?: null): VoteCastEventFilter; VoteCast(voter?: PromiseOrValue<string> | null, proposalId?: null, support?: null, weight?: null, reason?: null): VoteCastEventFilter; "VoteCastWithParams(address,uint256,uint8,uint256,string,bytes)"(voter?: PromiseOrValue<string> | null, proposalId?: null, support?: null, weight?: null, reason?: null, params?: null): VoteCastWithParamsEventFilter; VoteCastWithParams(voter?: PromiseOrValue<string> | null, proposalId?: null, support?: null, weight?: null, reason?: null, params?: null): VoteCastWithParamsEventFilter; }; estimateGas: { COUNTING_MODE(overrides?: CallOverrides): Promise<BigNumber>; castVote(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; castVoteBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; castVoteWithReason(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; castVoteWithReasonAndParams(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; castVoteWithReasonAndParamsBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; execute(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; getVotes(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesWithParams(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, params: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; hasVoted(proposalId: PromiseOrValue<BigNumberish>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; hashProposal(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; name(overrides?: CallOverrides): Promise<BigNumber>; proposalDeadline(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; proposalSnapshot(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; propose(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], description: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; quorum(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; state(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; version(overrides?: CallOverrides): Promise<BigNumber>; votingDelay(overrides?: CallOverrides): Promise<BigNumber>; votingPeriod(overrides?: CallOverrides): Promise<BigNumber>; }; populateTransaction: { COUNTING_MODE(overrides?: CallOverrides): Promise<PopulatedTransaction>; castVote(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; castVoteBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; castVoteWithReason(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; castVoteWithReasonAndParams(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; castVoteWithReasonAndParamsBySig(proposalId: PromiseOrValue<BigNumberish>, support: PromiseOrValue<BigNumberish>, reason: PromiseOrValue<string>, params: PromiseOrValue<BytesLike>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; execute(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; getVotes(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getVotesWithParams(account: PromiseOrValue<string>, blockNumber: PromiseOrValue<BigNumberish>, params: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>; hasVoted(proposalId: PromiseOrValue<BigNumberish>, account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>; hashProposal(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], descriptionHash: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>; name(overrides?: CallOverrides): Promise<PopulatedTransaction>; proposalDeadline(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; proposalSnapshot(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; propose(targets: PromiseOrValue<string>[], values: PromiseOrValue<BigNumberish>[], calldatas: PromiseOrValue<BytesLike>[], description: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; quorum(blockNumber: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; state(proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>; version(overrides?: CallOverrides): Promise<PopulatedTransaction>; votingDelay(overrides?: CallOverrides): Promise<PopulatedTransaction>; votingPeriod(overrides?: CallOverrides): Promise<PopulatedTransaction>; }; }