switchgear_components/pool/cln/grpc/
config.rs

1use serde::{Deserialize, Serialize};
2use std::path::PathBuf;
3use url::Url;
4
5#[derive(Debug, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Serialize, Deserialize)]
6#[serde(rename_all = "camelCase")]
7pub struct ClnGrpcDiscoveryBackendImplementation {
8    pub url: Url,
9    pub domain: Option<String>,
10    pub auth: ClnGrpcClientAuth,
11}
12
13#[derive(Debug, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Serialize, Deserialize)]
14#[serde(rename_all = "camelCase")]
15#[serde(tag = "type")]
16pub enum ClnGrpcClientAuth {
17    Path(ClnGrpcClientAuthPath),
18}
19
20#[derive(Debug, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Serialize, Deserialize)]
21#[serde(rename_all = "camelCase")]
22pub struct ClnGrpcClientAuthPath {
23    pub ca_cert_path: Option<PathBuf>,
24    pub client_cert_path: PathBuf,
25    pub client_key_path: PathBuf,
26}