sig
  val cast : 'Gobject.obj -> Gtk.progress_bar Gtk.obj
  module P :
    sig
      val adjustment :
        ([> `progressbar ], Gtk.adjustment Gtk.obj) Gobject.property
      val orientation :
        ([> `progressbar ], GtkEnums.progress_bar_orientation)
        Gobject.property
      val activity_blocks : ([> `progressbar ], int) Gobject.property
      val activity_step : ([> `progressbar ], int) Gobject.property
      val bar_style :
        ([> `progressbar ], GtkEnums.progress_bar_style) Gobject.property
      val discrete_blocks : ([> `progressbar ], int) Gobject.property
      val fraction : ([> `progressbar ], float) Gobject.property
      val pulse_step : ([> `progressbar ], float) Gobject.property
      val text : ([> `progressbar ], string) Gobject.property
      val ellipsize :
        ([> `progressbar ], PangoEnums.ellipsize_mode) Gobject.property
    end
  val create :
    Gtk.progress_bar Gobject.param list -> Gtk.progress_bar Gtk.obj
  external pulse : [> `progressbar ] Gtk.obj -> unit
    = "ml_gtk_progress_bar_pulse"
  val make_params :
    cont:(([> `progressbar ] as 'a) Gobject.param list -> 'b) ->
    'Gobject.param list ->
    ?orientation:GtkEnums.progress_bar_orientation -> ?pulse_step:float -> 'b
end