{
	"type": "object",
	"title": "osiota application gpio",
	"description": "This application reads input states of GPIO pins.",
	"properties": {
		"pin": {
			"type": "number",
			"title": "Pin number",
			"description": "Not GPIO number ([See pin naming](https://www.npmjs.com/package/rpi-gpio#pin-naming))",
			"examples": [
				7
			]
		},
		"invert": {
			"type": "boolean",
			"title": "Invert Input Value",
			"description": "e.g. for a pull down circuit",
			"examples": [
				true
			]
		},
		"map": {
			"type": "array",
			"format": "table",
			"title": "Actions",
			"items": {
				"type": "object",
				"title": "Action",
				"properties": {
					"type": {
						"type": "string",
						"title": "Switch Type",
						"enum": [
							"switch",
							"press",
							"longpress"
						]
					},
					"node": {
						"title": "Node Name",
						"type": "string"
					}
				},
				"required": [
					"type"
				]
			},
			"examples": [
				[
					{
						"type": "press",
						"node": "/my-switch"
					},
					{
						"type": "longpress",
						"node": "/my-switch-long"
					}
				]
			]
		}
	},
	"required": [ "pin" ],
	"additionalProperties": false
}
