use serde::Deserialize;
use std::net::IpAddr;
#[derive(Debug, Clone, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct DhcpScope {
pub name: Option<String>,
#[serde(default)]
pub enabled: bool,
#[serde(flatten)]
pub extra: serde_json::Value,
}
#[derive(Debug, Clone, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct DhcpLease {
pub ip_address: Option<IpAddr>,
pub host_name: Option<String>,
pub hardware_address: Option<String>,
#[serde(flatten)]
pub extra: serde_json::Value,
}
#[derive(Debug, Deserialize)]
#[serde(rename_all = "camelCase")]
pub(crate) struct DhcpScopeListResponse {
pub scopes: Vec<DhcpScope>,
}
#[derive(Debug, Deserialize)]
#[serde(rename_all = "camelCase")]
pub(crate) struct DhcpLeaseListResponse {
pub leases: Vec<DhcpLease>,
}