anchor.diff:  }
   
   @JS()
  -@anonymous
   class SyntheticCompositionEvent extends SyntheticEvent {
     external String get data;
   }
   
   @JS()
  -@anonymous
   class SyntheticFocusEvent extends SyntheticEvent {
     external EventTarget get relatedTarget;
   }
   
   @JS()
  -@anonymous
   class SyntheticFormEvent extends SyntheticEvent {}
   
   /// A JS object that looks like a [DataTransfer] but isn't one.
   ///
   /// See `syntheticDataTransferFactory` for more info.
   @JS()
  -@anonymous
   class NonNativeDataTransfer {
     external String get dropEffect;
     external String get effectAllowed;
  
positive.code: }
  
  @JS()
  @anonymous
  class SyntheticMouseEvent extends SyntheticEvent {
    external bool get altKey;
    external num get button;
  
negative.code: }
  
  @JS()
  class SyntheticTouchEvent extends SyntheticEvent {
    external bool get altKey;
    external TouchList get changedTouches;
  