import { ethers } from 'ethers'; import { BaseProject } from './base'; export declare const spheronChain: { id: number; name: string; nativeCurrency: { name: string; symbol: string; decimals: number; }; rpcUrls: { default: { http: string[]; }; }; blockExplorers: { default: { name: string; url: string; }; }; }; export declare const spheronTestnetChain: { id: number; name: string; nativeCurrency: { name: string; symbol: string; decimals: number; }; rpcUrls: { default: { http: string[]; }; }; blockExplorers: { default: { name: string; url: string; }; }; testnet: boolean; }; export declare const spheronContract: { core: string; delegationPool: string; pToken: string; miningToken: string; thawing: string; }; export declare const spheronTestnetContract: { core: string; delegationPool: string; pToken: string; miningToken: string; thawing: string; }; export declare class SpheronProject extends BaseProject { name: string; thawingEnabled: boolean; minRequestAmount: number; disableThawingCancel: boolean; miningToken: { name: string; symbol: string; decimals: number; isNative: boolean; icon: string; }; pToken: { name: string; symbol: string; decimals: number; icon: string; }; wpToken: { name: string; symbol: string; decimals: number; icon: string; }; chainConfig: { id: number; name: string; nativeCurrency: { name: string; symbol: string; decimals: number; }; rpcUrls: { default: { http: string[]; }; }; blockExplorers: { default: { name: string; url: string; }; }; }; contracts: { delegationPool: string; pToken: string; miningToken: string; thawing: string; core: string; }; metadata: { guideLink: string; website: string; description: string; about: string; }; constructor({ isTestnet, provider, contracts, }: { isTestnet: boolean; provider?: ethers.providers.JsonRpcProvider; contracts?: { delegationPool?: string; pToken?: string; miningToken?: string; thawing?: string; core?: string; }; }); getThawingContract: () => ethers.Contract; getPoolBalance: () => Promise; getThawingInfo: (address: string) => Promise<{ amount: any; unlockTime: number; }>; withdraw: (address: string, amount: string, signer: ethers.Signer) => Promise; requestWithdraw: (amount: string, signer: ethers.Signer) => Promise; getAssetsInfo: () => Promise<{ apy: number; lockedAssets: number; }>; }