use std::collections::HashMap;
#[derive(Debug, Clone)]
pub struct SerializerFieldInfo {
pub name: String,
pub type_name: String,
pub is_optional: bool,
pub is_read_only: bool,
pub is_write_only: bool,
}
#[non_exhaustive]
#[derive(Debug, Clone)]
pub struct MetadataOptions {
pub name: String,
pub description: String,
pub allowed_methods: Vec<String>,
pub renders: Vec<String>,
pub parses: Vec<String>,
pub serializer_fields: Option<HashMap<String, SerializerFieldInfo>>,
}
impl Default for MetadataOptions {
fn default() -> Self {
Self {
name: "API View".to_string(),
description: "API endpoint".to_string(),
allowed_methods: vec!["GET".to_string()],
renders: vec!["application/json".to_string()],
parses: vec!["application/json".to_string()],
serializer_fields: None,
}
}
}