use crate::{BlockOutFrom, CornerRadius, RegexEq, ShadowRule}; #[derive(knuffel::Decode, Debug, Default, Clone, PartialEq)] pub struct LayerRule { #[knuffel(children(name = "match"))] pub matches: Vec, #[knuffel(children(name = "exclude"))] pub excludes: Vec, #[knuffel(child, unwrap(argument))] pub opacity: Option, #[knuffel(child, unwrap(argument))] pub block_out_from: Option, #[knuffel(child, default)] pub shadow: ShadowRule, #[knuffel(child)] pub geometry_corner_radius: Option, #[knuffel(child, unwrap(argument))] pub place_within_backdrop: Option, #[knuffel(child, unwrap(argument))] pub baba_is_float: Option, } #[derive(knuffel::Decode, Debug, Default, Clone, PartialEq)] pub struct Match { #[knuffel(property, str)] pub namespace: Option, #[knuffel(property)] pub at_startup: Option, }