sig
  external create : unit -> Gtk.file_filter Gtk.obj
    = "ml_gtk_file_filter_new"
  external set_name : [> Gtk.file_filter ] Gtk.obj -> string -> unit
    = "ml_gtk_file_filter_set_name"
  external get_name : [> Gtk.file_filter ] Gtk.obj -> string
    = "ml_gtk_file_filter_get_name"
  external add_mime_type : [> Gtk.file_filter ] Gtk.obj -> string -> unit
    = "ml_gtk_file_filter_add_mime_type"
  external add_pattern : [> Gtk.file_filter ] Gtk.obj -> string -> unit
    = "ml_gtk_file_filter_add_pattern"
  external add_custom :
    [> Gtk.file_filter ] Gtk.obj ->
    GtkEnums.file_filter_flags list ->
    callback:((GtkEnums.file_filter_flags * string) list -> bool) -> unit
    = "ml_gtk_file_filter_add_custom"
end