1use serde::{Deserialize, Serialize};
2
3use crate::providers::http::Params as HttpParams;
4
5#[derive(Debug, Deserialize, Serialize)]
6pub enum TaskType {
7 #[serde(rename = "http")]
8 Http,
9}
10
11#[derive(Debug, Deserialize, Serialize)]
12pub struct Rules {
13 pub interval: String,
14}
15
16#[derive(Debug, Deserialize, Serialize)]
17#[serde(untagged)]
18pub enum Params {
19 Http(HttpParams),
20}
21
22#[derive(Debug, Deserialize, Serialize)]
23pub struct Task {
24 pub id: String,
25 #[serde(rename = "type")]
26 pub task_type: TaskType,
27 pub task: Rules,
28 pub params: Params,
29}