/* 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 { mapValues } from '../runtime';
import { OIDCClaimsRequestDetailsFromJSON, OIDCClaimsRequestDetailsToJSON, } from './OIDCClaimsRequestDetails';
/**
 * @export
 */
export const AccessTokenGenerationRequestScopeEnum = {
    openid: 'openid',
    email: 'email',
    profile: 'profile',
    ga4gh_passport_v1: 'ga4gh_passport_v1',
    view: 'view',
    download: 'download',
    modify: 'modify',
    authorize: 'authorize',
    offline_access: 'offline_access'
};
/**
 * Check if a given object implements the AccessTokenGenerationRequest interface.
 */
export function instanceOfAccessTokenGenerationRequest(value) {
    return true;
}
export function AccessTokenGenerationRequestFromJSON(json) {
    return AccessTokenGenerationRequestFromJSONTyped(json, false);
}
export function AccessTokenGenerationRequestFromJSONTyped(json, ignoreDiscriminator) {
    if (json == null) {
        return json;
    }
    return {
        'scope': json['scope'] == null ? undefined : json['scope'],
        'userInfoClaims': json['userInfoClaims'] == null ? undefined : (mapValues(json['userInfoClaims'], OIDCClaimsRequestDetailsFromJSON)),
        'name': json['name'] == null ? undefined : json['name'],
    };
}
export function AccessTokenGenerationRequestToJSON(json) {
    return AccessTokenGenerationRequestToJSONTyped(json, false);
}
export function AccessTokenGenerationRequestToJSONTyped(value, ignoreDiscriminator = false) {
    if (value == null) {
        return value;
    }
    return {
        'scope': value['scope'],
        'userInfoClaims': value['userInfoClaims'] == null ? undefined : (mapValues(value['userInfoClaims'], OIDCClaimsRequestDetailsToJSON)),
        'name': value['name'],
    };
}
//# sourceMappingURL=AccessTokenGenerationRequest.js.map