export interface ChainConfigsResponse<T> {
chainConfigs: T;
}
Queries a chain config by chain ID or config name.
export async function queryChainConfig(
identifier: string
): Promise<ChainConfig> {
const resp = await query<QueryChainConfig, QueryChainConfigResponse>(
QUERY_CHAIN_CONFIG,
{ identifier }
);
return resp.chainConfigs.config;
}
export interface QueryChainConfig {
identifier: string;
}
QueryChainConfigResponse
export type QueryChainConfigResponse = ChainConfigsResponse<{
config: ChainConfig;
}>;
export interface ChainConfig {
chainName: string;
name: string;
chainId: string;
chainUrl: string;
registryAddress: string;
addressPrefix: string;
defaultFee: string;
blockExplorerTxPages: string[];
blockExplorerAddressPages: string[];
chainType: "testnet" | "mainnet";
/** The URL for the chain icon */
iconUrls?: {
sm?: string;
lg?: string;
};
}
Queries all stored chain configs.
export async function queryAllChainConfigs(): Promise<ChainConfig[]> {
const resp = await query<QueryAllChainConfigs, QueryAllChainConfigsResponse>(
QUERY_ALL_CHAIN_CONFIGS
);
return resp.chainConfigs.allConfigs;
}
export interface QueryAllChainConfigs {}
export type QueryAllChainConfigsResponse = ChainConfigsResponse<{
allConfigs: ChainConfig[];
}>;