Module Mina_base.Permissions

module Auth_required : sig ... end
module Poly : sig ... end
module Stable : sig ... end
val to_yojson : t -> Yojson.Safe.t
val of_yojson : Yojson.Safe.t -> t Ppx_deriving_yojson_runtime.error_or
include Ppx_sexp_conv_lib.Sexpable.S with type t := t
val t_of_sexp : Sexplib0__.Sexp.t -> t
val sexp_of_t : t -> Sexplib0__.Sexp.t
val equal : t -> t -> bool
val compare : t -> t -> int
val hash_fold_t : Ppx_hash_lib.Std.Hash.state -> t -> Ppx_hash_lib.Std.Hash.state
val hash : t -> Ppx_hash_lib.Std.Hash.hash_value
val gen : auth_tag:Control.Tag.t -> t Core_kernel.Quickcheck.Generator.t

if auth_tag is provided, the generated permissions will be compatible with the corresponding authorization

module Checked : sig ... end
val user_default : t
val empty : t
val deriver : < contramap : ( Auth_required.t Poly.t -> Auth_required.t Poly.t ) Core_kernel.ref ; graphql_arg : ( unit -> Auth_required.t Poly.t Fields_derivers_graphql.Schema.Arg.arg_typ ) Core_kernel.ref ; graphql_arg_accumulator : Auth_required.t Poly.t Fields_derivers_zkapps.Graphql.Args.Acc.T.t Core_kernel.ref ; graphql_creator : ( 'a -> Auth_required.t Poly.t ) Core_kernel.ref ; graphql_fields : Auth_required.t Poly.t Fields_derivers_zkapps.Graphql.Fields.Input.T.t Core_kernel.ref ; graphql_fields_accumulator : Auth_required.t Poly.t Fields_derivers_zkapps.Graphql.Fields.Accumulator.T.t list Core_kernel.ref ; graphql_query : string option Core_kernel.ref ; graphql_query_accumulator : (string * string option) option list Core_kernel.ref ; map : ( Auth_required.t Poly.t -> Auth_required.t Poly.t ) Core_kernel.ref ; nullable_graphql_arg : ( unit -> 'b Fields_derivers_graphql.Schema.Arg.arg_typ ) Core_kernel.ref ; nullable_graphql_fields : Auth_required.t Poly.t option Fields_derivers_zkapps.Graphql.Fields.Input.T.t Core_kernel.ref ; of_json : ( [> `Assoc of (string * Yojson.Safe.t) list ] -> Auth_required.t Poly.t ) Core_kernel.ref ; of_json_creator : Yojson.Safe.t Core_kernel.String.Map.t Core_kernel.ref ; to_json : ( Auth_required.t Poly.t -> [> `Assoc of (string * Yojson.Safe.t) list ] ) Core_kernel.ref ; to_json_accumulator : (string * ( Auth_required.t Poly.t -> Yojson.Safe.t )) option list Core_kernel.ref ; skip : bool Core_kernel.ref ; js_layout : Yojson.Safe.t Core_kernel.ref ; js_layout_accumulator : Fields_derivers_zkapps.Js_layout.Accumulator.field option list Core_kernel.ref.. > as 'a -> 'a