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 type UserOperationStruct = {
    sender: PromiseOrValue<string>;
    nonce: PromiseOrValue<BigNumberish>;
    initCode: PromiseOrValue<BytesLike>;
    callData: PromiseOrValue<BytesLike>;
    callGasLimit: PromiseOrValue<BigNumberish>;
    verificationGasLimit: PromiseOrValue<BigNumberish>;
    preVerificationGas: PromiseOrValue<BigNumberish>;
    maxFeePerGas: PromiseOrValue<BigNumberish>;
    maxPriorityFeePerGas: PromiseOrValue<BigNumberish>;
    paymasterAndData: PromiseOrValue<BytesLike>;
    signature: PromiseOrValue<BytesLike>;
};
export type UserOperationStructOutput = [
    string,
    BigNumber,
    string,
    string,
    BigNumber,
    BigNumber,
    BigNumber,
    BigNumber,
    BigNumber,
    string,
    string
] & {
    sender: string;
    nonce: BigNumber;
    initCode: string;
    callData: string;
    callGasLimit: BigNumber;
    verificationGasLimit: BigNumber;
    preVerificationGas: BigNumber;
    maxFeePerGas: BigNumber;
    maxPriorityFeePerGas: BigNumber;
    paymasterAndData: string;
    signature: string;
};
export interface EtherspotWalletInterface extends utils.Interface {
    functions: {
        "addDeposit()": FunctionFragment;
        "addGuardian(address)": FunctionFragment;
        "addOwner(address)": FunctionFragment;
        "changeProposalTimelock(uint256)": FunctionFragment;
        "discardCurrentProposal()": FunctionFragment;
        "entryPoint()": FunctionFragment;
        "execute(address,uint256,bytes)": FunctionFragment;
        "executeBatch(address[],uint256[],bytes[])": FunctionFragment;
        "getDeposit()": FunctionFragment;
        "getNonce()": FunctionFragment;
        "getProposal(uint256)": FunctionFragment;
        "guardianCosign()": FunctionFragment;
        "guardianCount()": FunctionFragment;
        "guardianPropose(address)": FunctionFragment;
        "initialize(address)": FunctionFragment;
        "isGuardian(address)": FunctionFragment;
        "isOwner(address)": FunctionFragment;
        "isValidSignature(bytes32,bytes)": FunctionFragment;
        "onERC1155BatchReceived(address,address,uint256[],uint256[],bytes)": FunctionFragment;
        "onERC1155Received(address,address,uint256,uint256,bytes)": FunctionFragment;
        "onERC721Received(address,address,uint256,bytes)": FunctionFragment;
        "ownerCount()": FunctionFragment;
        "proposalId()": FunctionFragment;
        "proposalTimelock()": FunctionFragment;
        "proxiableUUID()": FunctionFragment;
        "removeGuardian(address)": FunctionFragment;
        "removeOwner(address)": FunctionFragment;
        "supportsInterface(bytes4)": FunctionFragment;
        "tokensReceived(address,address,address,uint256,bytes,bytes)": FunctionFragment;
        "upgradeTo(address)": FunctionFragment;
        "upgradeToAndCall(address,bytes)": FunctionFragment;
        "validateUserOp((address,uint256,bytes,bytes,uint256,uint256,uint256,uint256,uint256,bytes,bytes),bytes32,uint256)": FunctionFragment;
        "withdrawDepositTo(address,uint256)": FunctionFragment;
    };
    getFunction(nameOrSignatureOrTopic: "addDeposit" | "addGuardian" | "addOwner" | "changeProposalTimelock" | "discardCurrentProposal" | "entryPoint" | "execute" | "executeBatch" | "getDeposit" | "getNonce" | "getProposal" | "guardianCosign" | "guardianCount" | "guardianPropose" | "initialize" | "isGuardian" | "isOwner" | "isValidSignature" | "onERC1155BatchReceived" | "onERC1155Received" | "onERC721Received" | "ownerCount" | "proposalId" | "proposalTimelock" | "proxiableUUID" | "removeGuardian" | "removeOwner" | "supportsInterface" | "tokensReceived" | "upgradeTo" | "upgradeToAndCall" | "validateUserOp" | "withdrawDepositTo"): FunctionFragment;
    encodeFunctionData(functionFragment: "addDeposit", values?: undefined): string;
    encodeFunctionData(functionFragment: "addGuardian", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "addOwner", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "changeProposalTimelock", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "discardCurrentProposal", values?: undefined): string;
    encodeFunctionData(functionFragment: "entryPoint", values?: undefined): string;
    encodeFunctionData(functionFragment: "execute", values: [
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BytesLike>
    ]): string;
    encodeFunctionData(functionFragment: "executeBatch", values: [
        PromiseOrValue<string>[],
        PromiseOrValue<BigNumberish>[],
        PromiseOrValue<BytesLike>[]
    ]): string;
    encodeFunctionData(functionFragment: "getDeposit", values?: undefined): string;
    encodeFunctionData(functionFragment: "getNonce", values?: undefined): string;
    encodeFunctionData(functionFragment: "getProposal", values: [PromiseOrValue<BigNumberish>]): string;
    encodeFunctionData(functionFragment: "guardianCosign", values?: undefined): string;
    encodeFunctionData(functionFragment: "guardianCount", values?: undefined): string;
    encodeFunctionData(functionFragment: "guardianPropose", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "initialize", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "isGuardian", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "isOwner", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "isValidSignature", values: [PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike>]): string;
    encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>[],
        PromiseOrValue<BigNumberish>[],
        PromiseOrValue<BytesLike>
    ]): string;
    encodeFunctionData(functionFragment: "onERC1155Received", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BytesLike>
    ]): string;
    encodeFunctionData(functionFragment: "onERC721Received", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BytesLike>
    ]): string;
    encodeFunctionData(functionFragment: "ownerCount", values?: undefined): string;
    encodeFunctionData(functionFragment: "proposalId", values?: undefined): string;
    encodeFunctionData(functionFragment: "proposalTimelock", values?: undefined): string;
    encodeFunctionData(functionFragment: "proxiableUUID", values?: undefined): string;
    encodeFunctionData(functionFragment: "removeGuardian", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "removeOwner", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "supportsInterface", values: [PromiseOrValue<BytesLike>]): string;
    encodeFunctionData(functionFragment: "tokensReceived", values: [
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<string>,
        PromiseOrValue<BigNumberish>,
        PromiseOrValue<BytesLike>,
        PromiseOrValue<BytesLike>
    ]): string;
    encodeFunctionData(functionFragment: "upgradeTo", values: [PromiseOrValue<string>]): string;
    encodeFunctionData(functionFragment: "upgradeToAndCall", values: [PromiseOrValue<string>, PromiseOrValue<BytesLike>]): string;
    encodeFunctionData(functionFragment: "validateUserOp", values: [
        UserOperationStruct,
        PromiseOrValue<BytesLike>,
        PromiseOrValue<BigNumberish>
    ]): string;
    encodeFunctionData(functionFragment: "withdrawDepositTo", values: [PromiseOrValue<string>, PromiseOrValue<BigNumberish>]): string;
    decodeFunctionResult(functionFragment: "addDeposit", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "addGuardian", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "addOwner", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "changeProposalTimelock", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "discardCurrentProposal", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "entryPoint", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "executeBatch", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getDeposit", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getNonce", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "getProposal", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "guardianCosign", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "guardianCount", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "guardianPropose", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "isGuardian", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "isValidSignature", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "ownerCount", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "proposalId", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "proposalTimelock", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "proxiableUUID", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "removeGuardian", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "removeOwner", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "tokensReceived", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "upgradeTo", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "upgradeToAndCall", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "validateUserOp", data: BytesLike): Result;
    decodeFunctionResult(functionFragment: "withdrawDepositTo", data: BytesLike): Result;
    events: {
        "AdminChanged(address,address)": EventFragment;
        "BeaconUpgraded(address)": EventFragment;
        "EtherspotWalletInitialized(address,address)": EventFragment;
        "EtherspotWalletReceived(address,uint256)": EventFragment;
        "GuardianAdded(address)": EventFragment;
        "GuardianRemoved(address)": EventFragment;
        "Initialized(uint8)": EventFragment;
        "OwnerAdded(address)": EventFragment;
        "OwnerRemoved(address)": EventFragment;
        "ProposalDiscarded(uint256,address)": EventFragment;
        "ProposalSubmitted(uint256,address,address)": EventFragment;
        "ProposalTimelockChanged(uint256)": EventFragment;
        "QuorumNotReached(uint256,address,uint256)": EventFragment;
        "Upgraded(address)": EventFragment;
    };
    getEvent(nameOrSignatureOrTopic: "AdminChanged"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "BeaconUpgraded"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "EtherspotWalletInitialized"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "EtherspotWalletReceived"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "GuardianAdded"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "GuardianRemoved"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Initialized"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "OwnerAdded"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "OwnerRemoved"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "ProposalDiscarded"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "ProposalSubmitted"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "ProposalTimelockChanged"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "QuorumNotReached"): EventFragment;
    getEvent(nameOrSignatureOrTopic: "Upgraded"): EventFragment;
}
export interface AdminChangedEventObject {
    previousAdmin: string;
    newAdmin: string;
}
export type AdminChangedEvent = TypedEvent<[
    string,
    string
], AdminChangedEventObject>;
export type AdminChangedEventFilter = TypedEventFilter<AdminChangedEvent>;
export interface BeaconUpgradedEventObject {
    beacon: string;
}
export type BeaconUpgradedEvent = TypedEvent<[
    string
], BeaconUpgradedEventObject>;
export type BeaconUpgradedEventFilter = TypedEventFilter<BeaconUpgradedEvent>;
export interface EtherspotWalletInitializedEventObject {
    entryPoint: string;
    owner: string;
}
export type EtherspotWalletInitializedEvent = TypedEvent<[
    string,
    string
], EtherspotWalletInitializedEventObject>;
export type EtherspotWalletInitializedEventFilter = TypedEventFilter<EtherspotWalletInitializedEvent>;
export interface EtherspotWalletReceivedEventObject {
    from: string;
    amount: BigNumber;
}
export type EtherspotWalletReceivedEvent = TypedEvent<[
    string,
    BigNumber
], EtherspotWalletReceivedEventObject>;
export type EtherspotWalletReceivedEventFilter = TypedEventFilter<EtherspotWalletReceivedEvent>;
export interface GuardianAddedEventObject {
    newGuardian: string;
}
export type GuardianAddedEvent = TypedEvent<[string], GuardianAddedEventObject>;
export type GuardianAddedEventFilter = TypedEventFilter<GuardianAddedEvent>;
export interface GuardianRemovedEventObject {
    removedGuardian: string;
}
export type GuardianRemovedEvent = TypedEvent<[
    string
], GuardianRemovedEventObject>;
export type GuardianRemovedEventFilter = TypedEventFilter<GuardianRemovedEvent>;
export interface InitializedEventObject {
    version: number;
}
export type InitializedEvent = TypedEvent<[number], InitializedEventObject>;
export type InitializedEventFilter = TypedEventFilter<InitializedEvent>;
export interface OwnerAddedEventObject {
    newOwner: string;
}
export type OwnerAddedEvent = TypedEvent<[string], OwnerAddedEventObject>;
export type OwnerAddedEventFilter = TypedEventFilter<OwnerAddedEvent>;
export interface OwnerRemovedEventObject {
    removedOwner: string;
}
export type OwnerRemovedEvent = TypedEvent<[string], OwnerRemovedEventObject>;
export type OwnerRemovedEventFilter = TypedEventFilter<OwnerRemovedEvent>;
export interface ProposalDiscardedEventObject {
    proposalId: BigNumber;
    discardedBy: string;
}
export type ProposalDiscardedEvent = TypedEvent<[
    BigNumber,
    string
], ProposalDiscardedEventObject>;
export type ProposalDiscardedEventFilter = TypedEventFilter<ProposalDiscardedEvent>;
export interface ProposalSubmittedEventObject {
    proposalId: BigNumber;
    newOwnerProposed: string;
    proposer: string;
}
export type ProposalSubmittedEvent = TypedEvent<[
    BigNumber,
    string,
    string
], ProposalSubmittedEventObject>;
export type ProposalSubmittedEventFilter = TypedEventFilter<ProposalSubmittedEvent>;
export interface ProposalTimelockChangedEventObject {
    newTimelock: BigNumber;
}
export type ProposalTimelockChangedEvent = TypedEvent<[
    BigNumber
], ProposalTimelockChangedEventObject>;
export type ProposalTimelockChangedEventFilter = TypedEventFilter<ProposalTimelockChangedEvent>;
export interface QuorumNotReachedEventObject {
    proposalId: BigNumber;
    newOwnerProposed: string;
    approvalCount: BigNumber;
}
export type QuorumNotReachedEvent = TypedEvent<[
    BigNumber,
    string,
    BigNumber
], QuorumNotReachedEventObject>;
export type QuorumNotReachedEventFilter = TypedEventFilter<QuorumNotReachedEvent>;
export interface UpgradedEventObject {
    implementation: string;
}
export type UpgradedEvent = TypedEvent<[string], UpgradedEventObject>;
export type UpgradedEventFilter = TypedEventFilter<UpgradedEvent>;
export interface EtherspotWallet extends BaseContract {
    connect(signerOrProvider: Signer | Provider | string): this;
    attach(addressOrName: string): this;
    deployed(): Promise<this>;
    interface: EtherspotWalletInterface;
    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: {
        addDeposit(overrides?: PayableOverrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        addGuardian(_newGuardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        addOwner(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        changeProposalTimelock(_newTimelock: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        discardCurrentProposal(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        entryPoint(overrides?: CallOverrides): Promise<[string]>;
        execute(dest: PromiseOrValue<string>, value: PromiseOrValue<BigNumberish>, func: PromiseOrValue<BytesLike>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        executeBatch(dest: PromiseOrValue<string>[], value: PromiseOrValue<BigNumberish>[], func: PromiseOrValue<BytesLike>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        getDeposit(overrides?: CallOverrides): Promise<[BigNumber]>;
        getNonce(overrides?: CallOverrides): Promise<[BigNumber]>;
        getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
            string,
            BigNumber,
            string[],
            boolean,
            BigNumber
        ] & {
            ownerProposed_: string;
            approvalCount_: BigNumber;
            guardiansApproved_: string[];
            resolved_: boolean;
            proposedAt_: BigNumber;
        }>;
        guardianCosign(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        guardianCount(overrides?: CallOverrides): Promise<[BigNumber]>;
        guardianPropose(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        initialize(anOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        isGuardian(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>;
        isOwner(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>;
        isValidSignature(hash: PromiseOrValue<BytesLike>, signature: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string]>;
        onERC1155BatchReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>[], arg3: PromiseOrValue<BigNumberish>[], arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string]>;
        onERC1155Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string]>;
        onERC721Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[string]>;
        ownerCount(overrides?: CallOverrides): Promise<[BigNumber]>;
        proposalId(overrides?: CallOverrides): Promise<[BigNumber]>;
        proposalTimelock(overrides?: CallOverrides): Promise<[BigNumber]>;
        proxiableUUID(overrides?: CallOverrides): Promise<[string]>;
        removeGuardian(_guardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        removeOwner(_owner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[boolean]>;
        tokensReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, arg5: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[void]>;
        upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        validateUserOp(userOp: UserOperationStruct, userOpHash: PromiseOrValue<BytesLike>, missingAccountFunds: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
        withdrawDepositTo(withdrawAddress: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<ContractTransaction>;
    };
    addDeposit(overrides?: PayableOverrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    addGuardian(_newGuardian: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    addOwner(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    changeProposalTimelock(_newTimelock: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    discardCurrentProposal(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    entryPoint(overrides?: CallOverrides): Promise<string>;
    execute(dest: PromiseOrValue<string>, value: PromiseOrValue<BigNumberish>, func: PromiseOrValue<BytesLike>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    executeBatch(dest: PromiseOrValue<string>[], value: PromiseOrValue<BigNumberish>[], func: PromiseOrValue<BytesLike>[], overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    getDeposit(overrides?: CallOverrides): Promise<BigNumber>;
    getNonce(overrides?: CallOverrides): Promise<BigNumber>;
    getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
        string,
        BigNumber,
        string[],
        boolean,
        BigNumber
    ] & {
        ownerProposed_: string;
        approvalCount_: BigNumber;
        guardiansApproved_: string[];
        resolved_: boolean;
        proposedAt_: BigNumber;
    }>;
    guardianCosign(overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    guardianCount(overrides?: CallOverrides): Promise<BigNumber>;
    guardianPropose(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    initialize(anOwner: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    isGuardian(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
    isOwner(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
    isValidSignature(hash: PromiseOrValue<BytesLike>, signature: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
    onERC1155BatchReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>[], arg3: PromiseOrValue<BigNumberish>[], arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
    onERC1155Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
    onERC721Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
    ownerCount(overrides?: CallOverrides): Promise<BigNumber>;
    proposalId(overrides?: CallOverrides): Promise<BigNumber>;
    proposalTimelock(overrides?: CallOverrides): Promise<BigNumber>;
    proxiableUUID(overrides?: CallOverrides): Promise<string>;
    removeGuardian(_guardian: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    removeOwner(_owner: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>;
    tokensReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, arg5: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
    upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    validateUserOp(userOp: UserOperationStruct, userOpHash: PromiseOrValue<BytesLike>, missingAccountFunds: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    withdrawDepositTo(withdrawAddress: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
        from?: PromiseOrValue<string>;
    }): Promise<ContractTransaction>;
    callStatic: {
        addDeposit(overrides?: CallOverrides): Promise<void>;
        addGuardian(_newGuardian: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        addOwner(_newOwner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        changeProposalTimelock(_newTimelock: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
        discardCurrentProposal(overrides?: CallOverrides): Promise<void>;
        entryPoint(overrides?: CallOverrides): Promise<string>;
        execute(dest: PromiseOrValue<string>, value: PromiseOrValue<BigNumberish>, func: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
        executeBatch(dest: PromiseOrValue<string>[], value: PromiseOrValue<BigNumberish>[], func: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<void>;
        getDeposit(overrides?: CallOverrides): Promise<BigNumber>;
        getNonce(overrides?: CallOverrides): Promise<BigNumber>;
        getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<[
            string,
            BigNumber,
            string[],
            boolean,
            BigNumber
        ] & {
            ownerProposed_: string;
            approvalCount_: BigNumber;
            guardiansApproved_: string[];
            resolved_: boolean;
            proposedAt_: BigNumber;
        }>;
        guardianCosign(overrides?: CallOverrides): Promise<void>;
        guardianCount(overrides?: CallOverrides): Promise<BigNumber>;
        guardianPropose(_newOwner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        initialize(anOwner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        isGuardian(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
        isOwner(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>;
        isValidSignature(hash: PromiseOrValue<BytesLike>, signature: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
        onERC1155BatchReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>[], arg3: PromiseOrValue<BigNumberish>[], arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
        onERC1155Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
        onERC721Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<string>;
        ownerCount(overrides?: CallOverrides): Promise<BigNumber>;
        proposalId(overrides?: CallOverrides): Promise<BigNumber>;
        proposalTimelock(overrides?: CallOverrides): Promise<BigNumber>;
        proxiableUUID(overrides?: CallOverrides): Promise<string>;
        removeGuardian(_guardian: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        removeOwner(_owner: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>;
        tokensReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, arg5: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
        upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>;
        upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>;
        validateUserOp(userOp: UserOperationStruct, userOpHash: PromiseOrValue<BytesLike>, missingAccountFunds: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        withdrawDepositTo(withdrawAddress: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>;
    };
    filters: {
        "AdminChanged(address,address)"(previousAdmin?: null, newAdmin?: null): AdminChangedEventFilter;
        AdminChanged(previousAdmin?: null, newAdmin?: null): AdminChangedEventFilter;
        "BeaconUpgraded(address)"(beacon?: PromiseOrValue<string> | null): BeaconUpgradedEventFilter;
        BeaconUpgraded(beacon?: PromiseOrValue<string> | null): BeaconUpgradedEventFilter;
        "EtherspotWalletInitialized(address,address)"(entryPoint?: PromiseOrValue<string> | null, owner?: PromiseOrValue<string> | null): EtherspotWalletInitializedEventFilter;
        EtherspotWalletInitialized(entryPoint?: PromiseOrValue<string> | null, owner?: PromiseOrValue<string> | null): EtherspotWalletInitializedEventFilter;
        "EtherspotWalletReceived(address,uint256)"(from?: PromiseOrValue<string> | null, amount?: PromiseOrValue<BigNumberish> | null): EtherspotWalletReceivedEventFilter;
        EtherspotWalletReceived(from?: PromiseOrValue<string> | null, amount?: PromiseOrValue<BigNumberish> | null): EtherspotWalletReceivedEventFilter;
        "GuardianAdded(address)"(newGuardian?: null): GuardianAddedEventFilter;
        GuardianAdded(newGuardian?: null): GuardianAddedEventFilter;
        "GuardianRemoved(address)"(removedGuardian?: null): GuardianRemovedEventFilter;
        GuardianRemoved(removedGuardian?: null): GuardianRemovedEventFilter;
        "Initialized(uint8)"(version?: null): InitializedEventFilter;
        Initialized(version?: null): InitializedEventFilter;
        "OwnerAdded(address)"(newOwner?: null): OwnerAddedEventFilter;
        OwnerAdded(newOwner?: null): OwnerAddedEventFilter;
        "OwnerRemoved(address)"(removedOwner?: null): OwnerRemovedEventFilter;
        OwnerRemoved(removedOwner?: null): OwnerRemovedEventFilter;
        "ProposalDiscarded(uint256,address)"(proposalId?: null, discardedBy?: null): ProposalDiscardedEventFilter;
        ProposalDiscarded(proposalId?: null, discardedBy?: null): ProposalDiscardedEventFilter;
        "ProposalSubmitted(uint256,address,address)"(proposalId?: null, newOwnerProposed?: null, proposer?: null): ProposalSubmittedEventFilter;
        ProposalSubmitted(proposalId?: null, newOwnerProposed?: null, proposer?: null): ProposalSubmittedEventFilter;
        "ProposalTimelockChanged(uint256)"(newTimelock?: null): ProposalTimelockChangedEventFilter;
        ProposalTimelockChanged(newTimelock?: null): ProposalTimelockChangedEventFilter;
        "QuorumNotReached(uint256,address,uint256)"(proposalId?: null, newOwnerProposed?: null, approvalCount?: null): QuorumNotReachedEventFilter;
        QuorumNotReached(proposalId?: null, newOwnerProposed?: null, approvalCount?: null): QuorumNotReachedEventFilter;
        "Upgraded(address)"(implementation?: PromiseOrValue<string> | null): UpgradedEventFilter;
        Upgraded(implementation?: PromiseOrValue<string> | null): UpgradedEventFilter;
    };
    estimateGas: {
        addDeposit(overrides?: PayableOverrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        addGuardian(_newGuardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        addOwner(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        changeProposalTimelock(_newTimelock: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        discardCurrentProposal(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        entryPoint(overrides?: CallOverrides): Promise<BigNumber>;
        execute(dest: PromiseOrValue<string>, value: PromiseOrValue<BigNumberish>, func: PromiseOrValue<BytesLike>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        executeBatch(dest: PromiseOrValue<string>[], value: PromiseOrValue<BigNumberish>[], func: PromiseOrValue<BytesLike>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        getDeposit(overrides?: CallOverrides): Promise<BigNumber>;
        getNonce(overrides?: CallOverrides): Promise<BigNumber>;
        getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>;
        guardianCosign(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        guardianCount(overrides?: CallOverrides): Promise<BigNumber>;
        guardianPropose(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        initialize(anOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        isGuardian(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        isOwner(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>;
        isValidSignature(hash: PromiseOrValue<BytesLike>, signature: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
        onERC1155BatchReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>[], arg3: PromiseOrValue<BigNumberish>[], arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
        onERC1155Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
        onERC721Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
        ownerCount(overrides?: CallOverrides): Promise<BigNumber>;
        proposalId(overrides?: CallOverrides): Promise<BigNumber>;
        proposalTimelock(overrides?: CallOverrides): Promise<BigNumber>;
        proxiableUUID(overrides?: CallOverrides): Promise<BigNumber>;
        removeGuardian(_guardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        removeOwner(_owner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
        tokensReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, arg5: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>;
        upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        validateUserOp(userOp: UserOperationStruct, userOpHash: PromiseOrValue<BytesLike>, missingAccountFunds: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
        withdrawDepositTo(withdrawAddress: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<BigNumber>;
    };
    populateTransaction: {
        addDeposit(overrides?: PayableOverrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        addGuardian(_newGuardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        addOwner(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        changeProposalTimelock(_newTimelock: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        discardCurrentProposal(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        entryPoint(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        execute(dest: PromiseOrValue<string>, value: PromiseOrValue<BigNumberish>, func: PromiseOrValue<BytesLike>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        executeBatch(dest: PromiseOrValue<string>[], value: PromiseOrValue<BigNumberish>[], func: PromiseOrValue<BytesLike>[], overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        getDeposit(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getNonce(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        getProposal(_proposalId: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        guardianCosign(overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        guardianCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        guardianPropose(_newOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        initialize(anOwner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        isGuardian(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isOwner(_address: PromiseOrValue<string>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        isValidSignature(hash: PromiseOrValue<BytesLike>, signature: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        onERC1155BatchReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>[], arg3: PromiseOrValue<BigNumberish>[], arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        onERC1155Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        onERC721Received(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<BigNumberish>, arg3: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        ownerCount(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        proposalId(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        proposalTimelock(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        proxiableUUID(overrides?: CallOverrides): Promise<PopulatedTransaction>;
        removeGuardian(_guardian: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        removeOwner(_owner: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        supportsInterface(interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        tokensReceived(arg0: PromiseOrValue<string>, arg1: PromiseOrValue<string>, arg2: PromiseOrValue<string>, arg3: PromiseOrValue<BigNumberish>, arg4: PromiseOrValue<BytesLike>, arg5: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>;
        upgradeTo(newImplementation: PromiseOrValue<string>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        upgradeToAndCall(newImplementation: PromiseOrValue<string>, data: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        validateUserOp(userOp: UserOperationStruct, userOpHash: PromiseOrValue<BytesLike>, missingAccountFunds: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
        withdrawDepositTo(withdrawAddress: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, overrides?: Overrides & {
            from?: PromiseOrValue<string>;
        }): Promise<PopulatedTransaction>;
    };
}
