`sig
type 'a t
type store
val open_store : string -> Ocsipersist.store Lwt.t
val make_persistent :
store:Ocsipersist.store ->
name:string -> default:'a -> 'a Ocsipersist.t Lwt.t
val make_persistent_lazy :
store:Ocsipersist.store ->
name:string -> default:(unit -> 'a) -> 'a Ocsipersist.t Lwt.t
val make_persistent_lazy_lwt :
store:Ocsipersist.store ->
name:string -> default:(unit -> 'a Lwt.t) -> 'a Ocsipersist.t Lwt.t
val get : 'a Ocsipersist.t -> 'a Lwt.t
val set : 'a Ocsipersist.t -> 'a -> unit Lwt.t
type 'value table
val table_name : 'value Ocsipersist.table -> string Lwt.t
val open_table : string -> 'value Ocsipersist.table Lwt.t
val find : 'value Ocsipersist.table -> string -> 'value Lwt.t
val add : 'value Ocsipersist.table -> string -> 'value -> unit Lwt.t
val replace_if_exists :
'value Ocsipersist.table -> string -> 'value -> unit Lwt.t
val remove : 'value Ocsipersist.table -> string -> unit Lwt.t
val length : 'value Ocsipersist.table -> int Lwt.t
val iter_step :
(string -> 'a -> unit Lwt.t) -> 'a Ocsipersist.table -> unit Lwt.t
val iter_table :
(string -> 'a -> unit Lwt.t) -> 'a Ocsipersist.table -> unit Lwt.t
val fold_step :
(string -> 'a -> 'b -> 'b Lwt.t) ->
'a Ocsipersist.table -> 'b -> 'b Lwt.t
val fold_table :
(string -> 'a -> 'b -> 'b Lwt.t) ->
'a Ocsipersist.table -> 'b -> 'b Lwt.t
val iter_block :
(string -> 'a -> unit) -> 'a Ocsipersist.table -> unit Lwt.t
end`