import { AnyObjectType, Balance, CallerConfig, CoinDecimal, CoinMetadaWithInfo, CoinPriceInfo, CoinsToBalance, CoinsToDecimals, CoinSymbol, CoinSymbolToCoinTypes, CoinType, KeyType } from "../../types"; import { Caller } from "../../general/utils/caller"; import { AftermathApi } from "../../general/providers"; import { CoinMetadata } from "@mysten/sui/client"; export declare class Coin extends Caller { readonly coinType: CoinType | undefined; private readonly Provider?; static readonly constants: { suiCoinType: string; suiCoinDecimals: number; coinObjectType: string; defaultCoinDecimals: { sui: number; evm: number; svm: number; }; }; readonly coinTypePackageName: string; readonly coinTypeSymbol: string; readonly innerCoinType: string; metadata: CoinMetadaWithInfo | undefined; priceInfo: CoinPriceInfo | undefined; constructor(coinType?: CoinType | undefined, config?: CallerConfig, Provider?: AftermathApi | undefined); getCoinsToDecimals(inputs: { coins: CoinType[]; }): Promise; getCoinMetadata(coin?: CoinType): Promise; getCoinMetadatas(inputs: { coins: CoinType[]; }): Promise; setCoinMetadata(metadata: CoinMetadaWithInfo): void; getPrice(coin?: CoinType): Promise; setPriceInfo(priceInfo: CoinPriceInfo): void; getVerifiedCoins(): Promise; static getCoinTypePackageName: (coin: CoinType) => string; static getCoinTypeSymbol: (coin: CoinType) => string; static getInnerCoinType: (coin: CoinType) => string; static coinTypeFromKeyType: (keyType: KeyType) => string; static isSuiCoin: (coin: CoinType) => boolean; static isCoinObjectType: (objectType: AnyObjectType) => boolean; static coinsAndAmountsOverZero: (coinAmounts: Record) => { coins: string[]; amounts: number[]; }; static coinsAndBalancesOverZero: (coinsToBalance: CoinsToBalance) => { coins: string[]; balances: bigint[]; }; static filterCoinsByType: (inputs: { filter: string; coinTypes: CoinType[]; }) => CoinType[]; static filterCoinsByMetadata: (inputs: { filter: string; coinMetadatas: Record; }) => CoinType[]; static normalizeBalance: (balance: number, decimals: CoinDecimal) => Balance; static balanceWithDecimals: (amount: bigint | number, decimals: number) => number; static balanceWithDecimalsUsd: (amount: bigint | number, decimals: number, price: number) => number; static coinSymbolForCoinType: (inputs: { coinType: CoinType; coinSymbolToCoinTypes: CoinSymbolToCoinTypes; }) => CoinSymbol | undefined; private useProvider; } //# sourceMappingURL=coin.d.ts.map