{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "Internal", "oneOf": [ { "type": "object", "properties": { "typeProperty": { "type": "string", "const": "UnitOne" } }, "required": [ "typeProperty" ], "additionalProperties": false }, { "type": "object", "properties": { "typeProperty": { "type": "string", "const": "StringMap" } }, "additionalProperties": { "type": "string" }, "required": [ "typeProperty" ] }, { "type": "object", "properties": { "typeProperty": { "type": "string", "const": "UnitStructNewType" } }, "required": [ "typeProperty" ], "additionalProperties": false }, { "type": "object", "properties": { "foo": { "type": "integer", "format": "int32" }, "bar": { "type": "boolean" }, "typeProperty": { "type": "string", "const": "StructNewType" } }, "required": [ "typeProperty", "foo", "bar" ] }, { "type": "object", "properties": { "foo": { "type": "integer", "format": "int32" }, "bar": { "type": "boolean" }, "typeProperty": { "type": "string", "const": "Struct" } }, "additionalProperties": false, "required": [ "typeProperty", "foo", "bar" ] }, { "type": "object", "properties": { "typeProperty": { "type": "string", "const": "UnitTwo" } }, "required": [ "typeProperty" ], "additionalProperties": false }, { "type": "object", "format": "int32", "properties": { "typeProperty": { "type": "string", "const": "WithInt" } }, "required": [ "typeProperty" ] } ] }