/* tslint:disable */
/* eslint-disable */
/**
 * Synapse REST API
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: v1
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */
import { AccessorChangeFromJSON, AccessorChangeToJSON, } from './AccessorChange';
import { ResearchProjectFromJSON, ResearchProjectToJSON, } from './ResearchProject';
/**
 * @export
 */
export const DataaccessSubmissionStateEnum = {
    SUBMITTED: 'SUBMITTED',
    APPROVED: 'APPROVED',
    REJECTED: 'REJECTED',
    CANCELLED: 'CANCELLED'
};
/**
 * @export
 */
export const DataaccessSubmissionSubjectTypeEnum = {
    ENTITY: 'ENTITY',
    EVALUATION: 'EVALUATION',
    TEAM: 'TEAM'
};
/**
 * Check if a given object implements the DataaccessSubmission interface.
 */
export function instanceOfDataaccessSubmission(value) {
    return true;
}
export function DataaccessSubmissionFromJSON(json) {
    return DataaccessSubmissionFromJSONTyped(json, false);
}
export function DataaccessSubmissionFromJSONTyped(json, ignoreDiscriminator) {
    if (json == null) {
        return json;
    }
    return {
        'id': json['id'] == null ? undefined : json['id'],
        'accessRequirementId': json['accessRequirementId'] == null ? undefined : json['accessRequirementId'],
        'accessRequirementVersion': json['accessRequirementVersion'] == null ? undefined : json['accessRequirementVersion'],
        'requestId': json['requestId'] == null ? undefined : json['requestId'],
        'ducFileHandleId': json['ducFileHandleId'] == null ? undefined : json['ducFileHandleId'],
        'irbFileHandleId': json['irbFileHandleId'] == null ? undefined : json['irbFileHandleId'],
        'attachments': json['attachments'] == null ? undefined : json['attachments'],
        'accessorChanges': json['accessorChanges'] == null ? undefined : (json['accessorChanges'].map(AccessorChangeFromJSON)),
        'researchProjectSnapshot': json['researchProjectSnapshot'] == null ? undefined : ResearchProjectFromJSON(json['researchProjectSnapshot']),
        'isRenewalSubmission': json['isRenewalSubmission'] == null ? undefined : json['isRenewalSubmission'],
        'publication': json['publication'] == null ? undefined : json['publication'],
        'summaryOfUse': json['summaryOfUse'] == null ? undefined : json['summaryOfUse'],
        'submittedOn': json['submittedOn'] == null ? undefined : json['submittedOn'],
        'modifiedOn': json['modifiedOn'] == null ? undefined : json['modifiedOn'],
        'submittedBy': json['submittedBy'] == null ? undefined : json['submittedBy'],
        'modifiedBy': json['modifiedBy'] == null ? undefined : json['modifiedBy'],
        'state': json['state'] == null ? undefined : json['state'],
        'rejectedReason': json['rejectedReason'] == null ? undefined : json['rejectedReason'],
        'etag': json['etag'] == null ? undefined : json['etag'],
        'subjectId': json['subjectId'] == null ? undefined : json['subjectId'],
        'subjectType': json['subjectType'] == null ? undefined : json['subjectType'],
    };
}
export function DataaccessSubmissionToJSON(json) {
    return DataaccessSubmissionToJSONTyped(json, false);
}
export function DataaccessSubmissionToJSONTyped(value, ignoreDiscriminator = false) {
    if (value == null) {
        return value;
    }
    return {
        'id': value['id'],
        'accessRequirementId': value['accessRequirementId'],
        'accessRequirementVersion': value['accessRequirementVersion'],
        'requestId': value['requestId'],
        'ducFileHandleId': value['ducFileHandleId'],
        'irbFileHandleId': value['irbFileHandleId'],
        'attachments': value['attachments'],
        'accessorChanges': value['accessorChanges'] == null ? undefined : (value['accessorChanges'].map(AccessorChangeToJSON)),
        'researchProjectSnapshot': ResearchProjectToJSON(value['researchProjectSnapshot']),
        'isRenewalSubmission': value['isRenewalSubmission'],
        'publication': value['publication'],
        'summaryOfUse': value['summaryOfUse'],
        'submittedOn': value['submittedOn'],
        'modifiedOn': value['modifiedOn'],
        'submittedBy': value['submittedBy'],
        'modifiedBy': value['modifiedBy'],
        'state': value['state'],
        'rejectedReason': value['rejectedReason'],
        'etag': value['etag'],
        'subjectId': value['subjectId'],
        'subjectType': value['subjectType'],
    };
}
//# sourceMappingURL=DataaccessSubmission.js.map