when<T>  method 
      
T
when<T>({  
    
    
- required T content(),
 - required T override(),
 - required T room(),
 - required T sender(),
 - required T underride(),
 
Implementation
T when<T>({
  required T Function() content,
  required T Function() override,
  required T Function() room,
  required T Function() sender,
  required T Function() underride,
}) =>
    {
      PushRuleKind.content: content,
      PushRuleKind.override: override,
      PushRuleKind.room: room,
      PushRuleKind.sender: sender,
      PushRuleKind.underride: underride,
    }[this]!();