sig
  val cast : 'Gobject.obj -> Gtk.container Gtk.obj
  module P = GtkBaseProps.Container.P
  module S = GtkBaseProps.Container.S
  external check_resize : [> `container ] Gtk.obj -> unit
    = "ml_gtk_container_check_resize"
  external add : [> `container ] Gtk.obj -> [> `widget ] Gtk.obj -> unit
    = "ml_gtk_container_add"
  external remove : [> `container ] Gtk.obj -> [> `widget ] Gtk.obj -> unit
    = "ml_gtk_container_remove"
  external forall :
    [> `container ] Gtk.obj -> f:(Gtk.widget Gtk.obj -> unit) -> unit
    = "ml_gtk_container_forall"
  external foreach :
    [> `container ] Gtk.obj -> f:(Gtk.widget Gtk.obj -> unit) -> unit
    = "ml_gtk_container_foreach"
  external set_focus_child :
    [> `container ] Gtk.obj -> [> `widget ] Gtk.optobj -> unit
    = "ml_gtk_container_set_focus_child"
  external set_focus_vadjustment :
    [> `container ] Gtk.obj -> [> `adjustment ] Gtk.optobj -> unit
    = "ml_gtk_container_set_focus_vadjustment"
  external set_focus_hadjustment :
    [> `container ] Gtk.obj -> [> `adjustment ] Gtk.optobj -> unit
    = "ml_gtk_container_set_focus_hadjustment"
  external child_set_property :
    [> `container ] Gtk.obj ->
    [> `widget ] Gtk.obj -> string -> Gobject.g_value -> unit
    = "ml_gtk_container_child_set_property"
  external child_get_property :
    [> `container ] Gtk.obj ->
    [> `widget ] Gtk.obj -> string -> Gobject.g_value -> unit
    = "ml_gtk_container_child_get_property"
  val make_params :
    cont:(([> `container | `widget ] as 'a) Gobject.param list -> 'b) ->
    'Gobject.param list ->
    ?border_width:int -> ?width:int -> ?height:int -> 'b
  val children : [> `container ] Gtk.obj -> Gtk.widget Gtk.obj list
end