1use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
6#[serde(rename_all = "snake_case")]
7pub enum ChannelFilter {
8 Subscribe,
9 Ignore,
10 RelayOnly,
11 MetadataOnly,
12}
13
14#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
15#[serde(rename_all = "snake_case")]
16pub enum ChannelPolicy {
17 Public,
18 SignedPublic,
19 Private,
20 GroupEncrypted,
21}
22
23#[derive(Debug, Clone, Serialize, Deserialize)]
24pub struct ChannelSub {
25 pub name: String,
26 pub filter: ChannelFilter,
27 pub policy: ChannelPolicy,
28}