A policy allow :action, fn ... end rule. action is one of :create, :update, :delete. arity is 1 or 2.
allow :action, fn ... end
action
:create
:update
:delete
arity
@type action() :: :create | :update | :delete
@type t() :: %Caravela.Policy.ActionGate{ action: action(), arity: 1 | 2, entity: atom() }