-type kind() :: password | oauth | guest.
-type mode() :: open | oauth_only | closed.
-spec check(kind()) -> ok | {deny, binary()}.
-spec log_mode() -> ok.
-spec mode() -> mode().