use serde::{Deserialize, Serialize};
use std::collections::HashMap;
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct RequestInfo {
pub method: String,
pub path: String,
pub query: Option<String>,
pub headers: HashMap<String, String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ResponseInfo {
pub status: u16,
pub headers: HashMap<String, String>,
}
#[derive(Debug, Clone, Serialize, Deserialize, Default)]
pub enum ModuleAction {
#[default]
Continue,
Modify {
headers: Option<HashMap<String, String>>,
path: Option<String>,
},
Block {
status: u16,
body: String,
headers: Option<HashMap<String, String>>,
},
}