// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateDevice`](crate::operation::create_device::builders::CreateDeviceFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`global_network_id(impl Into<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::global_network_id) / [`set_global_network_id(Option<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_global_network_id):<br>required: **true**<br><p>The ID of the global network.</p><br>
/// - [`aws_location(AwsLocation)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::aws_location) / [`set_aws_location(Option<AwsLocation>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_aws_location):<br>required: **false**<br><p>The Amazon Web Services location of the device, if applicable. For an on-premises device, you can omit this parameter.</p><br>
/// - [`description(impl Into<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_description):<br>required: **false**<br><p>A description of the device.</p> <p>Constraints: Maximum length of 256 characters.</p><br>
/// - [`r#type(impl Into<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::type) / [`set_type(Option<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_type):<br>required: **false**<br><p>The type of the device.</p><br>
/// - [`vendor(impl Into<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::vendor) / [`set_vendor(Option<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_vendor):<br>required: **false**<br><p>The vendor of the device.</p> <p>Constraints: Maximum length of 128 characters.</p><br>
/// - [`model(impl Into<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::model) / [`set_model(Option<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_model):<br>required: **false**<br><p>The model of the device.</p> <p>Constraints: Maximum length of 128 characters.</p><br>
/// - [`serial_number(impl Into<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::serial_number) / [`set_serial_number(Option<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_serial_number):<br>required: **false**<br><p>The serial number of the device.</p> <p>Constraints: Maximum length of 128 characters.</p><br>
/// - [`location(Location)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::location) / [`set_location(Option<Location>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_location):<br>required: **false**<br><p>The location of the device.</p><br>
/// - [`site_id(impl Into<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::site_id) / [`set_site_id(Option<String>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_site_id):<br>required: **false**<br><p>The ID of the site.</p><br>
/// - [`tags(Tag)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::tags) / [`set_tags(Option<Vec::<Tag>>)`](crate::operation::create_device::builders::CreateDeviceFluentBuilder::set_tags):<br>required: **false**<br><p>The tags to apply to the resource during creation.</p><br>
/// - On success, responds with [`CreateDeviceOutput`](crate::operation::create_device::CreateDeviceOutput) with field(s):
/// - [`device(Option<Device>)`](crate::operation::create_device::CreateDeviceOutput::device): <p>Information about the device.</p>
/// - On failure, responds with [`SdkError<CreateDeviceError>`](crate::operation::create_device::CreateDeviceError)
pub fn create_device(&self) -> crate::operation::create_device::builders::CreateDeviceFluentBuilder {
crate::operation::create_device::builders::CreateDeviceFluentBuilder::new(self.handle.clone())
}
}