Skip to main content

winterbaume_chatbot/
types.rs

1use std::collections::HashMap;
2
3#[derive(Debug, Clone)]
4pub struct SlackConfig {
5    pub arn: String,
6    pub configuration_name: String,
7    pub slack_team_id: String,
8    pub slack_channel_id: String,
9    pub slack_channel_name: Option<String>,
10    pub iam_role_arn: String,
11    pub sns_topic_arns: Vec<String>,
12    pub logging_level: Option<String>,
13    pub guardrail_policy_arns: Vec<String>,
14    pub user_authorization_required: Option<bool>,
15    pub tags: HashMap<String, String>,
16}
17
18#[derive(Debug, Clone)]
19pub struct ChimeConfig {
20    pub arn: String,
21    pub configuration_name: String,
22    pub webhook_url: String,
23    pub webhook_description: String,
24    pub iam_role_arn: String,
25    pub sns_topic_arns: Vec<String>,
26    pub logging_level: Option<String>,
27    pub tags: HashMap<String, String>,
28}
29
30#[derive(Debug, Clone)]
31pub struct TeamsConfig {
32    pub arn: String,
33    pub configuration_name: String,
34    pub team_id: String,
35    pub team_name: Option<String>,
36    pub tenant_id: String,
37    pub channel_id: String,
38    pub channel_name: Option<String>,
39    pub iam_role_arn: String,
40    pub sns_topic_arns: Vec<String>,
41    pub logging_level: Option<String>,
42    pub guardrail_policy_arns: Vec<String>,
43    pub user_authorization_required: Option<bool>,
44    pub tags: HashMap<String, String>,
45}