import { DecodedLogEntryEvent, DecodedLogEntry, DecodedTransactionReceipt } from "@joincivil/typescript-types"; import "rxjs/add/operator/distinctUntilChanged"; import { TransactionConfig } from "web3-core"; import { EthAddress } from "@joincivil/typescript-types"; import { EthApi } from "@joincivil/ethapi"; import { BaseContract } from "../../basecontract"; declare type BigNumber = string; export declare class GovernmentContract extends BaseContract { static singletonTrusted(ethApi: EthApi): Promise; static atUntrusted(ethApi: EthApi, address: EthAddress): GovernmentContract; static deployTrusted: { sendTransactionAsync(ethApi: EthApi, appellateAddr: string, governmentControllerAddr: string, plcrAddr: string, appealFeeAmount: string, requestAppealLength: string, judgeAppealLength: string, appealSupermajorityPercentage: string, appealChallengeVoteDispensationPct: string, pDeposit: string, pCommitStageLength: string, pRevealStageLength: string, constHash: string, constURI: string, options: TransactionConfig): Promise; estimateGasAsync(ethApi: EthApi, appellateAddr: string, governmentControllerAddr: string, plcrAddr: string, appealFeeAmount: string, requestAppealLength: string, judgeAppealLength: string, appealSupermajorityPercentage: string, appealChallengeVoteDispensationPct: string, pDeposit: string, pCommitStageLength: string, pRevealStageLength: string, constHash: string, constURI: string): Promise; }; PROCESSBY: { callAsync(): Promise; }; proposals: { callAsync(index_0: string): Promise<[string, string, string, string]>; }; constitutionURI: { callAsync(): Promise; }; constitutionHash: { callAsync(): Promise; }; appellate: { callAsync(): Promise; }; params: { callAsync(index_0: string): Promise; }; governmentController: { callAsync(): Promise; }; voting: { callAsync(): Promise; }; getAppellate: { callAsync(): Promise; }; getGovernmentController: { callAsync(): Promise; }; get: { callAsync(name: string): Promise; }; proposeReparameterization: { sendTransactionAsync(_name: string, _value: string, txData?: TransactionConfig | undefined): Promise; estimateGasAsync(_name: string, _value: string, txData?: TransactionConfig | undefined): Promise; getRaw(_name: string, _value: string, txData?: TransactionConfig | undefined): Promise; }; setNewConstitution: { sendTransactionAsync(_newConstHash: string, _newConstURI: string, txData?: TransactionConfig | undefined): Promise; estimateGasAsync(_newConstHash: string, _newConstURI: string, txData?: TransactionConfig | undefined): Promise; getRaw(_newConstHash: string, _newConstURI: string, txData?: TransactionConfig | undefined): Promise; }; processProposal: { sendTransactionAsync(_propID: string, txData?: TransactionConfig | undefined): Promise; estimateGasAsync(_propID: string, txData?: TransactionConfig | undefined): Promise; getRaw(_propID: string, txData?: TransactionConfig | undefined): Promise; }; propExists: { callAsync(_propID: string): Promise; }; propCanBeResolved: { callAsync(_propID: string): Promise; }; setAppellate: { sendTransactionAsync(newAppellate: string, txData?: TransactionConfig | undefined): Promise; estimateGasAsync(newAppellate: string, txData?: TransactionConfig | undefined): Promise; getRaw(newAppellate: string, txData?: TransactionConfig | undefined): Promise; }; _AppellateSetStream: (paramFilters?: import("../../utils/contracts").TypedEventFilter | undefined, filterObject?: import("../../utils/contracts").EventOptions | undefined) => import("rxjs").Observable>; _ParameterSetStream: (paramFilters?: import("../../utils/contracts").TypedEventFilter | undefined, filterObject?: import("../../utils/contracts").EventOptions | undefined) => import("rxjs").Observable>; _GovtReparameterizationProposalStream: (paramFilters?: import("../../utils/contracts").TypedEventFilter | undefined, filterObject?: import("../../utils/contracts").EventOptions | undefined) => import("rxjs").Observable>; _ProposalPassedStream: (paramFilters?: import("../../utils/contracts").TypedEventFilter | undefined, filterObject?: import("../../utils/contracts").EventOptions | undefined) => import("rxjs").Observable>; _ProposalExpiredStream: (paramFilters?: import("../../utils/contracts").TypedEventFilter | undefined, filterObject?: import("../../utils/contracts").EventOptions | undefined) => import("rxjs").Observable>; _ProposalFailedStream: (paramFilters?: import("../../utils/contracts").TypedEventFilter | undefined, filterObject?: import("../../utils/contracts").EventOptions | undefined) => import("rxjs").Observable>; _NewConstSetStream: (paramFilters?: import("../../utils/contracts").TypedEventFilter | undefined, filterObject?: import("../../utils/contracts").EventOptions | undefined) => import("rxjs").Observable>; private constructor(); } export declare namespace Government { enum Events { _AppellateSet = "_AppellateSet", _ParameterSet = "_ParameterSet", _GovtReparameterizationProposal = "_GovtReparameterizationProposal", _ProposalPassed = "_ProposalPassed", _ProposalExpired = "_ProposalExpired", _ProposalFailed = "_ProposalFailed", _NewConstSet = "_NewConstSet" } namespace Args { interface _AppellateSet { newAppellate: string; } interface _ParameterSet { name: string; value: BigNumber; } interface _GovtReparameterizationProposal { name: string; value: BigNumber; propID: string; pollID: BigNumber; } interface _ProposalPassed { propId: string; pollID: BigNumber; } interface _ProposalExpired { propId: string; pollID: BigNumber; } interface _ProposalFailed { propId: string; pollID: BigNumber; } interface _NewConstSet { proposedHash: string; proposedURI: string; } } namespace Logs { type _AppellateSet = DecodedLogEntry; type _ParameterSet = DecodedLogEntry; type _GovtReparameterizationProposal = DecodedLogEntry; type _ProposalPassed = DecodedLogEntry; type _ProposalExpired = DecodedLogEntry; type _ProposalFailed = DecodedLogEntry; type _NewConstSet = DecodedLogEntry; type All = Logs._AppellateSet | Logs._ParameterSet | Logs._GovtReparameterizationProposal | Logs._ProposalPassed | Logs._ProposalExpired | Logs._ProposalFailed | Logs._NewConstSet; } namespace LogEvents { type _AppellateSet = DecodedLogEntryEvent; type _ParameterSet = DecodedLogEntryEvent; type _GovtReparameterizationProposal = DecodedLogEntryEvent; type _ProposalPassed = DecodedLogEntryEvent; type _ProposalExpired = DecodedLogEntryEvent; type _ProposalFailed = DecodedLogEntryEvent; type _NewConstSet = DecodedLogEntryEvent; type All = LogEvents._AppellateSet | LogEvents._ParameterSet | LogEvents._GovtReparameterizationProposal | LogEvents._ProposalPassed | LogEvents._ProposalExpired | LogEvents._ProposalFailed | LogEvents._NewConstSet; } type Receipt = DecodedTransactionReceipt; type EventReceipt = DecodedTransactionReceipt; } export {};