dwn-core 0.4.0

Core DWN types.
Documentation
use serde::{Deserialize, Serialize};
use serde_with::skip_serializing_none;

use crate::message::descriptor::{Interface, Method};

#[skip_serializing_none]
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ProtocolsQuery {
    interface: Interface,
    method: Method,
    pub filter: ProtocolFilter,
}

#[skip_serializing_none]
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq)]
pub struct ProtocolFilter {
    pub protocol: Option<String>,
    pub versions: Option<Vec<semver::Version>>,
}