import type { AvailableChain } from './availableChains'; import type { SupportedToken } from './supportedTokens'; export interface DepositSourceToken extends SupportedToken { chainId: number; address: string; decimals: number; } export interface DepositAsset { id: string; symbol: string; tokens: DepositSourceToken[]; } export interface DepositAssetExclusion { symbol: string; chainId?: number; reason: 'invalid-metadata' | 'ambiguous-contract'; conflictingAddresses?: string[]; } export declare function assetId(symbol: string): string; export declare function depositAddressesEqual(left?: string, right?: string): boolean; /** Group curated tickers; exclude all contracts for a symbol/network collision. */ export declare function depositAssets(tokens: SupportedToken[], chains: AvailableChain[], metadata?: SupportedToken[]): { assets: DepositAsset[]; exclusions: DepositAssetExclusion[]; }; export declare function assetChains(assets: DepositAsset[], chains: AvailableChain[]): AvailableChain[]; export declare function tokenOnChain(asset: DepositAsset, chain: AvailableChain): DepositSourceToken | undefined; export declare function resolveDepositSelection(assets: DepositAsset[], chains: AvailableChain[], selection: { symbol: string; chainId: number; }): { token: DepositSourceToken; chain: AvailableChain; } | undefined; //# sourceMappingURL=depositAssets.d.ts.map