import { BytesLike, TypedDataField } from 'ethers';
import { NetworkNames } from '../../network';
import { Web3Provider } from './interfaces';
import { DynamicWalletProvider } from './dynamic.wallet-provider';
export declare class Web3WalletProvider extends DynamicWalletProvider {
    readonly web3: Web3Provider;
    static connect(provider: Web3Provider, type?: string): Promise<Web3WalletProvider>;
    constructor(web3: Web3Provider, type?: string);
    get address(): string;
    get networkName(): NetworkNames;
    refresh(): Promise<boolean>;
    signMessage(message: BytesLike): Promise<string>;
    signTypedData(typedData: TypedDataField[], message: any, accountAddress: string): Promise<string>;
    protected sendRequest<T = any>(method: string, params?: any[], from?: string): Promise<T>;
}
