// 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): The Availability Zone that you want to create the flow in. These options are limited to the Availability Zones within the current AWS Region.
/// - [`entitlements(Vec<GrantEntitlementRequest>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::entitlements) / [`set_entitlements(Option<Vec<GrantEntitlementRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_entitlements): The entitlements that you want to grant on a flow.
/// - [`media_streams(Vec<AddMediaStreamRequest>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::media_streams) / [`set_media_streams(Option<Vec<AddMediaStreamRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_media_streams): The media streams that you want to add to the flow. You can associate these media streams with sources and outputs on the flow.
/// - [`name(impl Into<String>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_name): The name of the flow.
/// - [`outputs(Vec<AddOutputRequest>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::outputs) / [`set_outputs(Option<Vec<AddOutputRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_outputs): The outputs that you want to add to this flow.
/// - [`source(SetSourceRequest)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::source) / [`set_source(Option<SetSourceRequest>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_source): The settings for the source of the flow.
/// - [`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): The settings for source failover.
/// - [`sources(Vec<SetSourceRequest>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::sources) / [`set_sources(Option<Vec<SetSourceRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_sources): (undocumented)
/// - [`vpc_interfaces(Vec<VpcInterfaceRequest>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::vpc_interfaces) / [`set_vpc_interfaces(Option<Vec<VpcInterfaceRequest>>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_vpc_interfaces): The VPC interfaces you want on the flow.
/// - [`maintenance(AddMaintenance)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::maintenance) / [`set_maintenance(Option<AddMaintenance>)`](crate::operation::create_flow::builders::CreateFlowFluentBuilder::set_maintenance): Create maintenance setting for a flow
/// - 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())
}
}