sig
  val cast : 'Gobject.obj -> Gtk.grid Gtk.obj
  module P :
    sig
      val baseline_row : ([> `grid ], int) Gobject.property
      val row_homogeneous : ([> `grid ], bool) Gobject.property
      val column_homogeneous : ([> `grid ], bool) Gobject.property
      val row_spacing : ([> `grid ], int) Gobject.property
      val column_spacing : ([> `grid ], int) Gobject.property
    end
  val create : Gtk.grid Gobject.param list -> Gtk.grid Gtk.obj
  external attach :
    [> `grid ] Gtk.obj ->
    [> `widget ] Gtk.obj ->
    left:int -> top:int -> width:int -> height:int -> unit
    = "ml_gtk_grid_attach_bc" "ml_gtk_grid_attach"
  val make_params :
    cont:(([> `grid ] as 'a) Gobject.param list -> 'b) ->
    'Gobject.param list ->
    ?baseline_row:int ->
    ?row_homogeneous:bool ->
    ?col_homogeneous:bool -> ?row_spacings:int -> ?col_spacings:int -> 'b
end