function ($c) { return ( new Taxus( $c->get(PermissionGrantInterface::class) ) )->add( [ new Privilege("dev", "Is a developper of this application."), "is_dev" ], [ new Privilege("admin", "Can manage mostly everything from this application."), "is_admin" ], [ new Privilege("user", "Is an authenticated user."), "is_user" ], [ new Privilege("anonymous", "Is an anonymous (unauthenticated) user."), "is_anonymous" ], ); }, PermissionGrantInterface::class => create(PermissionGrantInterface::class)->constructor(get(ServerRequestInterface::class), get(Session::class)), ];