module Quota: sig .. end
type Core.Int63.t 
type Core.Int63.t 
val bytes : Core.Int63.t -> bytes
val inodes : Core.Int63.t -> inodes
type 'units limit = {
|    | soft :'units option; | 
|    | hard :'units option; | 
|    | grace :Core.Time.t option; | 
}
type 'units usage = private 'units 
val query : [ `Group | `User ] ->
       id:int ->
       path:string ->
       (bytes limit *
        bytes usage *
        inodes limit *
        inodes usage)
       Core.Std.Or_error.t
val set : [ `Group | `User ] ->
       id:int ->
       path:string ->
       bytes limit ->
       inodes limit ->
       unit Core.Std.Or_error.t
val bytes_of_sexp : Sexplib.Sexp.t -> bytes
val sexp_of_bytes : bytes -> Sexplib.Sexp.t
val inodes_of_sexp : Sexplib.Sexp.t -> inodes
val sexp_of_inodes : inodes -> Sexplib.Sexp.t
val limit_of_sexp : (Sexplib.Sexp.t -> 'units) ->
       Sexplib.Sexp.t -> 'units limit
val sexp_of_limit : ('units -> Sexplib.Sexp.t) ->
       'units limit -> Sexplib.Sexp.t