/* tslint:disable */
/* eslint-disable */
/**
 * elkar-app
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 0.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.
 */


/**
 * Task state according to A2A specification
 * @export
 */
export const TaskState = {
    Submitted: 'submitted',
    Working: 'working',
    InputRequired: 'input-required',
    Completed: 'completed',
    Canceled: 'canceled',
    Failed: 'failed',
    Unknown: 'unknown'
} as const;
export type TaskState = typeof TaskState[keyof typeof TaskState];


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

export function TaskStateFromJSON(json: any): TaskState {
    return TaskStateFromJSONTyped(json, false);
}

export function TaskStateFromJSONTyped(json: any, ignoreDiscriminator: boolean): TaskState {
    return json as TaskState;
}

export function TaskStateToJSON(value?: TaskState | null): any {
    return value as any;
}

export function TaskStateToJSONTyped(value: any, ignoreDiscriminator: boolean): TaskState {
    return value as TaskState;
}

