--- source: crates/contract/src/foreign_chains_metadata.rs expression: schema --- BorshSchemaContainer { declaration: "ForeignChainsMetadata", definitions: { "AllowedProviders": Struct { fields: NamedFields( [ ( "entries", "IterableMap", ), ], ), }, "AvailableForeignChains": Struct { fields: UnnamedFields( [ "BTreeSet", ], ), }, "BTreeSet": Sequence { length_width: 4, length_range: 0..=4294967295, elements: "ForeignChain", }, "ForeignChain": Enum { tag_width: 1, variants: [ ( 0, "Solana", "ForeignChain__Solana", ), ( 1, "Bitcoin", "ForeignChain__Bitcoin", ), ( 2, "Ethereum", "ForeignChain__Ethereum", ), ( 3, "Base", "ForeignChain__Base", ), ( 4, "Bnb", "ForeignChain__Bnb", ), ( 5, "Arbitrum", "ForeignChain__Arbitrum", ), ( 6, "Abstract", "ForeignChain__Abstract", ), ( 7, "Starknet", "ForeignChain__Starknet", ), ( 8, "Polygon", "ForeignChain__Polygon", ), ( 9, "HyperEvm", "ForeignChain__HyperEvm", ), ( 10, "Ton", "ForeignChain__Ton", ), ( 11, "Aptos", "ForeignChain__Aptos", ), ], }, "ForeignChainRpcWhitelist": Struct { fields: NamedFields( [ ( "entries", "AllowedProviders", ), ( "votes", "ProviderVotes", ), ], ), }, "ForeignChain__Abstract": Struct { fields: Empty, }, "ForeignChain__Aptos": Struct { fields: Empty, }, "ForeignChain__Arbitrum": Struct { fields: Empty, }, "ForeignChain__Base": Struct { fields: Empty, }, "ForeignChain__Bitcoin": Struct { fields: Empty, }, "ForeignChain__Bnb": Struct { fields: Empty, }, "ForeignChain__Ethereum": Struct { fields: Empty, }, "ForeignChain__HyperEvm": Struct { fields: Empty, }, "ForeignChain__Polygon": Struct { fields: Empty, }, "ForeignChain__Solana": Struct { fields: Empty, }, "ForeignChain__Starknet": Struct { fields: Empty, }, "ForeignChain__Ton": Struct { fields: Empty, }, "ForeignChainsMetadata": Struct { fields: NamedFields( [ ( "rpc_whitelist", "ForeignChainRpcWhitelist", ), ( "available_foreign_chains", "AvailableForeignChains", ), ( "foreign_chains_configs", "IterableMap", ), ], ), }, "IndexMap": Struct { fields: NamedFields( [ ( "prefix", "Vec", ), ], ), }, "IterableMap": Struct { fields: NamedFields( [ ( "keys", "Vector", ), ( "values", "LookupMap", ), ], ), }, "LookupMap": Struct { fields: NamedFields( [ ( "prefix", "Vec", ), ], ), }, "ProviderVotes": Struct { fields: NamedFields( [ ( "pending", "Votes<(AuthenticatedParticipantId, ForeignChain)>", ), ], ), }, "Vec": Sequence { length_width: 4, length_range: 0..=4294967295, elements: "u8", }, "Vector": Struct { fields: NamedFields( [ ( "len", "u32", ), ( "values", "IndexMap", ), ], ), }, "Votes<(AuthenticatedParticipantId, ForeignChain)>": Struct { fields: NamedFields( [ ( "proposal_by_voter", "IterableMap", ), ( "votes_by_proposal", "IterableMap", ), ], ), }, "u32": Primitive( 4, ), "u8": Primitive( 1, ), }, }