UNPKG

@chain-registry/types

Version:
188 lines (187 loc) 4.86 kB
export interface Peer { id: string; address: string; provider?: string; } export interface Endpoint { address: string; provider?: string; archive?: boolean; } export interface Explorer { kind?: string; url?: string; txPage?: string; accountPage?: string; validatorPage?: string; proposalPage?: string; blockPage?: string; } export interface FeeToken { denom: string; fixedMinGasPrice?: number; lowGasPrice?: number; averageGasPrice?: number; highGasPrice?: number; gasCosts?: { cosmosSend?: number; ibcTransfer?: number; }; } export interface StakingToken { denom: string; } export type Repo = string; export type Version = string; export type Tag = string; export interface Sdk { type: "cosmos" | "penumbra" | "other"; version?: Version; repo?: Repo; tag?: Tag; } export interface Ibc { type: "go" | "rust" | "other"; version?: Version; repo?: Repo; tag?: Tag; icsEnabled?: ("ics20-1" | "ics27-1" | "mauth")[]; } export interface Cosmwasm { version?: Version; repo?: Repo; tag?: Tag; enabled?: boolean; path?: string; } export interface Consensus { type: "tendermint" | "cometbft" | "sei-tendermint"; version?: Version; repo?: Repo; tag?: Tag; } export interface Language { type: "go" | "rust" | "solidity" | "other"; version?: Version; repo?: Repo; tag?: Tag; } export interface Binaries { "linux/amd64"?: string; "linux/arm64"?: string; "darwin/amd64"?: string; "darwin/arm64"?: string; "windows/amd64"?: string; "windows/arm64"?: string; } export interface Pointer { chainName: string; baseDenom?: string; } export interface Chain { $schema?: string; chainName: string; chainType: "cosmos" | "eip155" | "bip122" | "polkadot" | "solana" | "algorand" | "arweave" | "ergo" | "fil" | "hedera" | "monero" | "reef" | "stacks" | "starknet" | "stellar" | "tezos" | "vechain" | "waves" | "xrpl" | "unknown"; chainId?: string; preForkChainName?: string; prettyName?: string; website?: string; status?: "live" | "upcoming" | "killed"; networkType?: "mainnet" | "testnet" | "devnet"; bech32Prefix?: string; bech32Config?: { bech32PrefixAccAddr?: string; bech32PrefixAccPub?: string; bech32PrefixValAddr?: string; bech32PrefixValPub?: string; bech32PrefixConsAddr?: string; bech32PrefixConsPub?: string; }; daemonName?: string; nodeHome?: string; keyAlgos?: ("secp256k1" | "ethsecp256k1" | "ed25519" | "sr25519" | "bn254")[]; slip44?: number; alternativeSlip44s?: number[]; fees?: { feeTokens: FeeToken[]; }; staking?: { stakingTokens: StakingToken[]; lockDuration?: { blocks?: number; time?: string; }; }; codebase?: { gitRepo?: string; recommendedVersion?: string; compatibleVersions?: string[]; language?: Language; binaries?: Binaries; cosmosSdkVersion?: string; sdk?: Sdk; consensus?: Consensus; cosmwasmVersion?: string; cosmwasmEnabled?: boolean; cosmwasmPath?: string; cosmwasm?: Cosmwasm; ibc?: Ibc; genesis?: { name?: string; genesisUrl: string; icsCcvUrl?: string; }; versions?: { name: string; tag?: string; height?: number; proposal?: number; previousVersionName?: string; nextVersionName?: string; recommendedVersion?: string; compatibleVersions?: string[]; language?: Language; cosmosSdkVersion?: string; sdk?: Sdk; consensus?: Consensus; cosmwasmVersion?: string; cosmwasmEnabled?: boolean; cosmwasmPath?: string; cosmwasm?: Cosmwasm; ibc?: Ibc; binaries?: Binaries; }[]; }; images?: { imageSync?: Pointer; png?: string; svg?: string; theme?: { primaryColorHex?: string; backgroundColorHex?: string; circle?: boolean; darkMode?: boolean; monochrome?: boolean; }; }[]; logoURIs?: { png?: string; svg?: string; }; description?: string; peers?: { seeds?: Peer[]; persistentPeers?: Peer[]; }; apis?: { rpc?: Endpoint[]; rest?: Endpoint[]; grpc?: Endpoint[]; wss?: Endpoint[]; grpcWeb?: Endpoint[]; evmHttpJsonrpc?: Endpoint[]; }; explorers?: Explorer[]; keywords?: string[]; extraCodecs?: ("ethermint" | "injective")[]; }