48 lines
1.2 KiB
JSON
48 lines
1.2 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://squeebot.lunasqu.ee/pkg/plugin.schema.json",
|
|
"title": "plugin",
|
|
"description": "Squeebot plugin definition",
|
|
"type": "object",
|
|
"properties": {
|
|
"main": {
|
|
"type": "string",
|
|
"description": "Plugin's entry file, must export a class that extends Plugin"
|
|
},
|
|
"name": {
|
|
"type": "string",
|
|
"description": "Name of the plugin"
|
|
},
|
|
"description": {
|
|
"type": "string",
|
|
"description": "A short description of the plugin's functions"
|
|
},
|
|
"tags": {
|
|
"type": "array",
|
|
"description": "A list of descriptive tags",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"version": {
|
|
"type": "string",
|
|
"description": "Semantic version(ing)"
|
|
},
|
|
"dependencies": {
|
|
"type": "array",
|
|
"description": "A list of plugin dependencies. ? suffix denotes optional.",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"npmDependencies": {
|
|
"type": "array",
|
|
"description": "A list of NPM dependencies, package@version format",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"required": ["main", "name", "version"]
|
|
}
|