sig   val lines_of : string -> string BatEnum.t   val write_lines : string -> string BatEnum.t -> unit   val size_of : string -> int   val size_of_big : string -> Int64.t   type permission   val default_permission : BatFile.permission   val user_read : BatFile.permission   val user_write : BatFile.permission   val user_exec : BatFile.permission   val group_read : BatFile.permission   val group_write : BatFile.permission   val group_exec : BatFile.permission   val other_read : BatFile.permission   val other_write : BatFile.permission   val other_exec : BatFile.permission   val perm : BatFile.permission list -> BatFile.permission   val unix_perm : int -> BatFile.permission   val set_permissions : string -> BatFile.permission -> unit   val chmod : string -> BatFile.permission -> unit   type open_in_flag = [ `create | `excl | `mmap | `nonblock | `text ]   val open_in :     ?mode:BatFile.open_in_flag list ->     ?perm:BatFile.permission -> string -> BatInnerIO.input   val with_file_in :     ?mode:BatFile.open_in_flag list ->     ?perm:BatFile.permission -> string -> (BatInnerIO.input -> 'a) -> 'a   type open_out_flag =       [ `append | `create | `excl | `nonblock | `text | `trunc ]   val open_out :     ?mode:BatFile.open_out_flag list ->     ?perm:BatFile.permission -> string -> unit BatInnerIO.output   val with_file_out :     ?mode:BatFile.open_out_flag list ->     ?perm:BatFile.permission ->     string -> (unit BatInnerIO.output -> 'a) -> 'a   type open_temporary_out_flag =       [ `append       | `create       | `delete_on_exit       | `excl       | `nonblock       | `text       | `trunc ]   val open_temporary_out :     ?mode:BatFile.open_temporary_out_flag list ->     ?prefix:string ->     ?suffix:string ->     ?temp_dir:string -> unit -> unit BatInnerIO.output * string   val with_temporary_out :     ?mode:BatFile.open_temporary_out_flag list ->     ?prefix:string ->     ?suffix:string ->     ?temp_dir:string -> (unit BatInnerIO.output -> string -> 'a) -> 'a end