#[derive(Debug, Clone, ::serde::Deserialize, ::serde::Serialize)]
pub struct Channel {
#[serde(rename = "address")]
pub address: ::alloc::string::String,
#[serde(rename = "expiration")]
pub expiration: ::alloc::string::String,
#[serde(rename = "id")]
pub id: ::alloc::string::String,
#[serde(rename = "kind")]
pub kind: ::alloc::string::String,
#[serde(rename = "params")]
pub params: channel_params_additional::Params,
#[serde(rename = "payload")]
pub payload: ::core::primitive::bool,
#[serde(rename = "resourceId")]
pub resource_id: ::alloc::string::String,
#[serde(rename = "resourceUri")]
pub resource_uri: ::alloc::string::String,
#[serde(rename = "token")]
pub token: ::alloc::string::String,
#[serde(rename = "type")]
pub type_: ::alloc::string::String,
}
#[derive(Debug, Clone, ::serde::Deserialize, ::serde::Serialize, Default)]
pub struct ChannelPartial {
#[serde(rename = "address")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub address: ::core::option::Option<::alloc::string::String>,
#[serde(rename = "expiration")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub expiration: ::core::option::Option<::alloc::string::String>,
#[serde(rename = "id")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub id: ::core::option::Option<::alloc::string::String>,
#[serde(rename = "kind")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub kind: ::core::option::Option<::alloc::string::String>,
#[serde(rename = "params")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub params: ::core::option::Option<channel_params_additional::ParamsPartial>,
#[serde(rename = "payload")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub payload: ::core::option::Option<::core::primitive::bool>,
#[serde(rename = "resourceId")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub resource_id: ::core::option::Option<::alloc::string::String>,
#[serde(rename = "resourceUri")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub resource_uri: ::core::option::Option<::alloc::string::String>,
#[serde(rename = "token")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub token: ::core::option::Option<::alloc::string::String>,
#[serde(rename = "type")]
#[serde(skip_serializing_if = "::core::option::Option::is_none")]
pub type_: ::core::option::Option<::alloc::string::String>,
}
pub mod channel_params_additional {
use super::*;
#[derive(Debug, Clone, ::serde::Deserialize, ::serde::Serialize)]
pub struct Params {}
#[derive(Debug, Clone, ::serde::Deserialize, ::serde::Serialize, Default)]
pub struct ParamsPartial {}
}