1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct ListMicrosoftTeamsConfiguredTeamsOutput {
    /// A list of teams in Microsoft Teams that have been configured with AWS Chatbot.
    pub configured_teams: ::std::option::Option<::std::vec::Vec<crate::types::ConfiguredTeam>>,
    /// An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.
    pub next_token: ::std::option::Option<::std::string::String>,
    _request_id: Option<String>,
}
impl ListMicrosoftTeamsConfiguredTeamsOutput {
    /// A list of teams in Microsoft Teams that have been configured with AWS Chatbot.
    ///
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.configured_teams.is_none()`.
    pub fn configured_teams(&self) -> &[crate::types::ConfiguredTeam] {
        self.configured_teams.as_deref().unwrap_or_default()
    }
    /// An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.
    pub fn next_token(&self) -> ::std::option::Option<&str> {
        self.next_token.as_deref()
    }
}
impl ::aws_types::request_id::RequestId for ListMicrosoftTeamsConfiguredTeamsOutput {
    fn request_id(&self) -> Option<&str> {
        self._request_id.as_deref()
    }
}
impl ListMicrosoftTeamsConfiguredTeamsOutput {
    /// Creates a new builder-style object to manufacture [`ListMicrosoftTeamsConfiguredTeamsOutput`](crate::operation::list_microsoft_teams_configured_teams::ListMicrosoftTeamsConfiguredTeamsOutput).
    pub fn builder() -> crate::operation::list_microsoft_teams_configured_teams::builders::ListMicrosoftTeamsConfiguredTeamsOutputBuilder {
        crate::operation::list_microsoft_teams_configured_teams::builders::ListMicrosoftTeamsConfiguredTeamsOutputBuilder::default()
    }
}

/// A builder for [`ListMicrosoftTeamsConfiguredTeamsOutput`](crate::operation::list_microsoft_teams_configured_teams::ListMicrosoftTeamsConfiguredTeamsOutput).
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
pub struct ListMicrosoftTeamsConfiguredTeamsOutputBuilder {
    pub(crate) configured_teams: ::std::option::Option<::std::vec::Vec<crate::types::ConfiguredTeam>>,
    pub(crate) next_token: ::std::option::Option<::std::string::String>,
    _request_id: Option<String>,
}
impl ListMicrosoftTeamsConfiguredTeamsOutputBuilder {
    /// Appends an item to `configured_teams`.
    ///
    /// To override the contents of this collection use [`set_configured_teams`](Self::set_configured_teams).
    ///
    /// A list of teams in Microsoft Teams that have been configured with AWS Chatbot.
    pub fn configured_teams(mut self, input: crate::types::ConfiguredTeam) -> Self {
        let mut v = self.configured_teams.unwrap_or_default();
        v.push(input);
        self.configured_teams = ::std::option::Option::Some(v);
        self
    }
    /// A list of teams in Microsoft Teams that have been configured with AWS Chatbot.
    pub fn set_configured_teams(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::ConfiguredTeam>>) -> Self {
        self.configured_teams = input;
        self
    }
    /// A list of teams in Microsoft Teams that have been configured with AWS Chatbot.
    pub fn get_configured_teams(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::ConfiguredTeam>> {
        &self.configured_teams
    }
    /// An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.
    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.next_token = ::std::option::Option::Some(input.into());
        self
    }
    /// An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.
    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.next_token = input;
        self
    }
    /// An optional token returned from a prior request. Use this token for pagination of results from this action. If this parameter is specified, the response includes only results beyond the token, up to the value specified by MaxResults.
    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
        &self.next_token
    }
    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
        self._request_id = Some(request_id.into());
        self
    }

    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
        self._request_id = request_id;
        self
    }
    /// Consumes the builder and constructs a [`ListMicrosoftTeamsConfiguredTeamsOutput`](crate::operation::list_microsoft_teams_configured_teams::ListMicrosoftTeamsConfiguredTeamsOutput).
    pub fn build(self) -> crate::operation::list_microsoft_teams_configured_teams::ListMicrosoftTeamsConfiguredTeamsOutput {
        crate::operation::list_microsoft_teams_configured_teams::ListMicrosoftTeamsConfiguredTeamsOutput {
            configured_teams: self.configured_teams,
            next_token: self.next_token,
            _request_id: self._request_id,
        }
    }
}