sig
  exception Unknown_zone of string
  exception Invalid_file_format of string
  val init : unit -> unit
  module Zone :
    sig
      type t = TZ.Zone.t
      val sexp_of_t : t -> Sexplib.Sexp.t
      val t_of_sexp : Sexplib.Sexp.t -> t
      val to_string_hum : t -> string
      val abbreviation : t -> Time.t -> string
      val of_gmt_offset : int -> t
      val find : string -> t option
      val find_exn : string -> t
    end
  module Date_time :
    sig
      type t = Time.Date.t * Time.Ofday.t
      val of_time : Time.t -> Zone.t -> t
      val to_time : t -> Zone.t -> Time.t
      val convert : from_tz:Zone.t -> to_tz:Zone.t -> t -> t
    end
  val initialized_zones : unit -> (string * Zone.t) list
  val string_of_time : Zone.t -> Time.t -> string
  val time_of_string : Zone.t -> string -> Time.t
  val machine_zone : unit -> (string * Zone.t) option
  val machine_zone_exn : unit -> string * Zone.t
end