/* tslint:disable */ /* eslint-disable */ /** * Tribufu API * API to access Tribufu services. * * The version of the OpenAPI document: 1.4.2 * Contact: contact@tribufu.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { mapValues } from '../runtime'; import type { UserType } from './UserType'; import { UserTypeFromJSON, UserTypeFromJSONTyped, UserTypeToJSON, UserTypeToJSONTyped, } from './UserType'; /** * * @export * @interface UserInfo */ export interface UserInfo { /** * * @type {string} * @memberof UserInfo */ id?: string; /** * * @type {string} * @memberof UserInfo */ name: string | null; /** * * @type {string} * @memberof UserInfo */ displayName?: string | null; /** * * @type {string} * @memberof UserInfo */ emailAddress?: string | null; /** * * @type {boolean} * @memberof UserInfo */ emailVerified?: boolean; /** * * @type {UserType} * @memberof UserInfo */ type?: UserType; /** * * @type {string} * @memberof UserInfo */ language?: string | null; /** * * @type {string} * @memberof UserInfo */ timezone?: string | null; /** * * @type {string} * @memberof UserInfo */ currency?: string | null; /** * * @type {string} * @memberof UserInfo */ photoUrl?: string | null; /** * * @type {Array} * @memberof UserInfo */ permissions?: Array | null; /** * * @type {Date} * @memberof UserInfo */ createdAt?: Date; /** * * @type {Date} * @memberof UserInfo */ updatedAt?: Date | null; } /** * Check if a given object implements the UserInfo interface. */ export function instanceOfUserInfo(value: object): value is UserInfo { if (!('name' in value) || value['name'] === undefined) return false; return true; } export function UserInfoFromJSON(json: any): UserInfo { return UserInfoFromJSONTyped(json, false); } export function UserInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): UserInfo { if (json == null) { return json; } return { 'id': json['id'] == null ? undefined : json['id'], 'name': json['name'], 'displayName': json['display_name'] == null ? undefined : json['display_name'], 'emailAddress': json['email_address'] == null ? undefined : json['email_address'], 'emailVerified': json['email_verified'] == null ? undefined : json['email_verified'], 'type': json['type'] == null ? undefined : UserTypeFromJSON(json['type']), 'language': json['language'] == null ? undefined : json['language'], 'timezone': json['timezone'] == null ? undefined : json['timezone'], 'currency': json['currency'] == null ? undefined : json['currency'], 'photoUrl': json['photo_url'] == null ? undefined : json['photo_url'], 'permissions': json['permissions'] == null ? undefined : json['permissions'], 'createdAt': json['created_at'] == null ? undefined : (new Date(json['created_at'])), 'updatedAt': json['updated_at'] == null ? undefined : (new Date(json['updated_at'])), }; } export function UserInfoToJSON(json: any): UserInfo { return UserInfoToJSONTyped(json, false); } export function UserInfoToJSONTyped(value?: UserInfo | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'id': value['id'], 'name': value['name'], 'display_name': value['displayName'], 'email_address': value['emailAddress'], 'email_verified': value['emailVerified'], 'type': UserTypeToJSON(value['type']), 'language': value['language'], 'timezone': value['timezone'], 'currency': value['currency'], 'photo_url': value['photoUrl'], 'permissions': value['permissions'], 'created_at': value['createdAt'] == null ? undefined : ((value['createdAt']).toISOString()), 'updated_at': value['updatedAt'] == null ? undefined : ((value['updatedAt'] as any).toISOString()), }; }