The whitelist is configured using [μScript](https://git.frohnmeyer-wds.de/Johannes/java-commons/src/branch/master/muscript), but you don't have to be good at programming to use this mod.
A simple config for Better-Whitelist could look as follows (please note that you'd probably have to add exceptions for client-side mods with optional server-side components when using this):
-`resourcePacks` (client only): a list of resource packs, each of which has a `name`, `displayName` and `description`
-`println('message')` (both): a function for debugging
-`mods` (both): a list of loaded mods with the same fields as the result of `mod()`
-`mod('id')` (both): information about a specific mod (or null): `id`, `name`, `description`, `authors` (list of strings), `contributors` (list of strings), `version`, `environment` (either `client`, `server` or `*`), `license`, `contact` (same as FMJ), `depends` (list of strings)
-`assert(bool)` (server): assert that something is true and kick the player if it's not (optionally, add a message as the second parameter)
-`challenge({->closure}, additional arguments...)` (server): send a closure to the client to be executed there. The arguments may contain other closures.
-`user` (server): information about the user trying to log in, namely their `id` and `name`