/* tslint:disable */ /* eslint-disable */ /** * authentik * Making authentication simple. * * The version of the OpenAPI document: 2026.2.3-rc1 * Contact: hello@goauthentik.io * * 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 type { DigestAlgorithmEnum } from './DigestAlgorithmEnum'; import { DigestAlgorithmEnumFromJSON, DigestAlgorithmEnumFromJSONTyped, DigestAlgorithmEnumToJSON, DigestAlgorithmEnumToJSONTyped, } from './DigestAlgorithmEnum'; import type { SignatureAlgorithmEnum } from './SignatureAlgorithmEnum'; import { SignatureAlgorithmEnumFromJSON, SignatureAlgorithmEnumFromJSONTyped, SignatureAlgorithmEnumToJSON, SignatureAlgorithmEnumToJSONTyped, } from './SignatureAlgorithmEnum'; import type { SAMLNameIDPolicyEnum } from './SAMLNameIDPolicyEnum'; import { SAMLNameIDPolicyEnumFromJSON, SAMLNameIDPolicyEnumFromJSONTyped, SAMLNameIDPolicyEnumToJSON, SAMLNameIDPolicyEnumToJSONTyped, } from './SAMLNameIDPolicyEnum'; /** * WSFederationProvider Serializer * @export * @interface PatchedWSFederationProviderRequest */ export interface PatchedWSFederationProviderRequest { /** * * @type {string} * @memberof PatchedWSFederationProviderRequest */ name?: string; /** * Flow used for authentication when the associated application is accessed by an un-authenticated user. * @type {string} * @memberof PatchedWSFederationProviderRequest */ authenticationFlow?: string | null; /** * Flow used when authorizing this provider. * @type {string} * @memberof PatchedWSFederationProviderRequest */ authorizationFlow?: string; /** * Flow used ending the session from a provider. * @type {string} * @memberof PatchedWSFederationProviderRequest */ invalidationFlow?: string; /** * * @type {Array} * @memberof PatchedWSFederationProviderRequest */ propertyMappings?: Array; /** * * @type {string} * @memberof PatchedWSFederationProviderRequest */ replyUrl?: string; /** * * @type {string} * @memberof PatchedWSFederationProviderRequest */ wtrealm?: string; /** * Assertion valid not before current time + this value (Format: hours=-1;minutes=-2;seconds=-3). * @type {string} * @memberof PatchedWSFederationProviderRequest */ assertionValidNotBefore?: string; /** * Assertion not valid on or after current time + this value (Format: hours=1;minutes=2;seconds=3). * @type {string} * @memberof PatchedWSFederationProviderRequest */ assertionValidNotOnOrAfter?: string; /** * Session not valid on or after current time + this value (Format: hours=1;minutes=2;seconds=3). * @type {string} * @memberof PatchedWSFederationProviderRequest */ sessionValidNotOnOrAfter?: string; /** * Configure how the NameID value will be created. When left empty, the NameIDPolicy of the incoming request will be considered * @type {string} * @memberof PatchedWSFederationProviderRequest */ nameIdMapping?: string | null; /** * Configure how the AuthnContextClassRef value will be created. When left empty, the AuthnContextClassRef will be set based on which authentication methods the user used to authenticate. * @type {string} * @memberof PatchedWSFederationProviderRequest */ authnContextClassRefMapping?: string | null; /** * * @type {DigestAlgorithmEnum} * @memberof PatchedWSFederationProviderRequest */ digestAlgorithm?: DigestAlgorithmEnum; /** * * @type {SignatureAlgorithmEnum} * @memberof PatchedWSFederationProviderRequest */ signatureAlgorithm?: SignatureAlgorithmEnum; /** * Keypair used to sign outgoing Responses going to the Service Provider. * @type {string} * @memberof PatchedWSFederationProviderRequest */ signingKp?: string | null; /** * When selected, incoming assertions are encrypted by the IdP using the public key of the encryption keypair. The assertion is decrypted by the SP using the the private key. * @type {string} * @memberof PatchedWSFederationProviderRequest */ encryptionKp?: string | null; /** * * @type {boolean} * @memberof PatchedWSFederationProviderRequest */ signAssertion?: boolean; /** * * @type {boolean} * @memberof PatchedWSFederationProviderRequest */ signLogoutRequest?: boolean; /** * * @type {SAMLNameIDPolicyEnum} * @memberof PatchedWSFederationProviderRequest */ defaultNameIdPolicy?: SAMLNameIDPolicyEnum; } /** * Check if a given object implements the PatchedWSFederationProviderRequest interface. */ export function instanceOfPatchedWSFederationProviderRequest(value: object): value is PatchedWSFederationProviderRequest { return true; } export function PatchedWSFederationProviderRequestFromJSON(json: any): PatchedWSFederationProviderRequest { return PatchedWSFederationProviderRequestFromJSONTyped(json, false); } export function PatchedWSFederationProviderRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): PatchedWSFederationProviderRequest { if (json == null) { return json; } return { 'name': json['name'] == null ? undefined : json['name'], 'authenticationFlow': json['authentication_flow'] == null ? undefined : json['authentication_flow'], 'authorizationFlow': json['authorization_flow'] == null ? undefined : json['authorization_flow'], 'invalidationFlow': json['invalidation_flow'] == null ? undefined : json['invalidation_flow'], 'propertyMappings': json['property_mappings'] == null ? undefined : json['property_mappings'], 'replyUrl': json['reply_url'] == null ? undefined : json['reply_url'], 'wtrealm': json['wtrealm'] == null ? undefined : json['wtrealm'], 'assertionValidNotBefore': json['assertion_valid_not_before'] == null ? undefined : json['assertion_valid_not_before'], 'assertionValidNotOnOrAfter': json['assertion_valid_not_on_or_after'] == null ? undefined : json['assertion_valid_not_on_or_after'], 'sessionValidNotOnOrAfter': json['session_valid_not_on_or_after'] == null ? undefined : json['session_valid_not_on_or_after'], 'nameIdMapping': json['name_id_mapping'] == null ? undefined : json['name_id_mapping'], 'authnContextClassRefMapping': json['authn_context_class_ref_mapping'] == null ? undefined : json['authn_context_class_ref_mapping'], 'digestAlgorithm': json['digest_algorithm'] == null ? undefined : DigestAlgorithmEnumFromJSON(json['digest_algorithm']), 'signatureAlgorithm': json['signature_algorithm'] == null ? undefined : SignatureAlgorithmEnumFromJSON(json['signature_algorithm']), 'signingKp': json['signing_kp'] == null ? undefined : json['signing_kp'], 'encryptionKp': json['encryption_kp'] == null ? undefined : json['encryption_kp'], 'signAssertion': json['sign_assertion'] == null ? undefined : json['sign_assertion'], 'signLogoutRequest': json['sign_logout_request'] == null ? undefined : json['sign_logout_request'], 'defaultNameIdPolicy': json['default_name_id_policy'] == null ? undefined : SAMLNameIDPolicyEnumFromJSON(json['default_name_id_policy']), }; } export function PatchedWSFederationProviderRequestToJSON(json: any): PatchedWSFederationProviderRequest { return PatchedWSFederationProviderRequestToJSONTyped(json, false); } export function PatchedWSFederationProviderRequestToJSONTyped(value?: PatchedWSFederationProviderRequest | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'name': value['name'], 'authentication_flow': value['authenticationFlow'], 'authorization_flow': value['authorizationFlow'], 'invalidation_flow': value['invalidationFlow'], 'property_mappings': value['propertyMappings'], 'reply_url': value['replyUrl'], 'wtrealm': value['wtrealm'], 'assertion_valid_not_before': value['assertionValidNotBefore'], 'assertion_valid_not_on_or_after': value['assertionValidNotOnOrAfter'], 'session_valid_not_on_or_after': value['sessionValidNotOnOrAfter'], 'name_id_mapping': value['nameIdMapping'], 'authn_context_class_ref_mapping': value['authnContextClassRefMapping'], 'digest_algorithm': DigestAlgorithmEnumToJSON(value['digestAlgorithm']), 'signature_algorithm': SignatureAlgorithmEnumToJSON(value['signatureAlgorithm']), 'signing_kp': value['signingKp'], 'encryption_kp': value['encryptionKp'], 'sign_assertion': value['signAssertion'], 'sign_logout_request': value['signLogoutRequest'], 'default_name_id_policy': SAMLNameIDPolicyEnumToJSON(value['defaultNameIdPolicy']), }; }