import { ApiInterfaceRx } from '@polkadot/api/types'; import { Observable } from 'rxjs'; import { Vec } from '@polkadot/types'; import type { Enum, U8aFixed } from '@polkadot/types-codec'; import type { ITuple } from '@polkadot/types-codec/types'; /** @name TokenSymbol */ export interface TokenSymbol extends Enum { readonly isReef: boolean; readonly isRusd: boolean; readonly type: 'Reef' | 'Rusd'; } /** @name H160 */ export interface H160 extends U8aFixed { } /** @name EvmAddress */ export interface EvmAddress extends H160 { } /** @name CurrencyId */ export interface CurrencyId extends Enum { readonly isToken: boolean; readonly asToken: TokenSymbol; readonly isDexShare: boolean; readonly asDexShare: ITuple<[TokenSymbol, TokenSymbol]>; readonly isErc20: boolean; readonly asErc20: EvmAddress; readonly type: 'Token' | 'DexShare' | 'Erc20'; } /** * @name nativeCurrencyId * @returns native currencyId */ export declare function nativeCurrencyId(instanceId: string, api: ApiInterfaceRx): () => Observable; /** * @name allNonNativeCurrencyIds * @returns all nonnative currencyIds */ export declare function allNonNativeCurrencyIds(instanceId: string, api: ApiInterfaceRx): () => Observable>; /** * @name allCurrencyIds * @returns all currencyIds includes stable currencyId and all nonnative currencyIds */ export declare function allCurrencyIds(instanceId: string, api: ApiInterfaceRx): () => Observable;