use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct O11yPeriodTelegramConfig {
#[serde(rename = "NotifierConfig", skip_serializing_if = "Option::is_none")]
pub notifier_config: Option<Box<models::O11yPeriodNotifierConfig>>,
#[serde(rename = "api_url", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub api_url: Option<Option<serde_json::Value>>,
#[serde(rename = "chat", skip_serializing_if = "Option::is_none")]
pub chat: Option<i32>,
#[serde(rename = "chat_file", skip_serializing_if = "Option::is_none")]
pub chat_file: Option<String>,
#[serde(rename = "disable_notifications", skip_serializing_if = "Option::is_none")]
pub disable_notifications: Option<bool>,
#[serde(rename = "http_config", skip_serializing_if = "Option::is_none")]
pub http_config: Option<Box<models::O11yPeriodHttpClientConfig>>,
#[serde(rename = "message", skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
#[serde(rename = "message_thread_id", skip_serializing_if = "Option::is_none")]
pub message_thread_id: Option<i32>,
#[serde(rename = "parse_mode", skip_serializing_if = "Option::is_none")]
pub parse_mode: Option<String>,
#[serde(rename = "token", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub token: Option<Option<serde_json::Value>>,
#[serde(rename = "token_file", skip_serializing_if = "Option::is_none")]
pub token_file: Option<String>,
}
impl O11yPeriodTelegramConfig {
pub fn new() -> O11yPeriodTelegramConfig {
O11yPeriodTelegramConfig {
notifier_config: None,
api_url: None,
chat: None,
chat_file: None,
disable_notifications: None,
http_config: None,
message: None,
message_thread_id: None,
parse_mode: None,
token: None,
token_file: None,
}
}
}