UNPKG

@q-dev/q-js-sdk

Version:

Typescript Library to interact with Q System Contracts

505 lines (504 loc) 31.7 kB
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, 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 declare type MembershipProposalDetailsStruct = { addressToAdd: PromiseOrValue<string>; addressToRemove: PromiseOrValue<string>; }; export declare type MembershipProposalDetailsStructOutput = [string, string] & { addressToAdd: string; addressToRemove: string; }; export declare type BaseVotingWeightInfoStruct = { ownWeight: PromiseOrValue<BigNumberish>; votingAgent: PromiseOrValue<string>; delegationStatus: PromiseOrValue<BigNumberish>; lockedUntil: PromiseOrValue<BigNumberish>; }; export declare type BaseVotingWeightInfoStructOutput = [ BigNumber, string, number, BigNumber ] & { ownWeight: BigNumber; votingAgent: string; delegationStatus: number; lockedUntil: BigNumber; }; export declare namespace IVoting { type VotingParamsStruct = { votingStartTime: PromiseOrValue<BigNumberish>; votingEndTime: PromiseOrValue<BigNumberish>; vetoEndTime: PromiseOrValue<BigNumberish>; proposalExecutionP: PromiseOrValue<BigNumberish>; requiredQuorum: PromiseOrValue<BigNumberish>; requiredMajority: PromiseOrValue<BigNumberish>; requiredSMajority: PromiseOrValue<BigNumberish>; requiredSQuorum: PromiseOrValue<BigNumberish>; }; type VotingParamsStructOutput = [ BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber ] & { votingStartTime: BigNumber; votingEndTime: BigNumber; vetoEndTime: BigNumber; proposalExecutionP: BigNumber; requiredQuorum: BigNumber; requiredMajority: BigNumber; requiredSMajority: BigNumber; requiredSQuorum: BigNumber; }; type VotingCountersStruct = { weightFor: PromiseOrValue<BigNumberish>; weightAgainst: PromiseOrValue<BigNumberish>; vetosCount: PromiseOrValue<BigNumberish>; }; type VotingCountersStructOutput = [BigNumber, BigNumber, BigNumber] & { weightFor: BigNumber; weightAgainst: BigNumber; vetosCount: BigNumber; }; type BaseProposalStruct = { remark: PromiseOrValue<string>; params: IVoting.VotingParamsStruct; counters: IVoting.VotingCountersStruct; executed: PromiseOrValue<boolean>; }; type BaseProposalStructOutput = [ string, IVoting.VotingParamsStructOutput, IVoting.VotingCountersStructOutput, boolean ] & { remark: string; params: IVoting.VotingParamsStructOutput; counters: IVoting.VotingCountersStructOutput; executed: boolean; }; type VotingStatsStruct = { requiredQuorum: PromiseOrValue<BigNumberish>; currentQuorum: PromiseOrValue<BigNumberish>; requiredMajority: PromiseOrValue<BigNumberish>; currentMajority: PromiseOrValue<BigNumberish>; currentVetoPercentage: PromiseOrValue<BigNumberish>; }; type VotingStatsStructOutput = [ BigNumber, BigNumber, BigNumber, BigNumber, BigNumber ] & { requiredQuorum: BigNumber; currentQuorum: BigNumber; requiredMajority: BigNumber; currentMajority: BigNumber; currentVetoPercentage: BigNumber; }; } export declare namespace IQthVoting { type VotingWeightInfoStruct = { hasAlreadyVoted: PromiseOrValue<boolean>; canVote: PromiseOrValue<boolean>; base: BaseVotingWeightInfoStruct; }; type VotingWeightInfoStructOutput = [ boolean, boolean, BaseVotingWeightInfoStructOutput ] & { hasAlreadyVoted: boolean; canVote: boolean; base: BaseVotingWeightInfoStructOutput; }; } export interface ExpertsMembershipVotingInterface extends utils.Interface { functions: { "expertKey()": FunctionFragment; "hasRootVetoed(uint256,address)": FunctionFragment; "hasUserVoted(uint256,address)": FunctionFragment; "majorityKey()": FunctionFragment; "proposalCount()": FunctionFragment; "proposals(uint256)": FunctionFragment; "vetoPeriodKey()": FunctionFragment; "votingPeriodKey()": FunctionFragment; "votingQuorumKey()": FunctionFragment; "createChangeExpertProposal(string,address,address)": FunctionFragment; "createAddExpertProposal(string,address)": FunctionFragment; "createRemoveExpertProposal(string,address)": FunctionFragment; "voteFor(uint256)": FunctionFragment; "voteAgainst(uint256)": FunctionFragment; "execute(uint256)": FunctionFragment; "veto(uint256)": FunctionFragment; "getVetosNumber(uint256)": FunctionFragment; "getVotesFor(uint256)": FunctionFragment; "getVotesAgainst(uint256)": FunctionFragment; "getProposal(uint256)": FunctionFragment; "getProposalStats(uint256)": FunctionFragment; "initialize(address)": FunctionFragment; "getVotingWeightInfo(uint256)": FunctionFragment; "getVetosPercentage(uint256)": FunctionFragment; "getStatus(uint256)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "expertKey" | "hasRootVetoed" | "hasUserVoted" | "majorityKey" | "proposalCount" | "proposals" | "vetoPeriodKey" | "votingPeriodKey" | "votingQuorumKey" | "createChangeExpertProposal" | "createAddExpertProposal" | "createRemoveExpertProposal" | "voteFor" | "voteAgainst" | "execute" | "veto" | "getVetosNumber" | "getVotesFor" | "getVotesAgainst" | "getProposal" | "getProposalStats" | "initialize" | "getVotingWeightInfo" | "getVetosPercentage" | "getStatus"): FunctionFragment; encodeFunctionData(functionFragment: "expertKey", values?: undefined): string; encodeFunctionData(functionFragment: "hasRootVetoed", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "hasUserVoted", values: [PromiseOrValue<BigNumberish>, PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "majorityKey", values?: undefined): string; encodeFunctionData(functionFragment: "proposalCount", values?: undefined): string; encodeFunctionData(functionFragment: "proposals", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "vetoPeriodKey", values?: undefined): string; encodeFunctionData(functionFragment: "votingPeriodKey", values?: undefined): string; encodeFunctionData(functionFragment: "votingQuorumKey", values?: undefined): string; encodeFunctionData(functionFragment: "createChangeExpertProposal", values: [ PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "createAddExpertProposal", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "createRemoveExpertProposal", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "voteFor", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "voteAgainst", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "execute", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "veto", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getVetosNumber", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getVotesFor", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getVotesAgainst", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getProposal", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getProposalStats", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "initialize", values: [PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "getVotingWeightInfo", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getVetosPercentage", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getStatus", values: [PromiseOrValue<BigNumberish>]): string; decodeFunctionResult(functionFragment: "expertKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasRootVetoed", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasUserVoted", data: BytesLike): Result; decodeFunctionResult(functionFragment: "majorityKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "proposalCount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "proposals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "vetoPeriodKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "votingPeriodKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "votingQuorumKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createChangeExpertProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createAddExpertProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createRemoveExpertProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "voteFor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "voteAgainst", data: BytesLike): Result; decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; decodeFunctionResult(functionFragment: "veto", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVetosNumber", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVotesFor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVotesAgainst", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getProposalStats", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVotingWeightInfo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVetosPercentage", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getStatus", data: BytesLike): Result; events: { "ProposalCreated(uint256,tuple)": EventFragment; "ProposalExecuted(uint256)": EventFragment; "QuorumReached(uint256)": EventFragment; "UserVoted(uint256,uint8,uint256)": EventFragment; "VetoOccurred(uint256,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "ProposalCreated"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalExecuted"): EventFragment; getEvent(nameOrSignatureOrTopic: "QuorumReached"): EventFragment; getEvent(nameOrSignatureOrTopic: "UserVoted"): EventFragment; getEvent(nameOrSignatureOrTopic: "VetoOccurred"): EventFragment; } export interface ProposalCreatedEventObject { _id: BigNumber; _proposal: IVoting.BaseProposalStructOutput; } export declare type ProposalCreatedEvent = TypedEvent<[ BigNumber, IVoting.BaseProposalStructOutput ], ProposalCreatedEventObject>; export declare type ProposalCreatedEventFilter = TypedEventFilter<ProposalCreatedEvent>; export interface ProposalExecutedEventObject { _proposalId: BigNumber; } export declare type ProposalExecutedEvent = TypedEvent<[ BigNumber ], ProposalExecutedEventObject>; export declare type ProposalExecutedEventFilter = TypedEventFilter<ProposalExecutedEvent>; export interface QuorumReachedEventObject { id: BigNumber; } export declare type QuorumReachedEvent = TypedEvent<[ BigNumber ], QuorumReachedEventObject>; export declare type QuorumReachedEventFilter = TypedEventFilter<QuorumReachedEvent>; export interface UserVotedEventObject { _proposalId: BigNumber; _votingOption: number; _amount: BigNumber; } export declare type UserVotedEvent = TypedEvent<[ BigNumber, number, BigNumber ], UserVotedEventObject>; export declare type UserVotedEventFilter = TypedEventFilter<UserVotedEvent>; export interface VetoOccurredEventObject { id: BigNumber; sender: string; } export declare type VetoOccurredEvent = TypedEvent<[ BigNumber, string ], VetoOccurredEventObject>; export declare type VetoOccurredEventFilter = TypedEventFilter<VetoOccurredEvent>; export interface ExpertsMembershipVoting extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: ExpertsMembershipVotingInterface; 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: { expertKey(overrides?: CallOverrides): Promise<[string]>; hasRootVetoed(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>; hasUserVoted(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>; majorityKey(overrides?: CallOverrides): Promise<[string]>; proposalCount(overrides?: CallOverrides): Promise<[BigNumber]>; proposals(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[ IVoting.BaseProposalStructOutput, MembershipProposalDetailsStructOutput ] & { base: IVoting.BaseProposalStructOutput; proposalDetails: MembershipProposalDetailsStructOutput; }>; vetoPeriodKey(overrides?: CallOverrides): Promise<[string]>; votingPeriodKey(overrides?: CallOverrides): Promise<[string]>; votingQuorumKey(overrides?: CallOverrides): Promise<[string]>; createChangeExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, _expertToBeChanged: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createAddExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createRemoveExpertProposal(_remark: PromiseOrValue<string>, _toRemoveExpert: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; voteFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; voteAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; getVotesFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; getVotesAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IVoting.BaseProposalStructOutput]>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IVoting.VotingStatsStructOutput]>; initialize(_registry: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getVotingWeightInfo(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IQthVoting.VotingWeightInfoStructOutput]>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[number]>; }; expertKey(overrides?: CallOverrides): Promise<string>; hasRootVetoed(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; hasUserVoted(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; majorityKey(overrides?: CallOverrides): Promise<string>; proposalCount(overrides?: CallOverrides): Promise<BigNumber>; proposals(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[ IVoting.BaseProposalStructOutput, MembershipProposalDetailsStructOutput ] & { base: IVoting.BaseProposalStructOutput; proposalDetails: MembershipProposalDetailsStructOutput; }>; vetoPeriodKey(overrides?: CallOverrides): Promise<string>; votingPeriodKey(overrides?: CallOverrides): Promise<string>; votingQuorumKey(overrides?: CallOverrides): Promise<string>; createChangeExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, _expertToBeChanged: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createAddExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createRemoveExpertProposal(_remark: PromiseOrValue<string>, _toRemoveExpert: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; voteFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; voteAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IVoting.BaseProposalStructOutput>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IVoting.VotingStatsStructOutput>; initialize(_registry: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getVotingWeightInfo(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IQthVoting.VotingWeightInfoStructOutput>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>; callStatic: { expertKey(overrides?: CallOverrides): Promise<string>; hasRootVetoed(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; hasUserVoted(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; majorityKey(overrides?: CallOverrides): Promise<string>; proposalCount(overrides?: CallOverrides): Promise<BigNumber>; proposals(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[ IVoting.BaseProposalStructOutput, MembershipProposalDetailsStructOutput ] & { base: IVoting.BaseProposalStructOutput; proposalDetails: MembershipProposalDetailsStructOutput; }>; vetoPeriodKey(overrides?: CallOverrides): Promise<string>; votingPeriodKey(overrides?: CallOverrides): Promise<string>; votingQuorumKey(overrides?: CallOverrides): Promise<string>; createChangeExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, _expertToBeChanged: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; createAddExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; createRemoveExpertProposal(_remark: PromiseOrValue<string>, _toRemoveExpert: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; voteFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; voteAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IVoting.BaseProposalStructOutput>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IVoting.VotingStatsStructOutput>; initialize(_registry: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; getVotingWeightInfo(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IQthVoting.VotingWeightInfoStructOutput>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>; }; filters: { "ProposalCreated(uint256,tuple)"(_id?: null, _proposal?: null): ProposalCreatedEventFilter; ProposalCreated(_id?: null, _proposal?: null): ProposalCreatedEventFilter; "ProposalExecuted(uint256)"(_proposalId?: PromiseOrValue<BigNumberish> | null): ProposalExecutedEventFilter; ProposalExecuted(_proposalId?: PromiseOrValue<BigNumberish> | null): ProposalExecutedEventFilter; "QuorumReached(uint256)"(id?: null): QuorumReachedEventFilter; QuorumReached(id?: null): QuorumReachedEventFilter; "UserVoted(uint256,uint8,uint256)"(_proposalId?: PromiseOrValue<BigNumberish> | null, _votingOption?: null, _amount?: null): UserVotedEventFilter; UserVoted(_proposalId?: PromiseOrValue<BigNumberish> | null, _votingOption?: null, _amount?: null): UserVotedEventFilter; "VetoOccurred(uint256,address)"(id?: PromiseOrValue<BigNumberish> | null, sender?: PromiseOrValue<string> | null): VetoOccurredEventFilter; VetoOccurred(id?: PromiseOrValue<BigNumberish> | null, sender?: PromiseOrValue<string> | null): VetoOccurredEventFilter; }; estimateGas: { expertKey(overrides?: CallOverrides): Promise<BigNumber>; hasRootVetoed(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; hasUserVoted(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; majorityKey(overrides?: CallOverrides): Promise<BigNumber>; proposalCount(overrides?: CallOverrides): Promise<BigNumber>; proposals(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; vetoPeriodKey(overrides?: CallOverrides): Promise<BigNumber>; votingPeriodKey(overrides?: CallOverrides): Promise<BigNumber>; votingQuorumKey(overrides?: CallOverrides): Promise<BigNumber>; createChangeExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, _expertToBeChanged: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; createAddExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; createRemoveExpertProposal(_remark: PromiseOrValue<string>, _toRemoveExpert: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; voteFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; voteAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVotesAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; initialize(_registry: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; getVotingWeightInfo(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; }; populateTransaction: { expertKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; hasRootVetoed(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>; hasUserVoted(arg0: PromiseOrValue<BigNumberish>, arg1: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>; majorityKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; proposalCount(overrides?: CallOverrides): Promise<PopulatedTransaction>; proposals(arg0: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; vetoPeriodKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; votingPeriodKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; votingQuorumKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; createChangeExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, _expertToBeChanged: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; createAddExpertProposal(_remark: PromiseOrValue<string>, _newExpert: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; createRemoveExpertProposal(_remark: PromiseOrValue<string>, _toRemoveExpert: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; voteFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; voteAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getVotesFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getVotesAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; initialize(_registry: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; getVotingWeightInfo(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; }; }