blob: c258a1fca14543934adae50a1586e391afffc3ef [file] [log] [blame]
{
"$schema": "http://json-schema.org/draft-07/schema#",
"definitions": {
"banjo_library_name": {
"description": "Name of a BANJO library",
"type": "string"
},
"cc_library_name": {
"description": "Name of a C/C++ library",
"type": "string"
},
"envelope": {
"additionalProperties": false,
"description": "A versioned envelope.",
"properties": {
"data": {
"description": "The payload."
},
"version": {
"description": "An opaque version of the data held in the envelope.",
"type": "string"
}
},
"required": [
"version",
"data"
],
"type": "object"
},
"fidl_library_name": {
"description": "Name of a FIDL library",
"type": "string"
},
"file": {
"description": "Path to a file from the root of the SDK",
"type": "string"
},
"key_value": {
"additionalItems": false,
"description": "A key-value pair.",
"items": [
{
"type": "string"
},
{
"type": [
"number",
"string"
]
}
],
"minItems": 2,
"type": "array"
},
"key_value_list": {
"description": "A list of key-value pairs.",
"items": {
"$ref": "#/definitions/key_value"
},
"type": "array"
},
"sdk_element": {
"description": "Base type for SDK elements",
"properties": {
"name": {
"description": "The name of the element",
"type": "string"
},
"type": {
"$ref": "#/definitions/type",
"description": "The type of the element"
}
},
"required": [
"name",
"type"
],
"type": "object"
},
"target_arch": {
"description": "Target architecture",
"enum": [
"arm64",
"x64"
],
"type": "string"
},
"type": {
"description": "Represents the type of an SDK element",
"type": "string"
},
"version": {
"description": "An opaque version string. The string may include any characters. Tools must not attempt to draw any conclusions about inter version compatibility other than the version 'X' manifest complies with the version 'X' of the schema and is therefore parsable by the version 'X' parser. There are no guarantees, for example, a parser for version 'B' may be able to parse a JSON document versioned 'A'.",
"minLength": 1,
"type": "string"
},
"versioned_sdk_element": {
"allOf": [
{
"$ref": "#/definitions/envelope"
},
{
"properties": {
"data": {
"oneOf": [
{
"$ref": "#/definitions/sdk_element"
}
]
}
},
"type": "object"
}
],
"type": "object"
}
},
"id": "http://fuchsia.com/schemas/sdk/common.json"
}