"use strict";
/* tslint:disable */
/* eslint-disable */
/**
 * Montelo
 * Documentation for the Montelo 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.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.FineTuneDtoToJSON = exports.FineTuneDtoFromJSONTyped = exports.FineTuneDtoFromJSON = exports.instanceOfFineTuneDto = exports.FineTuneDtoStatusEnum = exports.FineTuneDtoProviderEnum = void 0;
/**
 * @export
 */
exports.FineTuneDtoProviderEnum = {
    Openai: 'OPENAI',
    Cohere: 'COHERE',
    Montelo: 'MONTELO'
};
/**
 * @export
 */
exports.FineTuneDtoStatusEnum = {
    Pending: 'PENDING',
    Running: 'RUNNING',
    Deploying: 'DEPLOYING',
    Completed: 'COMPLETED',
    Failed: 'FAILED',
    Cancelled: 'CANCELLED'
};
/**
 * Check if a given object implements the FineTuneDto interface.
 */
function instanceOfFineTuneDto(value) {
    let isInstance = true;
    isInstance = isInstance && "id" in value;
    isInstance = isInstance && "provider" in value;
    isInstance = isInstance && "model" in value;
    isInstance = isInstance && "status" in value;
    isInstance = isInstance && "startedAt" in value;
    isInstance = isInstance && "endedAt" in value;
    isInstance = isInstance && "metadata" in value;
    isInstance = isInstance && "datasetId" in value;
    return isInstance;
}
exports.instanceOfFineTuneDto = instanceOfFineTuneDto;
function FineTuneDtoFromJSON(json) {
    return FineTuneDtoFromJSONTyped(json, false);
}
exports.FineTuneDtoFromJSON = FineTuneDtoFromJSON;
function FineTuneDtoFromJSONTyped(json, ignoreDiscriminator) {
    if ((json === undefined) || (json === null)) {
        return json;
    }
    return {
        'id': json['id'],
        'provider': json['provider'],
        'model': json['model'],
        'status': json['status'],
        'startedAt': json['startedAt'],
        'endedAt': json['endedAt'],
        'metadata': json['metadata'],
        'datasetId': json['datasetId'],
    };
}
exports.FineTuneDtoFromJSONTyped = FineTuneDtoFromJSONTyped;
function FineTuneDtoToJSON(value) {
    if (value === undefined) {
        return undefined;
    }
    if (value === null) {
        return null;
    }
    return {
        'id': value.id,
        'provider': value.provider,
        'model': value.model,
        'status': value.status,
        'startedAt': value.startedAt,
        'endedAt': value.endedAt,
        'metadata': value.metadata,
        'datasetId': value.datasetId,
    };
}
exports.FineTuneDtoToJSON = FineTuneDtoToJSON;
