/**
 * Identity and Access Management Service API
 * APIs for managing users, groups, compartments, and policies.
 * OpenAPI spec version: 20160918
 *
 *
 * NOTE: This class is auto generated by OracleSDKGenerator.
 * Do not edit the class manually.
 *
 * Copyright (c) 2020, 2022, Oracle and/or its affiliates.  All rights reserved.
 * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 */ import * as model from "../model" ; import common = require ( "oci-common" ) ; export interface CreateSaml2IdentityProviderDetails extends model . CreateIdentityProviderDetails { /**
     * The URL for retrieving the identity provider's metadata,
     * which contains information required for federating.
     *
     */ "metadataUrl" : string ; /**
     * The XML that contains the information required for federating.
     *
     */ "metadata" : string ; /**
     * Extra name value pairs associated with this identity provider.
     * Example: `{\"clientId\": \"app_sf3kdjf3\"}`
     *
     */ "freeformAttributes" ? : { [ key ] : string ; } ; "protocol" : string ; } export namespace CreateSaml2IdentityProviderDetails { export function getJsonObj ( obj , isParentJsonObj ? ) { const jsonObj = { ... ( isParentJsonObj ? obj : ( model . CreateIdentityProviderDetails . getJsonObj ( obj ) as CreateSaml2IdentityProviderDetails ) ) , ... { } } ; return jsonObj ; } export const protocol = "SAML2" ; export function getDeserializedJsonObj ( obj , isParentJsonObj ? ) { const jsonObj = { ... ( isParentJsonObj ? obj : ( model . CreateIdentityProviderDetails . getDeserializedJsonObj ( obj ) as CreateSaml2IdentityProviderDetails ) ) , ... { } } ; return jsonObj ; } }