use super::utils::Value;
use serde::{Deserialize, Serialize};
use std::collections::HashMap;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ResolvedNode {
pub type_name: String,
pub id: Option<String>,
#[cfg(feature = "metadata")]
pub props: HashMap<String, (Value, crate::error::Span)>,
#[cfg(not(feature = "metadata"))]
pub props: HashMap<String, Value>,
pub children: Vec<ResolvedNode>,
#[cfg(feature = "metadata")]
pub span: crate::error::Span,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ResolvedTree {
pub root_nodes: Vec<ResolvedNode>,
}