import { BaseCoin } from './base';
import { AmsNetworkConfigMap, AmsTokenConfig, TrimmedAmsTokenConfig } from './tokenConfig';
import { CoinMap } from './map';
export declare const coins: CoinMap;
export declare function createToken(token: AmsTokenConfig): Readonly<BaseCoin> | undefined;
export declare function isCoinPresentInCoinMap({ name, id, alias }: {
    name: string;
    id?: string;
    alias?: string;
}): boolean;
export declare function createTokenMapUsingConfigDetails(tokenConfigMap: Record<string, AmsTokenConfig[]>): CoinMap;
/**
 * Enrich base chain coins (isToken=false) with features from the AMS networks map.
 *
 * createTokenMapUsingTrimmedConfigDetails reads features for base chains from
 * TrimmedAmsTokenConfig.additionalFeatures. The assetsList endpoint returns base chains with no features;
 * features are in the networks endpoint (/api/v1/networks/:network), matched by coin.network.name === networksEntry.name.
 *
 * Coins that already have additionalFeatures defined are left unchanged.
 * Coins whose network.name has no match in networksMap are left unchanged (empty features).
 */
export declare function enrichBaseChainFeatures(coinTokenMap: Record<string, TrimmedAmsTokenConfig[]>, networksMap: AmsNetworkConfigMap): Record<string, TrimmedAmsTokenConfig[]>;
export declare function createTokenMapUsingTrimmedConfigDetails(reducedTokenConfigMap: Record<string, TrimmedAmsTokenConfig[]>): CoinMap;
export declare function createTokenUsingTrimmedConfigDetails(tokenConfig: TrimmedAmsTokenConfig): Readonly<BaseCoin> | undefined;
//# sourceMappingURL=coins.d.ts.map