sig
  type visual_type =
      [ `DIRECT_COLOR
      | `GRAYSCALE
      | `PSEUDO_COLOR
      | `STATIC_COLOR
      | `STATIC_GRAY
      | `TRUE_COLOR ]
  val get_best :
    ?depth:int -> ?kind:Gdk.Visual.visual_type -> unit -> Gdk.visual
  val get_type : Gdk.visual -> Gdk.Visual.visual_type
  val depth : Gdk.visual -> int
end