import BigNumber from "bignumber.js"; export type cachedRemoteDataArgs = { remoteUrl: string; storageKey: string; expiration?: number; }; export interface WithLastModified { data: T; lastModified: number; } export type Amount = { denom: string; amount: string; }; export type DenomData = { coinDenom: string; coinMinimalDenom: string; coinDecimals: number; icon: string; chain: string; coinGeckoId: string; description?: string; }; export type DenomTraceData = { path: string; baseDenom: string; originChainId: string; channelId: string; sourceChainId: string; }; type ChainBaseData = { chainName: string; icon: string; rpcUrl: string; } & T; export declare enum PROVIDER { NUMIA = "numia" } type NetworkUrl = { rpcUrl: string; restUrl: string; }; export type CosmosChainData = ChainBaseData<{ chainId: string; restUrl: string; addressPrefix: string; baseDenom: string; chainType: "cosmos"; coinType: string; privateInfra?: Record; associatedAssets?: unknown; }>; export declare const withLastModified: (data: T, lastModified: number) => WithLastModified; export declare const cachedRemoteDataWithLastModified: ({ remoteUrl, storageKey, }: cachedRemoteDataArgs) => Promise; export type DenomDataRecord = Record; export type DenomTraceDataRecord = Record; export declare const getDenoms: () => Promise; export declare const getDenomTrace: () => Promise; export declare const getChains: () => Promise>>; export type NMSUrls = { [key: string]: { nodeUrl: string; nodeProvider: null; }[]; }; export type NodeUrls = { rest: NMSUrls | null; rpc: NMSUrls | null; }; export declare const getNMSRestURLs: () => Promise; export declare const getNMSRpcURLs: () => Promise; export type TokenBalanceData = { coin: Amount; denomData: DenomData; denomTrace?: { path: string; baseDenom: string; }; amount: BigNumber; chainName: string; chainId?: string; usdPrice?: BigNumber; usdValue?: BigNumber; }; export declare const getTokenData: (token: Amount, chain: CosmosChainData, denoms: Record, originChainId?: string) => Promise; export {};