text: /**
   * Copyright 2018 The Subscribe with Google Authors. All Rights Reserved.
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *      http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS-IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   */
  
  /**
   */
  export class UserData {
    /**
     * @param {string} idToken
     * @param {!Object} data
     */
    constructor(idToken, data) {
      /** @const {string} */
      this.idToken = idToken;
      /** @const {!Object} */
      this.data = data;
  
      /** @const {string} */
      this.id = data['sub'];
      /** @const {string} */
      this.email = data['email'];
      /** @const {boolean} */
      this.emailVerified = data['email_verified'];
      /** @const {string} */
      this.name = data['name'];
      /** @const {string} */
      this.givenName = data['given_name'];
      /** @const {string} */
      this.familyName = data['family_name'];
      /** @const {string} */
      this.pictureUrl = data['picture'];
    }
  
    /**
     * @return {!UserData}
     */
    clone() {
      return new UserData(this.idToken, this.data);
    }
  
    /**
     * @return {!Object}
     */
    json() {
      return {
        'id': this.id,
        'email': this.email,
        'emailVerified': this.emailVerified,
        'name': this.name,
        'givenName': this.givenName,
        'familyName': this.familyName,
        'pictureUrl': this.pictureUrl,
      };
    }
  }
  