mirror of
https://github.com/luxfi/bridge.git
synced 2026-09-24 00:26:46 +00:00
59 lines
1.4 KiB
TypeScript
59 lines
1.4 KiB
TypeScript
import { LayerStatus } from "./Layer";
|
|
|
|
export enum NetworkType {
|
|
EVM = "evm",
|
|
Starknet = "starknet",
|
|
Solana = "solana",
|
|
Cosmos = "cosmos",
|
|
StarkEx = "stark_ex",
|
|
ZkSyncLite = "zk_sync_lite",
|
|
TON = 'ton'
|
|
}
|
|
export class CryptoNetwork {
|
|
display_name?: string;
|
|
internal_name?: string;
|
|
transaction_explorer_template?: string;
|
|
account_explorer_template?: string;
|
|
status?: LayerStatus;
|
|
currencies!: NetworkCurrency[];
|
|
refuel_amount_in_usd?: number;
|
|
chain_id?: string;
|
|
type?: NetworkType;
|
|
created_date?: string;
|
|
is_featured?: boolean;
|
|
nodes?: NetworkNode[];
|
|
managed_accounts?: ManagedAccount[];
|
|
metadata: Metadata | null | undefined;
|
|
img_url?: string
|
|
}
|
|
export class NetworkCurrency {
|
|
asset?: string;
|
|
status?: LayerStatus;
|
|
is_refuel_enabled?: boolean;
|
|
is_native?: boolean
|
|
//TODO may be plain string
|
|
contract_address?: `0x${string}` | null | undefined;
|
|
decimals?: number;
|
|
precision?: number;
|
|
price_in_usd?: number;
|
|
}
|
|
export class NetworkNode {
|
|
url?: string;
|
|
}
|
|
export class ManagedAccount {
|
|
address?: `0x${string}`;
|
|
}
|
|
export class Metadata {
|
|
multicall3?: {
|
|
address: `0x${string}`
|
|
blockCreated: number
|
|
}
|
|
ensRegistry?: {
|
|
address: `0x${string}`
|
|
}
|
|
ensUniversalResolver?: {
|
|
address: `0x${string}`
|
|
}
|
|
WatchdogContractAddress?: `0x${string}`
|
|
L1Network?: string
|
|
} |