sig
  type t
  val close : t -> Int_result.unit
  val close_noerr : t -> unit
  val close_wait : t -> unit Lwt.t
  val is_active : t -> bool
  val ref' : t -> unit
  val unref : t -> unit
  val has_ref : t -> bool
  val to_handle : Uwt.Fs_event.t -> Uwt.Handle.t
  type event = Rename | Change
  type flags = Entry | Stat | Recursive
  type cb =
      Uwt.Fs_event.t -> (string * Uwt.Fs_event.event list) uv_result -> unit
  val start :
    string ->
    Uwt.Fs_event.flags list -> cb:Uwt.Fs_event.cb -> Uwt.Fs_event.t uv_result
  val start_exn :
    string -> Uwt.Fs_event.flags list -> cb:Uwt.Fs_event.cb -> Uwt.Fs_event.t
end