use std::cell::RefCell;
use std::rc::{Rc, Weak};
use crate::ast::{Node, RawValue, Source};
#[derive(Debug, PartialEq, Clone)]
pub struct AtRuleRaws {
pub before: Option<String>,
pub after: Option<String>,
pub after_name: Option<String>,
pub between: Option<String>,
pub semicolon: Option<bool>,
pub params: Option<RawValue>,
}
pub struct AtRule {
pub r#type: &'static str,
pub nodes: Option<RefCell<Vec<Rc<Node>>>>,
pub parent: Option<RefCell<Weak<Node>>>,
pub raws: AtRuleRaws,
pub name: String,
pub params: String,
pub source: Option<Source>,
}