/* tslint:disable */ /* eslint-disable */ // @ts-nocheck /** * Audius API * * The version of the OpenAPI document: 1.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { exists, mapValues } from '../runtime'; /** * * @export * @interface Event */ export interface Event { /** * * @type {string} * @memberof Event */ eventId: string; /** * * @type {string} * @memberof Event */ eventType: EventEventTypeEnum; /** * * @type {string} * @memberof Event */ userId: string; /** * * @type {string} * @memberof Event */ entityType?: EventEntityTypeEnum; /** * * @type {string} * @memberof Event */ entityId?: string; /** * * @type {string} * @memberof Event */ endDate?: string; /** * * @type {boolean} * @memberof Event */ isDeleted?: boolean; /** * * @type {string} * @memberof Event */ createdAt: string; /** * * @type {string} * @memberof Event */ updatedAt: string; /** * * @type {object} * @memberof Event */ eventData: object; } /** * @export */ export const EventEventTypeEnum = { RemixContest: 'remix_contest', LiveEvent: 'live_event', NewRelease: 'new_release' } as const; export type EventEventTypeEnum = typeof EventEventTypeEnum[keyof typeof EventEventTypeEnum]; /** * @export */ export const EventEntityTypeEnum = { Track: 'track', Collection: 'collection', User: 'user' } as const; export type EventEntityTypeEnum = typeof EventEntityTypeEnum[keyof typeof EventEntityTypeEnum]; /** * Check if a given object implements the Event interface. */ export function instanceOfEvent(value: object): value is Event { let isInstance = true; isInstance = isInstance && "eventId" in value && value["eventId"] !== undefined; isInstance = isInstance && "eventType" in value && value["eventType"] !== undefined; isInstance = isInstance && "userId" in value && value["userId"] !== undefined; isInstance = isInstance && "createdAt" in value && value["createdAt"] !== undefined; isInstance = isInstance && "updatedAt" in value && value["updatedAt"] !== undefined; isInstance = isInstance && "eventData" in value && value["eventData"] !== undefined; return isInstance; } export function EventFromJSON(json: any): Event { return EventFromJSONTyped(json, false); } export function EventFromJSONTyped(json: any, ignoreDiscriminator: boolean): Event { if ((json === undefined) || (json === null)) { return json; } return { 'eventId': json['event_id'], 'eventType': json['event_type'], 'userId': json['user_id'], 'entityType': !exists(json, 'entity_type') ? undefined : json['entity_type'], 'entityId': !exists(json, 'entity_id') ? undefined : json['entity_id'], 'endDate': !exists(json, 'end_date') ? undefined : json['end_date'], 'isDeleted': !exists(json, 'is_deleted') ? undefined : json['is_deleted'], 'createdAt': json['created_at'], 'updatedAt': json['updated_at'], 'eventData': json['event_data'], }; } export function EventToJSON(value?: Event | null): any { if (value === undefined) { return undefined; } if (value === null) { return null; } return { 'event_id': value.eventId, 'event_type': value.eventType, 'user_id': value.userId, 'entity_type': value.entityType, 'entity_id': value.entityId, 'end_date': value.endDate, 'is_deleted': value.isDeleted, 'created_at': value.createdAt, 'updated_at': value.updatedAt, 'event_data': value.eventData, }; }