{ "description": "a schema for defining markets for wormhole-wrapped assets", "type": "object", "properties": { "markets": { "type": "object", "additionalProperties": { "$ref": "#/$defs/marketInfo" } }, "tokens": { "description": "keys of source chain id", "type": "object", "properties": { "1": { "$ref": "#/$defs/tokenSourceChain" }, "2": { "$ref": "#/$defs/tokenSourceChain" }, "3": { "$ref": "#/$defs/tokenSourceChain" }, "4": { "$ref": "#/$defs/tokenSourceChain" }, "5": { "$ref": "#/$defs/tokenSourceChain" }, "6": { "$ref": "#/$defs/tokenSourceChain" }, "7": { "$ref": "#/$defs/tokenSourceChain" }, "10": { "$ref": "#/$defs/tokenSourceChain" }, "11": { "$ref": "#/$defs/tokenSourceChain" } }, "additionalProperties": false }, "tokenMarkets": { "description": "keys of source chain id", "type": "object", "properties": { "1": { "$ref": "#/$defs/tokenMarketSourceChain" }, "2": { "$ref": "#/$defs/tokenMarketSourceChain" }, "3": { "$ref": "#/$defs/tokenMarketSourceChain" }, "4": { "$ref": "#/$defs/tokenMarketSourceChain" }, "5": { "$ref": "#/$defs/tokenMarketSourceChain" }, "6": { "$ref": "#/$defs/tokenMarketSourceChain" }, "7": { "$ref": "#/$defs/tokenMarketSourceChain" }, "10": { "$ref": "#/$defs/tokenMarketSourceChain" }, "11": { "$ref": "#/$defs/tokenMarketSourceChain" } }, "additionalProperties": false } }, "required": ["markets", "tokens", "tokenMarkets"], "additionalProperties": false, "$defs": { "marketInfo": { "type": "object", "properties": { "name": { "type": "string" }, "link": { "type": "string" } }, "required": ["name", "link"], "additionalProperties": false }, "tokenSourceChain": { "description": "keys of target chain id", "type": "object", "additionalProperties": { "$ref": "#/$defs/tokenInfo" } }, "tokenInfo": { "type": "object", "properties": { "symbol": { "type": "string" }, "logo": { "type": "string" } }, "required": ["symbol", "logo"], "additionalProperties": false }, "tokenMarketSourceChain": { "description": "keys of target chain id", "type": "object", "properties": { "1": { "$ref": "#/$defs/tokenMarketTargetChain" }, "2": { "$ref": "#/$defs/tokenMarketTargetChain" }, "3": { "$ref": "#/$defs/tokenMarketTargetChain" }, "4": { "$ref": "#/$defs/tokenMarketTargetChain" }, "5": { "$ref": "#/$defs/tokenMarketTargetChain" }, "6": { "$ref": "#/$defs/tokenMarketTargetChain" }, "7": { "$ref": "#/$defs/tokenMarketTargetChain" }, "10": { "$ref": "#/$defs/tokenMarketTargetChain" }, "11": { "$ref": "#/$defs/tokenMarketSourceChain" } }, "additionalProperties": false }, "tokenMarketTargetChain": { "description": "keys of token addresses", "type": "object", "additionalProperties": { "$ref": "#/$defs/tokenMarketInfo" } }, "tokenMarketInfo": { "description": "contains list of markets for a given source - target - address tuple", "type": "object", "properties": { "markets": { "description": "list of market ids that support this token", "type": "array", "items": { "type": "string" }, "uniqueItems": true } }, "required": ["markets"], "additionalProperties": false } } }