Files
agent/config-serializer/config-schema.json
2016-05-23 19:05:17 +02:00

99 lines
5.2 KiB
JSON

{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "UHK Configuration",
"description": "UHK Configuration",
"type": "object",
"properties": {
"prologue": {
"description": "Prologue",
"type": "integer"
},
"keymaps": {
"description": "Array of keymaps",
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"description": "Id of the keymap",
"type": "integer"
},
"isDefault": {
"type": "boolean"
},
"layers": {
"type": "array",
"items": {
"type": "object",
"properties": {
"modules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"keyActions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"keyActionType": {
"type": "string",
"enum": [
"none",
"keystroke",
"keystrokeModifiers",
"switchLayer",
"switchKeymap",
"playMacro",
"mouse"
]
}
},
"oneOf": [
{
"properties": {
"keyActionType": {
"type": "string",
"pattern": "^keystroke$"
},
"scancode": {
"type": "integer"
}
}
},
{
"properties": {
"keyActionType": {
"type": "string",
"pattern": "^switchLayer$"
},
"layer": {
"type": "string"
},
"toggle": {
"type": "boolean"
}
}
},
{
"properties": {
"keyActionType": {
"type": "string",
"pattern": "^none$"
}
}
}
]
}
}
}
}
}
}
}
}
}
}
}
}
}