use crate::ast::{Node, Source, RawValue};
use std::cell::RefCell;
use std::rc::{Rc, Weak};
#[derive(Debug, PartialEq, Clone)]
pub struct DeclarationRaws {
pub before: Option<String>,
pub between: Option<String>,
pub important: Option<String>,
pub value: Option<RawValue>,
}
pub struct Declaration {
pub r#type: &'static str,
pub parent: Option<RefCell<Weak<Node>>>,
pub nodes: Option<RefCell<Vec<Rc<Node>>>>,
pub prop: String,
pub value: String,
pub important: bool,
pub variable: bool,
pub raws: DeclarationRaws,
pub source: Option<Source>,
}