sig
  module File : sig type t end
  val serve :
    auth:(Import.Socket.Address.Inet.t -> bool) ->
    port:int -> Tcp.Server.inet Import.Deferred.t
  val open_file :
    ?append:bool ->
    ?dos_format:bool -> string -> Tcp_file.Server.File.t Import.Deferred.t
  val serve_existing_static_file : string -> unit Import.Deferred.t
  val stop_serving : Tcp_file.Server.File.t -> unit
  val close :
    ?stop_serving:bool -> Tcp_file.Server.File.t -> unit Import.Deferred.t
  val write_message : Tcp_file.Server.File.t -> string -> unit
  val schedule_message :
    Tcp_file.Server.File.t -> Core.Std.Bigstring.t -> unit
  val write_sexp : Tcp_file.Server.File.t -> Core.Std.Sexp.t -> unit
  val flushed : Tcp_file.Server.File.t -> unit Import.Deferred.t
  val with_file :
    ?append:bool ->
    string ->
    f:(Tcp_file.Server.File.t -> 'Import.Deferred.t) ->
    'Import.Deferred.t
  val writer_monitor :
    Tcp_file.Server.File.t ->
    (Import.Monitor.t, [ `This_is_a_static_file ]) Core.Std.Result.t
  val debug_snapshot : unit -> Core.Std.Sexp.t
end