use serde::{Deserialize, Serialize};
use crate::proto::h2::{
PseudoHeaderOrder,
frame::{SettingsConfig, StreamId},
};
#[derive(Debug, Clone, Default)]
pub struct Http1ClientContextParams {
pub title_header_case: bool,
}
#[derive(Debug, Clone, Default)]
pub struct H2ClientContextParams {
pub headers_pseudo_order: Option<PseudoHeaderOrder>,
pub headers_priority: Option<StreamDependencyParams>,
pub priority: Option<Vec<PriorityParams>>,
pub setting_config: Option<SettingsConfig>,
}
#[derive(Debug, Clone, Eq, PartialEq, Serialize, Deserialize)]
pub struct StreamDependencyParams {
pub dependency_id: StreamId,
pub weight: u8,
pub is_exclusive: bool,
}
#[derive(Debug, Clone)]
pub struct LastPeerPriorityParams(pub PriorityParams);
#[derive(Debug, Clone, Eq, PartialEq, Serialize, Deserialize)]
pub struct PriorityParams {
pub stream_id: StreamId,
pub dependency: StreamDependencyParams,
}