// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateChannel`](crate::operation::create_channel::builders::CreateChannelFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`app_instance_arn(impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::app_instance_arn) / [`set_app_instance_arn(Option<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_app_instance_arn): <p>The ARN of the channel request.</p>
/// - [`name(impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_name): <p>The name of the channel.</p>
/// - [`mode(ChannelMode)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::mode) / [`set_mode(Option<ChannelMode>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_mode): <p>The channel mode: <code>UNRESTRICTED</code> or <code>RESTRICTED</code>. Administrators, moderators, and channel members can add themselves and other members to unrestricted channels. Only administrators and moderators can add members to restricted channels.</p>
/// - [`privacy(ChannelPrivacy)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::privacy) / [`set_privacy(Option<ChannelPrivacy>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_privacy): <p>The channel's privacy level: <code>PUBLIC</code> or <code>PRIVATE</code>. Private channels aren't discoverable by users outside the channel. Public channels are discoverable by anyone in the <code>AppInstance</code>.</p>
/// - [`metadata(impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::metadata) / [`set_metadata(Option<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_metadata): <p>The metadata of the creation request. Limited to 1KB and UTF-8.</p>
/// - [`client_request_token(impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::client_request_token) / [`set_client_request_token(Option<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_client_request_token): <p>The client token for the request. An <code>Idempotency</code> token.</p>
/// - [`tags(Vec<Tag>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::tags) / [`set_tags(Option<Vec<Tag>>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_tags): <p>The tags for the creation request.</p>
/// - [`chime_bearer(impl Into<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::chime_bearer) / [`set_chime_bearer(Option<String>)`](crate::operation::create_channel::builders::CreateChannelFluentBuilder::set_chime_bearer): <p>The <code>AppInstanceUserArn</code> of the user that makes the API call.</p>
/// - On success, responds with [`CreateChannelOutput`](crate::operation::create_channel::CreateChannelOutput) with field(s):
/// - [`channel_arn(Option<String>)`](crate::operation::create_channel::CreateChannelOutput::channel_arn): <p>The ARN of the channel.</p>
/// - On failure, responds with [`SdkError<CreateChannelError>`](crate::operation::create_channel::CreateChannelError)
pub fn create_channel(
&self,
) -> crate::operation::create_channel::builders::CreateChannelFluentBuilder {
crate::operation::create_channel::builders::CreateChannelFluentBuilder::new(
self.handle.clone(),
)
}
}