1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
-- schema.json --
{
"type": "object",
"title": "Main schema",
"properties": {
"intString": {
"description": "an integer or string.",
"type": [ "string", "integer", "boolean", "array", "null" ]
},
"object": {
"type": "object",
"default": {
"foo": "bar",
"baz": 1.3
}
},
"numOrList": {
"oneOf": [
{ "type": "number" },
{
"type": "array",
"items": { "type": "number" }
}
],
"default": [ 1, 2, 3 ]
}
},
"additionalProperties": false
}
-- out/decode/extract --
// Main schema
close({
// an integer or string.
intString?: null | bool | int | string | [...]
object?: {
...
}
numOrList?: matchN(1, [number, [...number]])
})
|