/* tslint:disable */
/* eslint-disable */
/**
 * HumanLayer Daemon REST API
 * REST API for HumanLayer daemon operations, providing session management, approval workflows, and real-time event streaming capabilities.
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


/**
 * Type of system event
 * @export
 */
export const EventType = {
    NewApproval: 'new_approval',
    ApprovalResolved: 'approval_resolved',
    SessionStatusChanged: 'session_status_changed',
    ConversationUpdated: 'conversation_updated',
    SessionSettingsChanged: 'session_settings_changed'
} as const;
export type EventType = typeof EventType[keyof typeof EventType];


export function instanceOfEventType(value: any): boolean {
    for (const key in EventType) {
        if (Object.prototype.hasOwnProperty.call(EventType, key)) {
            if (EventType[key as keyof typeof EventType] === value) {
                return true;
            }
        }
    }
    return false;
}

export function EventTypeFromJSON(json: any): EventType {
    return EventTypeFromJSONTyped(json, false);
}

export function EventTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): EventType {
    return json as EventType;
}

export function EventTypeToJSON(value?: EventType | null): any {
    return value as any;
}

export function EventTypeToJSONTyped(value: any, ignoreDiscriminator: boolean): EventType {
    return value as EventType;
}
