sig
  module Layout :
    sig
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Ctxpopup :
    sig
      val dismissed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val geometry_update :
        Evas.obj -> (Evas.obj -> Evas.coord_rectangle -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Fileselector :
    sig
      val activated : Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val selected : Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val selected_invalid : Evas.obj -> (Evas.obj -> unit) -> unit
      val directory_open : Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val _done : Evas.obj -> (Evas.obj -> string option -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Fileselector_button :
    sig
      val file_chosen :
        Evas.obj -> (Evas.obj -> string option -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val repeated : Evas.obj -> (Evas.obj -> unit) -> unit
      val pressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val unpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Fileselector_entry :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val activated : Evas.obj -> (Evas.obj -> unit) -> unit
      val press : Evas.obj -> (Evas.obj -> unit) -> unit
      val longpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked_double : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_paste : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_copy : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_cut : Evas.obj -> (Evas.obj -> unit) -> unit
      val unpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val file_chosen :
        Evas.obj -> (Evas.obj -> string option -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Hoversel :
    sig
      val selected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val dismissed : Evas.obj -> (Evas.obj -> unit) -> unit
      val expanded : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val repeated : Evas.obj -> (Evas.obj -> unit) -> unit
      val pressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val unpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Multibuttonentry :
    sig
      val item_selected : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_added : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_deleted : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_longpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val expanded : Evas.obj -> (Evas.obj -> unit) -> unit
      val contracted : Evas.obj -> (Evas.obj -> unit) -> unit
      val expand_state_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Naviframe :
    sig
      val transition_finished : Evas.obj -> (Evas.obj -> unit) -> unit
      val title_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Popup :
    sig
      val timeout : Evas.obj -> (Evas.obj -> unit) -> unit
      val block_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Bg :
    sig
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Bubble :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Button :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val repeated : Evas.obj -> (Evas.obj -> unit) -> unit
      val pressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val unpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Calendar :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val display_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Check :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Clock :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Colorselector :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val color_item_selected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val color_item_longpressed :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Conformant :
    sig
      val virtualkeypad_state_on : Evas.obj -> (Evas.obj -> unit) -> unit
      val virtualkeypad_state_off : Evas.obj -> (Evas.obj -> unit) -> unit
      val clipboard_state_on : Evas.obj -> (Evas.obj -> unit) -> unit
      val clipboard_state_off : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Datetime :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Dayselector :
    sig
      val dayselector_changed :
        Evas.obj -> (Evas.obj -> Elm_dayselector.day -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Diskselector :
    sig
      val selected : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Entry :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val changed_user : Evas.obj -> (Evas.obj -> unit) -> unit
      val activated : Evas.obj -> (Evas.obj -> unit) -> unit
      val aborted : Evas.obj -> (Evas.obj -> unit) -> unit
      val press : Evas.obj -> (Evas.obj -> unit) -> unit
      val longpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked_double : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked_triple : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_paste : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_copy : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_cut : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val selection_cleared : Evas.obj -> (Evas.obj -> unit) -> unit
      val cursor_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val cursor_changed_manual : Evas.obj -> (Evas.obj -> unit) -> unit
      val anchor_clicked :
        Evas.obj -> (Evas.obj -> Elm_entry.anchor_info -> unit) -> unit
      val anchor_in :
        Evas.obj -> (Evas.obj -> Elm_entry.anchor_info -> unit) -> unit
      val anchor_out :
        Evas.obj -> (Evas.obj -> Elm_entry.anchor_info -> unit) -> unit
      val anchor_up :
        Evas.obj -> (Evas.obj -> Elm_entry.anchor_info -> unit) -> unit
      val anchor_down :
        Evas.obj -> (Evas.obj -> Elm_entry.anchor_info -> unit) -> unit
      val preedit_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val text_set_done : Evas.obj -> (Evas.obj -> unit) -> unit
      val undo_request : Evas.obj -> (Evas.obj -> unit) -> unit
      val rejected : Evas.obj -> (Evas.obj -> unit) -> unit
      val validate : Evas.obj -> (Evas.obj -> unit) -> unit
      val context_open : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Flip :
    sig
      val animate_begin : Evas.obj -> (Evas.obj -> unit) -> unit
      val animate_done : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Flipselector :
    sig
      val selected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val overflowed : Evas.obj -> (Evas.obj -> unit) -> unit
      val underflowed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Frame :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Gengrid :
    sig
      val activated :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val pressed : Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val released :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val clicked_double :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val clicked_right :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val longpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val selected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val unselected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val realized :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val unrealized :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_start_up : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_start_down : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_start_left : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_start_right : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_page_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_top : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_bottom : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_left : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_right : Evas.obj -> (Evas.obj -> unit) -> unit
      val moved : Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val index_update : Evas.obj -> (Evas.obj -> unit) -> unit
      val highlighted :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val unhighlighted :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_reorder_anim_start :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val item_reorder_anim_stop :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Genlist :
    sig
      val activated :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val pressed : Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val released :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val clicked_double :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val clicked_right :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val selected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val unselected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val expanded :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val contracted :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val expand_request :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val contract_request :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val realized :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val unrealized :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val drag_start_up : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_start_down : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_start_left : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_start_right : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag : Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val scroll : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_bottom : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_left : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_right : Evas.obj -> (Evas.obj -> unit) -> unit
      val multi_swipe_left : Evas.obj -> (Evas.obj -> unit) -> unit
      val multi_swipe_right : Evas.obj -> (Evas.obj -> unit) -> unit
      val multi_swipe_up : Evas.obj -> (Evas.obj -> unit) -> unit
      val multi_swipe_down : Evas.obj -> (Evas.obj -> unit) -> unit
      val multi_pinch_out : Evas.obj -> (Evas.obj -> unit) -> unit
      val multi_pinch_in : Evas.obj -> (Evas.obj -> unit) -> unit
      val swipe : Evas.obj -> (Evas.obj -> unit) -> unit
      val moved : Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val moved_after :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val moved_before :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val index_update : Evas.obj -> (Evas.obj -> unit) -> unit
      val tree_effect_finished : Evas.obj -> (Evas.obj -> unit) -> unit
      val highlighted :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val unhighlighted :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Glview :
    sig
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Hover :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val dismissed : Evas.obj -> (Evas.obj -> unit) -> unit
      val smart_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Icon :
    sig
      val thumb_done : Evas.obj -> (Evas.obj -> unit) -> unit
      val thumb_error : Evas.obj -> (Evas.obj -> unit) -> unit
      val drop : Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Image :
    sig
      val drop : Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val download_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val download_progress :
        Evas.obj -> (Evas.obj -> Elm_image.progress -> unit) -> unit
      val download_done : Evas.obj -> (Evas.obj -> unit) -> unit
      val download_error : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_open : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_ready : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_cancel : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Index :
    sig
      val changed : Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val delay_changed :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val selected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val level_up : Evas.obj -> (Evas.obj -> unit) -> unit
      val level_down : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Label :
    sig
      val slide_end : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module List :
    sig
      val activated :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val clicked_double :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val clicked_right :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val selected : Evas.obj -> (Evas.obj -> unit) -> unit
      val unselected : Evas.obj -> (Evas.obj -> unit) -> unit
      val longpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_top : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_bottom : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_left : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_right : Evas.obj -> (Evas.obj -> unit) -> unit
      val highlighted :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val unhighlighted :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Map :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked_double : Evas.obj -> (Evas.obj -> unit) -> unit
      val press : Evas.obj -> (Evas.obj -> unit) -> unit
      val longpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val zoom_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val zoom_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val zoom_change : Evas.obj -> (Evas.obj -> unit) -> unit
      val tile_load : Evas.obj -> (Evas.obj -> unit) -> unit
      val tile_loaded : Evas.obj -> (Evas.obj -> unit) -> unit
      val tile_loaded_fail : Evas.obj -> (Evas.obj -> unit) -> unit
      val route_load : Evas.obj -> (Evas.obj -> unit) -> unit
      val route_loaded : Evas.obj -> (Evas.obj -> unit) -> unit
      val route_loaded_fail : Evas.obj -> (Evas.obj -> unit) -> unit
      val name_load : Evas.obj -> (Evas.obj -> unit) -> unit
      val name_loaded : Evas.obj -> (Evas.obj -> unit) -> unit
      val name_loaded_fail : Evas.obj -> (Evas.obj -> unit) -> unit
      val overlay_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val loaded : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Menu :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val dismissed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Notify :
    sig
      val timeout : Evas.obj -> (Evas.obj -> unit) -> unit
      val block_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Panel :
    sig
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Panes :
    sig
      val press : Evas.obj -> (Evas.obj -> unit) -> unit
      val unpress : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked_double : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Photo :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val drag_end : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Photocam :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val press : Evas.obj -> (Evas.obj -> unit) -> unit
      val longpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked_double : Evas.obj -> (Evas.obj -> unit) -> unit
      val load : Evas.obj -> (Evas.obj -> unit) -> unit
      val loaded : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_detail : Evas.obj -> (Evas.obj -> unit) -> unit
      val loaded_detail : Evas.obj -> (Evas.obj -> unit) -> unit
      val zoom_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val zoom_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val zoom_change : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Plug :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val image_deleted : Evas.obj -> (Evas.obj -> unit) -> unit
      val image_resized : Evas.obj -> (Evas.obj -> int * int -> unit) -> unit
    end
  module Progressbar :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Radio :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Scroller :
    sig
      val edge_left : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_right : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_top : Evas.obj -> (Evas.obj -> unit) -> unit
      val edge_bottom : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_left : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_right : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_up : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_down : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_anim_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val vbar_drag : Evas.obj -> (Evas.obj -> unit) -> unit
      val vbar_press : Evas.obj -> (Evas.obj -> unit) -> unit
      val vbar_unpress : Evas.obj -> (Evas.obj -> unit) -> unit
      val hbar_drag : Evas.obj -> (Evas.obj -> unit) -> unit
      val hbar_press : Evas.obj -> (Evas.obj -> unit) -> unit
      val hbar_unpress : Evas.obj -> (Evas.obj -> unit) -> unit
      val scroll_page_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Segment_control :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Separator :
    sig
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Slider :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val slider_drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val slider_drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val delay_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Slideshow :
    sig
      val changed : Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val transition_end :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Spinner :
    sig
      val changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val delay_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val spinner_drag_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val spinner_drag_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Thumb :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val clicked_double : Evas.obj -> (Evas.obj -> unit) -> unit
      val press : Evas.obj -> (Evas.obj -> unit) -> unit
      val generate_start : Evas.obj -> (Evas.obj -> unit) -> unit
      val generate_stop : Evas.obj -> (Evas.obj -> unit) -> unit
      val generate_error : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_error : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Toolbar :
    sig
      val clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val longpressed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val item_unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val selected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
      val unselected :
        Evas.obj -> (Evas.obj -> Elm_object.item -> unit) -> unit
    end
  module Web :
    sig
      val download_request :
        Evas.obj -> (Evas.obj -> Elm_web.download -> unit) -> unit
      val editorclient_contents_changed :
        Evas.obj -> (Evas.obj -> unit) -> unit
      val editorclient_selection_changed :
        Evas.obj -> (Evas.obj -> unit) -> unit
      val frame_created : Evas.obj -> (Evas.obj -> Evas.obj -> unit) -> unit
      val icon_received : Evas.obj -> (Evas.obj -> unit) -> unit
      val inputmethod_changed :
        Evas.obj -> (Evas.obj -> bool -> unit) -> unit
      val js_windowobject_clear : Evas.obj -> (Evas.obj -> unit) -> unit
      val link_hover_in :
        Evas.obj -> (Evas.obj -> string * string -> unit) -> unit
      val link_hover_out : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_document_finished : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_error :
        Evas.obj -> (Evas.obj -> Elm_web.frame_load_error -> unit) -> unit
      val load_finished :
        Evas.obj ->
        (Evas.obj -> Elm_web.frame_load_error option -> unit) -> unit
      val load_newwindow_show : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_progress : Evas.obj -> (Evas.obj -> float -> unit) -> unit
      val load_provisional : Evas.obj -> (Evas.obj -> unit) -> unit
      val load_started : Evas.obj -> (Evas.obj -> unit) -> unit
      val menubar_visible_get : Evas.obj -> (Evas.obj -> bool) -> unit
      val menubar_visible_set :
        Evas.obj -> (Evas.obj -> bool -> unit) -> unit
      val popup_created :
        Evas.obj -> (Evas.obj -> Elm_web.menu -> unit) -> unit
      val popup_willdelete :
        Evas.obj -> (Evas.obj -> Elm_web.menu -> unit) -> unit
      val ready : Evas.obj -> (Evas.obj -> unit) -> unit
      val scrollbars_visible_get : Evas.obj -> (Evas.obj -> bool) -> unit
      val scrollbars_visible_set :
        Evas.obj -> (Evas.obj -> bool -> unit) -> unit
      val statusbar_text_set :
        Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val statusbar_visible_get : Evas.obj -> (Evas.obj -> bool) -> unit
      val statusbar_visible_set :
        Evas.obj -> (Evas.obj -> bool -> unit) -> unit
      val title_changed : Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val toolbars_visible_get : Evas.obj -> (Evas.obj -> bool) -> unit
      val toolbars_visible_set :
        Evas.obj -> (Evas.obj -> bool -> unit) -> unit
      val tooltip_text_set : Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val url_changed : Evas.obj -> (Evas.obj -> string -> unit) -> unit
      val view_resized : Evas.obj -> (Evas.obj -> unit) -> unit
      val windows_close_request : Evas.obj -> (Evas.obj -> unit) -> unit
      val zoom_animated_end : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Win :
    sig
      val delete_request : Evas.obj -> (Evas.obj -> unit) -> unit
      val moved : Evas.obj -> (Evas.obj -> unit) -> unit
      val withdrawn : Evas.obj -> (Evas.obj -> unit) -> unit
      val iconified : Evas.obj -> (Evas.obj -> unit) -> unit
      val normal : Evas.obj -> (Evas.obj -> unit) -> unit
      val stick : Evas.obj -> (Evas.obj -> unit) -> unit
      val unstick : Evas.obj -> (Evas.obj -> unit) -> unit
      val fullscreen : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfullscreen : Evas.obj -> (Evas.obj -> unit) -> unit
      val maximized : Evas.obj -> (Evas.obj -> unit) -> unit
      val unmaximized : Evas.obj -> (Evas.obj -> unit) -> unit
      val ioerr : Evas.obj -> (Evas.obj -> unit) -> unit
      val indicator_prop_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val rotation_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val profile_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Inwin :
    sig
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Actionslider :
    sig
      val selected : Evas.obj -> (Evas.obj -> string option -> unit) -> unit
      val pos_changed :
        Evas.obj -> (Evas.obj -> string option -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Video :
    sig
      val focused : Evas.obj -> (Evas.obj -> unit) -> unit
      val unfocused : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
  module Player :
    sig
      val forward_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val info_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val next_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val pause_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val play_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val prev_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val rewind_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val stop_clicked : Evas.obj -> (Evas.obj -> unit) -> unit
      val theme_changed : Evas.obj -> (Evas.obj -> unit) -> unit
      val language_changed : Evas.obj -> (Evas.obj -> unit) -> unit
    end
end