Parrhesia.Storage.Admin behaviour (parrhesia v0.12.0)

Copy Markdown

Storage callbacks used by relay management endpoints (NIP-86 backing).

Summary

Types

audit_entry()

@type audit_entry() :: map()

context()

@type context() :: map()

method()

@type method() :: atom() | binary()

params()

@type params() :: map()

reason()

@type reason() :: term()

result()

@type result() :: map() | list() | term()

Callbacks

append_audit_log(context, audit_entry)

@callback append_audit_log(context(), audit_entry()) :: :ok | {:error, reason()}

execute(context, method, params)

@callback execute(context(), method(), params()) :: {:ok, result()} | {:error, reason()}

list_audit_logs(context, keyword)

@callback list_audit_logs(
  context(),
  keyword()
) :: {:ok, [audit_entry()]} | {:error, reason()}