import { ethers } from 'ethers';
import { SDKConfig } from './types';
import { TokenModule } from './modules/token';
/**
 * Main SDK class for interacting with blockchain
 */
export declare class EquitizeSDK {
    private provider;
    private chainId;
    private apiKey?;
    /**
     * Token module for token-related operations
     */
    token: TokenModule;
    /**
     * Create a new instance of the SDK
     * @param config The SDK configuration options
     */
    constructor(config: SDKConfig);
    /**
     * Get the current provider instance
     * @returns The JsonRpcProvider instance
     */
    getProvider(): ethers.JsonRpcProvider;
    /**
     * Get the configured chain ID
     * @returns The chain ID
     */
    getChainId(): number;
    /**
     * Change the network provider
     * @param rpcUrl New JSON-RPC URL
     * @param chainId New chain ID
     */
    setNetwork(rpcUrl: string, chainId: number): void;
}
