sig
  class type t =
    object ('a)
      method active : bool Js.t Js.readonly_prop
      method addEvents : 'Js.t -> unit Js.meth
      method addListener :
        'Js.t ->
        'Js.callback Js.optdef ->
        'Js.t Js.optdef -> 'Js.t Js.optdef -> 'Js.t Js.meth
      method addManagedListener :
        'Js.t ->
        'Js.t ->
        'Js.callback Js.optdef ->
        'Js.t Js.optdef -> 'Js.t Js.optdef -> 'Js.t Js.meth
      method callParent : 'Js.t -> 'Js.t Js.meth
      method callSuper : 'Js.t -> 'Js.t Js.meth
      method clearListeners : unit Js.meth
      method clearManagedListeners : unit Js.meth
      method dragTarget : Dom_html.element Js.t Js.readonly_prop
      method enableBubble : 'Js.t -> unit Js.meth
      method fireEvent : Js.js_string Js.t -> 'Js.t -> bool Js.t Js.meth
      method fireEventArgs :
        Js.js_string Js.t -> 'Js.t Js.js_array Js.t -> bool Js.t Js.meth
      method getDragTarget : Ext_dom_Element.t Js.t Js.meth
      method getInitialConfig :
        Js.js_string Js.t Js.optdef -> 'Js.t Js.meth
      method getOffset :
        Js.js_string Js.t Js.optdef ->
        Js.number Js.t Js.js_array Js.t Js.meth
      method hasListener : Js.js_string Js.t -> bool Js.t Js.meth
      method hasListeners : 'Js.t Js.readonly_prop
      method initConfig : 'Js.t -> 'Js.t Js.meth
      method initEl : 'Js.t -> unit Js.meth
      method isObservable : bool Js.t Js.prop
      method mon :
        'Js.t ->
        'Js.t ->
        'a1 Js.callback Js.optdef ->
        'b1 Js.t Js.optdef -> 'c1 Js.t Js.optdef -> 'd1 Js.t Js.meth
      method mun :
        'e1 Js.t ->
        'f1 Js.t ->
        'g1 Js.callback Js.optdef -> 'h1 Js.t Js.optdef -> unit Js.meth
      method on :
        'i1 Js.t ->
        'j1 Js.callback Js.optdef ->
        'k1 Js.t Js.optdef -> 'l1 Js.t Js.optdef -> 'm1 Js.t Js.meth
      method onBeforeStart : Ext_EventObject.t Js.t -> unit Js.meth
      method onDrag : Ext_EventObject.t Js.t -> unit Js.meth
      method onEnd : Ext_EventObject.t Js.t -> unit Js.meth
      method onStart : Ext_EventObject.t Js.t -> unit Js.meth
      method relayEvents :
        'n1 Js.t ->
        Js.js_string Js.t Js.js_array Js.t ->
        Js.js_string Js.t Js.optdef -> 'o1 Js.t Js.meth
      method removeListener :
        Js.js_string Js.t ->
        'p1 Js.callback -> 'q1 Js.t Js.optdef -> unit Js.meth
      method removeManagedListener :
        'r1 Js.t ->
        's1 Js.t ->
        't1 Js.callback Js.optdef -> 'u1 Js.t Js.optdef -> unit Js.meth
      method resumeEvent : Js.js_string Js.t -> unit Js.meth
      method resumeEvents : unit Js.meth
      method self : Ext_Class.t Js.t Js.prop
      method statics : Ext_Class.t Js.t Js.meth
      method suspendEvent : Js.js_string Js.t -> unit Js.meth
      method suspendEvents : bool Js.t -> unit Js.meth
      method un :
        Js.js_string Js.t ->
        'v1 Js.callback -> 'w1 Js.t Js.optdef -> unit Js.meth
    end
  class type configs =
    object ('a)
      method autoStart : 'Js.t Js.prop
      method constrain : bool Js.t Js.prop
      method constrainDelegate : bool Js.t Js.prop
      method constrainTo : 'Js.t Js.prop
      method delegate : Js.js_string Js.t Js.prop
      method delegate_element : 'Js.t Js.prop
      method listeners : 'Js.t Js.prop
      method onBeforeStart :
        ('Js.t, Ext_EventObject.t Js.t -> unit) Js.meth_callback
        Js.writeonly_prop
      method onDrag :
        ('Js.t, Ext_EventObject.t Js.t -> unit) Js.meth_callback
        Js.writeonly_prop
      method onEnd :
        ('Js.t, Ext_EventObject.t Js.t -> unit) Js.meth_callback
        Js.writeonly_prop
      method onStart :
        ('Js.t, Ext_EventObject.t Js.t -> unit) Js.meth_callback
        Js.writeonly_prop
      method overCls : Js.js_string Js.t Js.prop
      method preventDefault : bool Js.t Js.prop
      method stopEvent : bool Js.t Js.prop
      method tolerance : Js.number Js.t Js.prop
      method trackOver : bool Js.t Js.prop
    end
  class type events =
    object
      method beforestart :
        ('Js.t -> 'Js.t -> 'Js.t -> unit) Js.callback Js.writeonly_prop
      method drag :
        ('Js.t -> 'Js.t -> 'Js.t -> unit) Js.callback Js.writeonly_prop
      method dragend :
        ('Js.t -> 'Js.t -> 'Js.t -> unit) Js.callback Js.writeonly_prop
      method dragstart :
        ('Js.t -> 'Js.t -> 'Js.t -> unit) Js.callback Js.writeonly_prop
      method mousedown :
        ('Js.t -> 'Js.t -> 'Js.t -> unit) Js.callback Js.writeonly_prop
      method mousemove :
        ('Js.t -> 'Js.t -> 'Js.t -> unit) Js.callback Js.writeonly_prop
      method mouseout :
        ('Js.t -> 'Js.t -> 'Js.t -> unit) Js.callback Js.writeonly_prop
      method mouseover :
        ('Js.t -> 'Js.t -> Dom_html.element Js.t -> 'Js.t -> unit)
        Js.callback Js.writeonly_prop
      method mouseup :
        ('Js.t -> 'Js.t -> 'a1 Js.t -> unit) Js.callback
        Js.writeonly_prop
    end
  class type statics =
    object
      method addMembers : 'Js.t -> unit Js.meth
      method addStatics : 'Js.t -> 'Js.t Js.meth
      method capture :
        'Js.t -> 'Js.callback -> 'Js.t Js.optdef -> unit Js.meth
      method create : 'Js.t Js.meth
      method createAlias : 'Js.t -> 'Js.t -> unit Js.meth
      method getName : Js.js_string Js.t Js.meth
      method observe : 'Js.callback -> 'Js.t -> unit Js.meth
      method releaseCapture : 'Js.t -> unit Js.meth
    end
  val of_configs :
    Ext_util_ComponentDragger.configs Js.t ->
    Ext_util_ComponentDragger.t Js.t
  val to_configs :
    Ext_util_ComponentDragger.t Js.t ->
    Ext_util_ComponentDragger.configs Js.t
end