relay_document.rs (1392B)
1 #[cfg(not(feature = "std"))] 2 use alloc::{string::String, vec::Vec}; 3 4 #[cfg_attr(all(test, feature = "std"), derive(dto_bindgen::Dto))] 5 #[cfg_attr(all(test, feature = "std"), dto(export))] 6 #[cfg_attr( 7 any(feature = "serde", test), 8 derive(serde::Serialize, serde::Deserialize) 9 )] 10 #[derive(Clone, Debug)] 11 pub struct RelayDocument { 12 #[cfg_attr( 13 any(feature = "serde", test), 14 serde(skip_serializing_if = "Option::is_none") 15 )] 16 pub name: Option<String>, 17 #[cfg_attr( 18 any(feature = "serde", test), 19 serde(skip_serializing_if = "Option::is_none") 20 )] 21 pub description: Option<String>, 22 #[cfg_attr( 23 any(feature = "serde", test), 24 serde(skip_serializing_if = "Option::is_none") 25 )] 26 pub pubkey: Option<String>, 27 #[cfg_attr( 28 any(feature = "serde", test), 29 serde(skip_serializing_if = "Option::is_none") 30 )] 31 pub contact: Option<String>, 32 #[cfg_attr( 33 any(feature = "serde", test), 34 serde(skip_serializing_if = "Option::is_none") 35 )] 36 pub supported_nips: Option<Vec<u16>>, 37 #[cfg_attr( 38 any(feature = "serde", test), 39 serde(skip_serializing_if = "Option::is_none") 40 )] 41 pub software: Option<String>, 42 #[cfg_attr( 43 any(feature = "serde", test), 44 serde(skip_serializing_if = "Option::is_none") 45 )] 46 pub version: Option<String>, 47 }