sig
  val cast : 'Gobject.obj -> Gtk.message_dialog Gtk.obj
  module P :
    sig
      val buttons :
        ([> `messagedialog ], GtkEnums.buttons_type) Gobject.property
      val message_type :
        ([> `messagedialog ], GtkEnums.message_type) Gobject.property
      val image : ([> `messagedialog ], Gtk.widget Gtk.obj) Gobject.property
      val message_area :
        ([> `messagedialog ], Gtk.widget Gtk.obj) Gobject.property
      val secondary_text : ([> `messagedialog ], string) Gobject.property
      val secondary_use_markup : ([> `messagedialog ], bool) Gobject.property
      val text : ([> `messagedialog ], string) Gobject.property
      val use_markup : ([> `messagedialog ], bool) Gobject.property
    end
  val create :
    ?buttons:GtkEnums.buttons_type ->
    Gtk.message_dialog Gobject.param list -> Gtk.message_dialog Gtk.obj
  val make_params :
    cont:(([> `messagedialog ] as 'a) Gobject.param list -> 'b) ->
    'Gobject.param list ->
    ?message_type:GtkEnums.message_type ->
    ?text:string -> ?use_markup:bool -> 'b
end