import { Networkish } from "@ethersproject/networks";
import { JsonRpcProvider as EthersJsonRpcProvider, Web3Provider as EthersWeb3Provider, JsonRpcSigner as EthersJsonRpcSigner } from "@ethersproject/providers";
import { ConnectionInfo } from "@ethersproject/web";
import { AsyncNamespaceApi } from "@kaiachain/js-ext-core";
export declare class JsonRpcProvider extends EthersJsonRpcProvider {
    admin: AsyncNamespaceApi;
    debug: AsyncNamespaceApi;
    governance: AsyncNamespaceApi;
    klay: AsyncNamespaceApi;
    kaia: AsyncNamespaceApi;
    net: AsyncNamespaceApi;
    personal: AsyncNamespaceApi;
    txpool: AsyncNamespaceApi;
    constructor(url?: ConnectionInfo | string, network?: Networkish);
}
export declare class Web3Provider extends EthersWeb3Provider {
    admin: AsyncNamespaceApi;
    debug: AsyncNamespaceApi;
    governance: AsyncNamespaceApi;
    klay: AsyncNamespaceApi;
    kaia: AsyncNamespaceApi;
    net: AsyncNamespaceApi;
    personal: AsyncNamespaceApi;
    txpool: AsyncNamespaceApi;
    constructor(provider: any, network?: any);
    getSigner(addressOrIndex?: string | number | undefined): EthersJsonRpcSigner;
}
