// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateFlow`](crate::operation::create_flow::builders::CreateFlowFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`availability_zone(impl Into<String>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::availability_zone) / [`set_availability_zone(Option<String>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_availability_zone):<br>required: **false**<br>The Availability Zone that you want to create the flow in. These options are limited to the Availability Zones within the current AWS Region.<br>
/// - [`entitlements(GrantEntitlementRequest)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::entitlements) / [`set_entitlements(Option<Vec::<GrantEntitlementRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_entitlements):<br>required: **false**<br>The entitlements that you want to grant on a flow.<br>
/// - [`media_streams(AddMediaStreamRequest)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::media_streams) / [`set_media_streams(Option<Vec::<AddMediaStreamRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_media_streams):<br>required: **false**<br>The media streams that you want to add to the flow. You can associate these media streams with sources and outputs on the flow.<br>
/// - [`name(impl Into<String>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_name):<br>required: **true**<br>The name of the flow.<br>
/// - [`outputs(AddOutputRequest)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::outputs) / [`set_outputs(Option<Vec::<AddOutputRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_outputs):<br>required: **false**<br>The outputs that you want to add to this flow.<br>
/// - [`source(SetSourceRequest)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::source) / [`set_source(Option<SetSourceRequest>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_source):<br>required: **false**<br>The settings for the source of the flow.<br>
/// - [`source_failover_config(FailoverConfig)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::source_failover_config) / [`set_source_failover_config(Option<FailoverConfig>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_source_failover_config):<br>required: **false**<br>The settings for source failover.<br>
/// - [`sources(SetSourceRequest)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::sources) / [`set_sources(Option<Vec::<SetSourceRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_sources):<br>required: **false**<br>(undocumented)<br>
/// - [`vpc_interfaces(VpcInterfaceRequest)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::vpc_interfaces) / [`set_vpc_interfaces(Option<Vec::<VpcInterfaceRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_vpc_interfaces):<br>required: **false**<br>The VPC interfaces you want on the flow.<br>
/// - [`maintenance(AddMaintenance)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::maintenance) / [`set_maintenance(Option<AddMaintenance>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_maintenance):<br>required: **false**<br>Create maintenance setting for a flow<br>
/// - On success, responds with [`CreateFlowOutput`](crate::operation::create_flow::CreateFlowOutput) with field(s):
/// - [`flow(Option<Flow>)`](crate::operation::create_flow::CreateFlowOutput::flow): The settings for a flow, including its source, outputs, and entitlements.
/// - On failure, responds with [`SdkError<CreateFlowError>`](crate::operation::create_flow::CreateFlowError)
pub fn create_flow(&self) -> crate::operation::create_flow::builders::CreateFlowFluentBuilder {
crate::operation::create_flow::builders::CreateFlowFluentBuilder::new(self.handle.clone())
}
}