import type BN from 'bn.js';
import type { ContractABI, Logger } from '../../utils';
import { ContractClient, GetRegistryAddress } from '../contracts/ContractClient';
import type { EthWeb3Manager } from '../ethWeb3Manager';
import type { AudiusTokenClient } from './AudiusTokenClient';
export declare class StakingProxyClient extends ContractClient {
    audiusTokenClient: AudiusTokenClient;
    toBN: (value: string | number) => BN;
    constructor(ethWeb3Manager: EthWeb3Manager, contractABI: ContractABI['abi'], contractRegistryKey: string, getRegistryAddress: GetRegistryAddress, audiusTokenClient: AudiusTokenClient, logger?: Logger);
    token(): Promise<any>;
    totalStaked(): Promise<BN>;
    supportsHistory(): Promise<any>;
    totalStakedFor(account: string): Promise<BN>;
    totalStakedForAt(account: string, blockNumber: string): Promise<BN>;
    totalStakedAt(blockNumber: number): Promise<BN>;
    isStaker(account: string): Promise<any>;
    getDelegateManagerAddress(): Promise<any>;
    getClaimsManagerAddress(): Promise<any>;
    getServiceProviderFactoryAddress(): Promise<any>;
    getGovernanceAddress(): Promise<any>;
    getLastClaimedBlockForUser(): Promise<any>;
}
