Map<String, dynamic> toJson() { return { 'rule': rule.toJson(), 'matchingSelectors': [...matchingSelectors], }; }