/* Code generated by Azure.Iot.Operations.ProtocolCompilerLib v1.0.0.0; DO NOT EDIT. */
#![allow(unused_imports)]

use std::collections::HashMap;

use chrono::{DateTime, Utc};
use derive_builder::Builder;
use iso8601_duration::Duration;
use serde::{Deserialize, Serialize};
use uuid::Uuid;

use super::super::common_types::{b64::Bytes, date_only::Date, decimal::Decimal, time_only::Time};
use super::discovered_device::DiscoveredDevice;

#[derive(Serialize, Deserialize, Debug, Clone, Builder)]
pub struct CreateOrUpdateDiscoveredDeviceRequestSchema {
    /// The discovered device resource to create or update. Fields omitted in the request will be removed. The specified inbound endpoint will be added or updated in the inbound endpoints map.
    #[serde(rename = "discoveredDevice")]
    pub discovered_device: DiscoveredDevice,

    /// The name of the discovered device to create or update. This field is used to perform deduplication of discovered devices.
    #[serde(rename = "discoveredDeviceName")]
    pub discovered_device_name: String,
}
