use serde::{Deserialize, Serialize}; /// Response object of the /session API #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct NotarizationSessionResponse { /// Unique session id that is generated by notary and shared to prover pub session_id: String, } /// Request object of the /session API #[derive(Debug, Clone, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct NotarizationSessionRequest { pub client_type: ClientType, /// Maximum number of bytes that can be sent in bytes. pub max_sent_data: Option, /// Maximum number of bytes that can be received in bytes. pub max_recv_data: Option, } /// Types of client that the prover is using #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)] pub enum ClientType { /// Client that has access to the transport layer Tcp, /// Client that cannot directly access transport layer, e.g. browser extension Websocket, }