Em resposta ao seu último comentário.
Você está certo de que null é um tipo de valor, mas os tipos null são uma maneira de dizer ao interpretador que ele sem valor . portanto, você deve definir os valores para qualquer valor não nulo ou obterá o erro. no seu caso, defina esses valores para Strings vazias. ou seja
var newUser = new user({
/* We will set the username, email and password field to null because they will be set later. */
username: '',
passwordHash: '',
email: '',
admin: false
}, { _id: false });