unifly-api 0.9.0

Async Rust client, reactive data layer, and domain model for UniFi controller APIs
Documentation
// ── DNS domain types ──

use serde::{Deserialize, Serialize};

use super::common::{DataSource, EntityOrigin};
use super::entity_id::EntityId;

#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
pub enum DnsPolicyType {
    ARecord,
    AaaaRecord,
    CnameRecord,
    MxRecord,
    TxtRecord,
    SrvRecord,
    ForwardDomain,
}

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct DnsPolicy {
    pub id: EntityId,
    pub policy_type: DnsPolicyType,
    pub domain: String,
    pub value: String,
    pub ttl_seconds: Option<u32>,

    pub origin: Option<EntityOrigin>,

    #[serde(skip)]
    #[allow(dead_code)]
    pub(crate) source: DataSource,
}