UNPKG

@q-dev/q-js-sdk

Version:

Typescript Library to interact with Q System Contracts

535 lines (534 loc) 34.3 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 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 IParametersVoting { type ParameterInfoStruct = { paramKey: PromiseOrValue<string>; paramType: PromiseOrValue<BigNumberish>; addrValue: PromiseOrValue<string>; boolValue: PromiseOrValue<boolean>; bytes32Value: PromiseOrValue<BytesLike>; strValue: PromiseOrValue<string>; uintValue: PromiseOrValue<BigNumberish>; }; type ParameterInfoStructOutput = [ string, number, string, boolean, string, string, BigNumber ] & { paramKey: string; paramType: number; addrValue: string; boolValue: boolean; bytes32Value: string; strValue: string; uintValue: BigNumber; }; } export interface ExpertsParametersVotingInterface extends utils.Interface { functions: { "expertsMembershipKey()": FunctionFragment; "expertsParametersKey()": FunctionFragment; "hasRootVetoed(uint256,address)": FunctionFragment; "hasUserVoted(uint256,address)": FunctionFragment; "majorityKey()": FunctionFragment; "proposalCount()": FunctionFragment; "proposals(uint256)": FunctionFragment; "quorumKey()": FunctionFragment; "vetoPeriodKey()": FunctionFragment; "votingPeriodKey()": FunctionFragment; "createAddrProposal(string,string,address)": FunctionFragment; "createUintProposal(string,string,uint256)": FunctionFragment; "createStrProposal(string,string,string)": FunctionFragment; "createBytesProposal(string,string,bytes32)": FunctionFragment; "createBoolProposal(string,string,bool)": FunctionFragment; "voteFor(uint256)": FunctionFragment; "voteAgainst(uint256)": FunctionFragment; "veto(uint256)": FunctionFragment; "execute(uint256)": FunctionFragment; "getProposal(uint256)": FunctionFragment; "getProposalStats(uint256)": FunctionFragment; "getParametersArr(uint256)": FunctionFragment; "getVetosNumber(uint256)": FunctionFragment; "getVetosPercentage(uint256)": FunctionFragment; "initialize(address)": FunctionFragment; "createProposal(string,(string,uint8,address,bool,bytes32,string,uint256)[])": FunctionFragment; "getStatus(uint256)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "expertsMembershipKey" | "expertsParametersKey" | "hasRootVetoed" | "hasUserVoted" | "majorityKey" | "proposalCount" | "proposals" | "quorumKey" | "vetoPeriodKey" | "votingPeriodKey" | "createAddrProposal" | "createUintProposal" | "createStrProposal" | "createBytesProposal" | "createBoolProposal" | "voteFor" | "voteAgainst" | "veto" | "execute" | "getProposal" | "getProposalStats" | "getParametersArr" | "getVetosNumber" | "getVetosPercentage" | "initialize" | "createProposal" | "getStatus"): FunctionFragment; encodeFunctionData(functionFragment: "expertsMembershipKey", values?: undefined): string; encodeFunctionData(functionFragment: "expertsParametersKey", 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: "quorumKey", values?: undefined): string; encodeFunctionData(functionFragment: "vetoPeriodKey", values?: undefined): string; encodeFunctionData(functionFragment: "votingPeriodKey", values?: undefined): string; encodeFunctionData(functionFragment: "createAddrProposal", values: [ PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "createUintProposal", values: [ PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<BigNumberish> ]): string; encodeFunctionData(functionFragment: "createStrProposal", values: [ PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "createBytesProposal", values: [ PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "createBoolProposal", values: [ PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<boolean> ]): string; encodeFunctionData(functionFragment: "voteFor", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "voteAgainst", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "veto", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "execute", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getProposal", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getProposalStats", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getParametersArr", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getVetosNumber", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "getVetosPercentage", values: [PromiseOrValue<BigNumberish>]): string; encodeFunctionData(functionFragment: "initialize", values: [PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "createProposal", values: [PromiseOrValue<string>, IParametersVoting.ParameterInfoStruct[]]): string; encodeFunctionData(functionFragment: "getStatus", values: [PromiseOrValue<BigNumberish>]): string; decodeFunctionResult(functionFragment: "expertsMembershipKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "expertsParametersKey", 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: "quorumKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "vetoPeriodKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "votingPeriodKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createAddrProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createUintProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createStrProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createBytesProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createBoolProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "voteFor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "voteAgainst", data: BytesLike): Result; decodeFunctionResult(functionFragment: "veto", data: BytesLike): Result; decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getProposalStats", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getParametersArr", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVetosNumber", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getVetosPercentage", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createProposal", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getStatus", data: BytesLike): Result; events: { "ProposalCreated(uint256,tuple)": EventFragment; "ProposalExecuted(uint256)": EventFragment; "UserVoted(uint256,uint8)": EventFragment; "VetoOccurred(uint256,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "ProposalCreated"): EventFragment; getEvent(nameOrSignatureOrTopic: "ProposalExecuted"): 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 UserVotedEventObject { _proposalId: BigNumber; _votingOption: number; } export declare type UserVotedEvent = TypedEvent<[ BigNumber, number ], 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 ExpertsParametersVoting extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: ExpertsParametersVotingInterface; 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: { expertsMembershipKey(overrides?: CallOverrides): Promise<[string]>; expertsParametersKey(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, BigNumber ] & { base: IVoting.BaseProposalStructOutput; parametersSize: BigNumber; }>; quorumKey(overrides?: CallOverrides): Promise<[string]>; vetoPeriodKey(overrides?: CallOverrides): Promise<[string]>; votingPeriodKey(overrides?: CallOverrides): Promise<[string]>; createAddrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _addrValue: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createUintProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _uintValue: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createStrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _strValue: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createBytesProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _bytes32Value: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createBoolProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _boolValue: PromiseOrValue<boolean>, 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>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IVoting.BaseProposalStructOutput]>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IVoting.VotingStatsStructOutput]>; getParametersArr(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[IParametersVoting.ParameterInfoStructOutput[]]>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[BigNumber]>; initialize(_registry: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createProposal(_remark: PromiseOrValue<string>, _parametersArr: IParametersVoting.ParameterInfoStruct[], overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[number]>; }; expertsMembershipKey(overrides?: CallOverrides): Promise<string>; expertsParametersKey(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, BigNumber ] & { base: IVoting.BaseProposalStructOutput; parametersSize: BigNumber; }>; quorumKey(overrides?: CallOverrides): Promise<string>; vetoPeriodKey(overrides?: CallOverrides): Promise<string>; votingPeriodKey(overrides?: CallOverrides): Promise<string>; createAddrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _addrValue: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createUintProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _uintValue: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createStrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _strValue: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createBytesProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _bytes32Value: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createBoolProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _boolValue: PromiseOrValue<boolean>, 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>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IVoting.BaseProposalStructOutput>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IVoting.VotingStatsStructOutput>; getParametersArr(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IParametersVoting.ParameterInfoStructOutput[]>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; initialize(_registry: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; createProposal(_remark: PromiseOrValue<string>, _parametersArr: IParametersVoting.ParameterInfoStruct[], overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<number>; callStatic: { expertsMembershipKey(overrides?: CallOverrides): Promise<string>; expertsParametersKey(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, BigNumber ] & { base: IVoting.BaseProposalStructOutput; parametersSize: BigNumber; }>; quorumKey(overrides?: CallOverrides): Promise<string>; vetoPeriodKey(overrides?: CallOverrides): Promise<string>; votingPeriodKey(overrides?: CallOverrides): Promise<string>; createAddrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _addrValue: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; createUintProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _uintValue: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; createStrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _strValue: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; createBytesProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _bytes32Value: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; createBoolProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _boolValue: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>; voteFor(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; voteAgainst(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IVoting.BaseProposalStructOutput>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IVoting.VotingStatsStructOutput>; getParametersArr(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<IParametersVoting.ParameterInfoStructOutput[]>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; initialize(_registry: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; createProposal(_remark: PromiseOrValue<string>, _parametersArr: IParametersVoting.ParameterInfoStruct[], 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; "UserVoted(uint256,uint8)"(_proposalId?: PromiseOrValue<BigNumberish> | null, _votingOption?: null): UserVotedEventFilter; UserVoted(_proposalId?: PromiseOrValue<BigNumberish> | null, _votingOption?: 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: { expertsMembershipKey(overrides?: CallOverrides): Promise<BigNumber>; expertsParametersKey(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>; quorumKey(overrides?: CallOverrides): Promise<BigNumber>; vetoPeriodKey(overrides?: CallOverrides): Promise<BigNumber>; votingPeriodKey(overrides?: CallOverrides): Promise<BigNumber>; createAddrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _addrValue: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; createUintProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _uintValue: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; createStrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _strValue: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; createBytesProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _bytes32Value: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; createBoolProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _boolValue: PromiseOrValue<boolean>, 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>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getParametersArr(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; initialize(_registry: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; createProposal(_remark: PromiseOrValue<string>, _parametersArr: IParametersVoting.ParameterInfoStruct[], overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; }; populateTransaction: { expertsMembershipKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; expertsParametersKey(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>; quorumKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; vetoPeriodKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; votingPeriodKey(overrides?: CallOverrides): Promise<PopulatedTransaction>; createAddrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _addrValue: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; createUintProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _uintValue: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; createStrProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _strValue: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; createBytesProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _bytes32Value: PromiseOrValue<BytesLike>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; createBoolProposal(_remark: PromiseOrValue<string>, _parameterKey: PromiseOrValue<string>, _boolValue: PromiseOrValue<boolean>, 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>; veto(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; execute(_proposalId: PromiseOrValue<BigNumberish>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getProposalStats(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getParametersArr(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getVetosNumber(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; getVetosPercentage(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; initialize(_registry: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; createProposal(_remark: PromiseOrValue<string>, _parametersArr: IParametersVoting.ParameterInfoStruct[], overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; getStatus(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>; }; }