{
"id": "dev.mccue.jvm.moduleInfo",
"defs": {
"main": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"uses": {
"type": "array",
"items": {
"ref": "dev.mccue.jvm.module#uses",
"type": "ref"
}
},
"hashes": {
"type": "array",
"items": {
"ref": "dev.mccue.jvm.module#hashes",
"type": "ref"
}
},
"exports": {
"type": "array",
"items": {
"ref": "dev.mccue.jvm.module#exports",
"type": "ref"
}
},
"version": {
"type": "string",
"minLength": 1
},
"mandated": {
"type": "boolean",
"default": false
},
"packages": {
"type": "array",
"items": {
"ref": "dev.mccue.jvm.module#requires",
"type": "ref"
}
},
"provides": {
"type": "array",
"items": {
"ref": "dev.mccue.jvm.module#provides",
"type": "ref"
}
},
"requires": {
"type": "array",
"items": {
"ref": "dev.mccue.jvm.module#requires",
"type": "ref"
}
},
"synthetic": {
"type": "boolean",
"default": false
},
"targetPlatform": {
"type": "string",
"minLength": 1
}
}
},
"uses": {
"type": "object",
"required": [
"service"
],
"properties": {
"service": {
"type": "string",
"minLength": 3
}
}
},
"hashes": {
"type": "object",
"required": [
"module",
"algorithm",
"hash"
],
"properties": {
"hash": {
"type": "string",
"minLength": 1
},
"module": {
"type": "string",
"minLength": 1
},
"algorithm": {
"type": "string",
"minLength": 1
}
}
},
"exports": {
"type": "object",
"required": [
"package"
],
"properties": {
"to": {
"type": "array",
"items": {
"ref": "dev.mccue.jvm.moduleInfo#exportTo",
"type": "ref"
}
},
"package": {
"type": "string",
"minLength": 1
},
"mandated": {
"type": "boolean",
"default": false
},
"synthetic": {
"type": "boolean",
"default": false
}
}
},
"exportTo": {
"type": "object",
"required": [
"package"
],
"properties": {
"package": {
"type": "string",
"minLength": 1
}
}
},
"packages": {
"type": "object",
"required": [
"package"
],
"properties": {
"package": {
"type": "string",
"minLength": 1
}
}
},
"provides": {
"type": "object",
"required": [
"service",
"with"
],
"properties": {
"with": {
"type": "string",
"minLength": 3
},
"service": {
"type": "string",
"minLength": 3
}
}
},
"requires": {
"type": "object",
"required": [
"module"
],
"properties": {
"module": {
"type": "string",
"minLength": 1
},
"static": {
"type": "boolean",
"default": false
},
"version": {
"type": "string",
"minLength": 1
},
"mandated": {
"type": "boolean",
"default": false
},
"synthetic": {
"type": "boolean",
"default": false
},
"transitive": {
"type": "boolean",
"default": false
}
}
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}