import { CommandCtor, CommandInfo, ExecutionContext, Input, IWallet, IProvider, EVMExecuteCommandInstance, EVMDependencies, TransactionResponse as CoreTransactionResponse, Env } from '@chainlink/evm-gauntlet'; import { Result, WriteCommand } from '@chainlink/gauntlet-core'; import { State, Proposal, Topic } from './types'; import { ethers, Contract, ContractFactory, AbstractSigner as EthersWallet, Provider as EthersProvider, TransactionRequest, TransactionResponse } from 'ethers'; import { UserInput, ContractInput, ProposalAction, SafeTxInput } from './types'; import { EVMTransaction } from '@chainlink/evm-gauntlet'; export declare class BaseMsigCommand> extends WriteCommand> { id: string; deps: EVMDependencies; env: Env; wallet: IWallet; provider: IProvider; contractAddress: string; account: string; executionContext: ExecutionContext; contract: ContractFactory; multisendContract: ContractFactory; allCommands: { [key: string]: CommandCtor>; }; input: Input; commands: EVMExecuteCommandInstance[]; safeAddress: string; multisendAddress: string; safeExecutor: string; initialState: State; connectedContract: Contract; proposalId: string; getCommandInfo: () => CommandInfo; makeMessage: () => Promise; safeNonceToUse: number; constructor(flags: any, args: any, id: any, deps: any); validateSafeExecutionNonce: (safeNonce: number, userNonce: number) => void; fetchSafeState: (proposalId: string) => Promise; fetchProposal: (proposalId: string, owners: string[], threshold: number, selfApprovalStatus: bigint) => Promise; getConfirmations: (owners: string[], threshold: number, safeTxHash: string) => Promise<{ approvers: string[]; hasEnoughConfirmations: boolean; }>; getApprovers: (owners: string[], safeTxHash: string) => Promise; getProposalStateMsgOpts: (result?: Result>) => Promise<{ execute: string; approve: string; none: string; }>; safeInputToPayload: (safeInput: SafeTxInput, signatures?: string) => any[]; buildSafeTxInput: (nonce: number) => Promise; buildSafeInputFromMessages: (messages: TransactionRequest[]) => { to: string; value: ethers.BigNumberish; data: ethers.BytesLike; operation: number; }; validateSafeHash: (providedHash: string, generatedHash: string) => Promise; makeExecuteMessage: ProposalAction; makeAcceptMessage: ProposalAction; registerMakeMessage: (proposalId: string, safeNonce: number) => () => Promise; addGasLimitToMessage: (safeMessage: any) => Promise; getEmittedEvent: (txn: EVMTransaction) => Promise; beforeExecute: () => Promise; afterExport: (result: Result, proposalId?: string, safeNonce?: number, message?: TransactionRequest) => Promise<{ proposalId: string; safeNonce: number; to: ethers.AddressLike; data: string; commandData: any[]; }>; afterExecute: (result: Result>, proposalId?: string, safeNonce?: number) => Promise<{ proposalId: string; safeNonce: number; commandData: any[]; }>; buildProposalId: (safeNonce: number) => Promise; export: () => Promise<{ data: { signedTx: { tx: string; message: ethers.TransactionRequest; }; }; responses: any[]; }>; execute: () => Promise<{ data: {}; responses: any[]; }>; } //# sourceMappingURL=base.d.ts.map