UNPKG

rango-types

Version:
133 lines 5.02 kB
import { EVMChainInfo, CosmosChainInfo, SwapperMetaDto, BlockchainMetaBase, EvmBlockchainMeta, CosmosBlockchainMeta, TransferBlockchainMeta, BlockchainMeta, SwapperMeta, MessagingProtocol, MessagingProtocolsResponse } from '../shared/index.js'; export { EVMChainInfo, CosmosChainInfo, SwapperMetaDto, BlockchainMetaBase, EvmBlockchainMeta, CosmosBlockchainMeta, TransferBlockchainMeta, BlockchainMeta, SwapperMeta, MessagingProtocol, MessagingProtocolsResponse, }; /** * All metadata info for a token, unique by (blockchain, symbol, address) tuple * * @property {string} blockchain - The blockchain which this token belongs to * @property {string | null} address - Smart contract address of token, null for native tokens * @property {string} symbol - The token symbol, e.g: ADA * @property {string | null} name - Display name of token, e.g: Cardano for ADA. It can be null * @property {number} decimals - Decimals of token in blockchain, example: 18 * @property {string} image - Url of its image, example: https://api.rango.exchange/tokens/ETH/ETH.png * @property {number | null} usdPrice - USD unit price of this token if available * @property {boolean} isSecondaryCoin - If true, means that the token's trading is high risk. Better to warn user before proceeding * @property {string | null} coinSource - If the token is secondary, coinSource indicates the third-party list * that Rango found this token in, example: Pancake Extended List * @property {string | null} coinSourceUrl - The absolute url of the source list that token was extracted from * @property {boolean} isPopular - If true, means that the token is popular * @property {string[]} [supportedSwappers] - List of swappers that support this token * */ export type Token = { blockchain: string; address: string | null; symbol: string; name: string | null; decimals: number; image: string; usdPrice: number | null; isSecondaryCoin: boolean; coinSource: string | null; coinSourceUrl: string | null; isPopular: boolean; supportedSwappers?: string[]; }; /** * Compact version of token */ export type CompactToken = { b: string; a: string | null; s: string; n?: string; d: number; i: string; p?: number; ip?: boolean; is?: boolean; c?: string; cu?: string; ss?: string[]; }; /** * Metadata info for all blockchains and tokens supported * * @property {BlockchainMeta[]} blockchains - List of all supported blockchains * @property {Token[]} tokens - List of all tokens * @property {Token[]} popularTokens - List of popular tokens, a subset of tokens field * @property {SwapperMeta[]} swappers - List of all DEXes & Bridges * */ export type MetaResponse = { blockchains: BlockchainMeta[]; tokens: Token[]; popularTokens: Token[]; swappers: SwapperMeta[]; }; /** * Compact Metadata info for all blockchains and tokens supported * * @property {BlockchainMeta[]} blockchains - List of all supported blockchains * @property {CompactToken[]} tokens - List of all tokens in compact format * @property {Token[]} popularTokens - List of popular tokens, a subset of tokens field * @property {SwapperMeta[]} swappers - List of all DEXes & Bridges * */ export type CompactMetaResponse = { blockchains: BlockchainMeta[]; tokens: CompactToken[]; popularTokens: CompactToken[]; swappers: SwapperMeta[]; }; /** * Custom token request * * @property {string} blockchain - The blockchain that token belong to * @property {string} address - The contract address for the desired token * */ export type CustomTokenRequest = { blockchain: string; address: string; }; /** * The custom token response which includes: * Token details for user desired token that is not available on Rango official list. * Currently supports Solana and EVM based blockchains. * * @property {Token} token - The destination asset * @property {string | null} error - Error message * @property {number | null} errorCode - Error code * @property {number | null} traceId - Trace Id, for debug purpose */ export type CustomTokenResponse = { token: Token; error: string | null; errorCode: number | null; traceId: number | null; }; /** * The request to search for custom tokens * * @property {string} query - The search query string * @property {string} [blockchain] - An optional parameter to specify the blockchain for filtering results */ export type SearchCustomTokensRequest = { query: string; blockchain?: string; }; /** * The response for a custom token search * * @property {Token[]} tokens - List of tokens found in the searcH * @property {string | null} error - Error message * @property {number | null} errorCode - Error code * @property {number | null} traceId - Trace Id, for debug purpose */ export type SearchCustomTokensResponse = { tokens: Token[]; error: string | null; errorCode: number | null; traceId: number | null; }; //# sourceMappingURL=meta.d.ts.map