sig   val exists : Fpath.t -> (bool, [> Rresult.R.msg ]) Bos.OS.result   val must_exist : Fpath.t -> (Fpath.t, [> Rresult.R.msg ]) Bos.OS.result   val create :     ?path:bool ->     ?mode:int -> Fpath.t -> (bool, [> Rresult.R.msg ]) Bos.OS.result   val delete :     ?must_exist:bool ->     ?recurse:bool -> Fpath.t -> (unit, [> Rresult.R.msg ]) Bos.OS.result   val contents :     ?dotfiles:bool ->     ?rel:bool -> Fpath.t -> (Fpath.t list, [> Rresult.R.msg ]) Bos.OS.result   val fold_contents :     ?err:'Bos.OS.Path.fold_error ->     ?dotfiles:bool ->     ?elements:Bos.OS.Path.elements ->     ?traverse:Bos.OS.Path.traverse ->     (Fpath.t -> '-> 'a) ->     '-> Fpath.t -> ('a, [> Rresult.R.msg ]) Bos.OS.result   val user : unit -> (Fpath.t, [> Rresult.R.msg ]) Bos.OS.result   val current : unit -> (Fpath.t, [> Rresult.R.msg ]) Bos.OS.result   val set_current : Fpath.t -> (unit, [> Rresult.R.msg ]) Bos.OS.result   val with_current :     Fpath.t -> ('-> 'b) -> '-> ('b, [> Rresult.R.msg ]) Bos.OS.result   type tmp_name_pat =       (string -> string, Format.formatter, unit, string) Pervasives.format4   val tmp :     ?mode:int ->     ?dir:Fpath.t ->     Bos.OS.Dir.tmp_name_pat -> (Fpath.t, [> Rresult.R.msg ]) Bos.OS.result   val with_tmp :     ?mode:int ->     ?dir:Fpath.t ->     Bos.OS.Dir.tmp_name_pat ->     (Fpath.t -> '-> 'b) -> '-> ('b, [> Rresult.R.msg ]) Bos.OS.result   val default_tmp : unit -> Fpath.t   val set_default_tmp : Fpath.t -> unit end