# structures/Employee.js

    const User = require("./User.js");

    /**
     * Represents an employee for a school on SMHW.
     */
    class Employee {
        /**
         * Instantiate an Employee object.
         * @param {Client} client The client that is instantiating the object.
         * @param {Object} response The data for the object.
         */
        constructor(client, response) {
            /**
             * The client that instantiated this object.
             * @type {Client}
             * @private
             */
            this._client = client;

            /**
             * The type of employee.
             * @type {String}
             */
            this.employee_type = response.employee_type;

            /**
             * The forename of the employee.
             * @type {String}
             */
            this.forename = response.forename;

            /**
             * The ID of the employee.
             * @type {Number}
             */
            this.id = response.id;

            /**
             * The ID of the school that the employee works for.
             * @type {Number}
             */
            this.school_id = response.school_id;

            /**
             * The surname of the employee.
             * @type {String}
             */
            this.surname = response.surname;

            /**
             * The title of the employee.
             * @type {String}
             */
            this.title = response.title;
        }

        /**
         * Get the user object of the employee.
         * @returns {Promise<User>}
         */
        getUser() {
            return this._client.getUser(this.id);
        }

        /**
         * Get the school that the employee works for.
         * @returns {Promise<School>}
         */
        getSchool() {
            return this._client.getSchool(this.school_id);
        }
    }

    module.exports = Employee;