campo de mangosta con el tipo de nombre

Estoy tratando de validar y guardar un perfil de Passport con esta estructura:

http://passportjs.org/guide/profile/

Este es el esquema que se me ocurrió:

// Define the schema.
schema = new mongoose.Schema({
    // The name of this user, suitable for display.
    displayName: String,
    // Each e-mail address ...
    emails: [{
        // ... with the actual email address ...
        value: String,
        // ... and the type of email address (home, work, etc.).
        type: String
    }],
    // A unique identifier for the user, as generated by the service provider.
    id: String,
    // The name ...
    name: {
        // ... with the family name of this user, or "last name" in most Western languages ...
        familyName: String,
        // ... with the given name of this user, or "first name" in most Western languages ...
        givenName: String,
        // ... and with the middle name of this user.
        middleName: String
    },
    // The provider which with the user authenticated.
    provider: String
});

El correo electrónico tiene una propiedad llamada 'tipo', que está reservada para un tipo de mangosta. ¿Cómo puedo solucionar esto?

Respuestas a la pregunta(1)

Su respuesta a la pregunta