sig
type t = Empty
type 'a parse_func = 'a -> unit -> unit
type 'a parse_opt_func = ('a -> unit -> unit) option
type 'a generate_func = 'a
val parse : t -> 'a parse_func -> 'a route
val parse_opt : t -> 'a parse_opt_func -> 'a route
val generate : t -> string list generate_func
val generate_ : string list -> t -> string list generate_func
val to_fragment : t -> string generate_func
val to_fragment_ : string -> t -> string generate_func
val empty : Sharp_router.Final.t
end