150 lines
2.7 KiB
TypeScript
150 lines
2.7 KiB
TypeScript
namespace _lixer_event_reminder.conf
|
|
{
|
|
|
|
/**
|
|
*/
|
|
export type type_conf = {
|
|
bot_token : string;
|
|
sources : Array<
|
|
(
|
|
{
|
|
kind : "kalender_digital",
|
|
data : {
|
|
id : string;
|
|
filtration : {
|
|
category_blacklist : Array<string>;
|
|
title_blacklist : Array<string>;
|
|
};
|
|
};
|
|
}
|
|
)
|
|
>;
|
|
targets : Array<
|
|
{
|
|
chat_id : int;
|
|
interval : Array<int>;
|
|
}
|
|
>;
|
|
};
|
|
|
|
|
|
/**
|
|
*/
|
|
export const schema : lib_plankton.conf.type_schema = {
|
|
"nullable": false,
|
|
"type": "object",
|
|
"properties": {
|
|
"version": {
|
|
"nullable": false,
|
|
"type": "string",
|
|
},
|
|
"bot_token": {
|
|
"nullable": false,
|
|
"type": "string",
|
|
},
|
|
"sources": {
|
|
"nullable": false,
|
|
"type": "array",
|
|
"items": {
|
|
"nullable": false,
|
|
"anyOf": [
|
|
{
|
|
"type": "object",
|
|
"properties": {
|
|
"kind": {
|
|
"nullable": false,
|
|
"type": "string",
|
|
"enum": ["kalender_digital"]
|
|
},
|
|
"data": {
|
|
"nullable": false,
|
|
"type": "object",
|
|
"properties": {
|
|
"id": {
|
|
"nullable": false,
|
|
"type": "string"
|
|
},
|
|
"filtration": {
|
|
"nullable": false,
|
|
"type": "object",
|
|
"properties": {
|
|
"category_blacklist": {
|
|
"nullable": false,
|
|
"type": "array",
|
|
"items": {
|
|
"nullable": false,
|
|
"type": "string",
|
|
}
|
|
},
|
|
"title_blacklist": {
|
|
"nullable": false,
|
|
"type": "array",
|
|
"items": {
|
|
"nullable": false,
|
|
"type": "string",
|
|
}
|
|
},
|
|
},
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"category_blacklist",
|
|
"title_blacklist",
|
|
]
|
|
},
|
|
},
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"id",
|
|
"filtration",
|
|
]
|
|
}
|
|
},
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"kind",
|
|
"data",
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"targets": {
|
|
"nullable": false,
|
|
"type": "array",
|
|
"items": {
|
|
"nullable": false,
|
|
"type": "object",
|
|
"properties": {
|
|
"chat_id": {
|
|
"nullable": false,
|
|
"type": "integer",
|
|
},
|
|
"interval": {
|
|
"nullable": false,
|
|
"type": "array",
|
|
"items": {
|
|
"nullable": false,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
},
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"chat_id",
|
|
"interval",
|
|
]
|
|
}
|
|
},
|
|
},
|
|
"additionalProperties": false,
|
|
"required": [
|
|
"version",
|
|
"bot_token",
|
|
"chat_id",
|
|
"intval",
|
|
],
|
|
};
|
|
|
|
}
|
|
|