sig
  type t
  val load :
    string ->
    (t, [> `Database of [> `Load of string ] * string ])
    Pvem_lwt_unix.Deferred_result.t
  val close :
    t ->
    (unit, [> `Database of [> `Close ] * string ])
    Pvem_lwt_unix.Deferred_result.t
  val get :
    ?collection:string ->
    t ->
    key:string ->
    (string option,
     [> `Database of [> `Get of Trakeva.Key_in_collection.t ] * string ])
    Pvem_lwt_unix.Deferred_result.t
  val get_all :
    t ->
    collection:string ->
    (string list, [> `Database of [> `Get_all of string ] * string ])
    Pvem_lwt_unix.Deferred_result.t
  val iterator :
    t ->
    collection:string ->
    unit ->
    (string option, [> `Database of [> `Iter of string ] * string ])
    Pvem_lwt_unix.Deferred_result.t
  val act :
    t ->
    action:Trakeva.Action.t ->
    ([ `Done | `Not_done ],
     [> `Database of [> `Act of Trakeva.Action.t ] * string ])
    Pvem_lwt_unix.Deferred_result.t
  val debug : bool Pervasives.ref
  val table_name : t -> string
end