/* tslint:disable */ /* eslint-disable */ /** * authentik * Making authentication simple. * * The version of the OpenAPI document: 2025.6.3 * 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 { DeniedActionEnum } from './DeniedActionEnum'; import { DeniedActionEnumFromJSON, DeniedActionEnumFromJSONTyped, DeniedActionEnumToJSON, DeniedActionEnumToJSONTyped, } from './DeniedActionEnum'; import type { FlowLayoutEnum } from './FlowLayoutEnum'; import { FlowLayoutEnumFromJSON, FlowLayoutEnumFromJSONTyped, FlowLayoutEnumToJSON, FlowLayoutEnumToJSONTyped, } from './FlowLayoutEnum'; import type { PolicyEngineMode } from './PolicyEngineMode'; import { PolicyEngineModeFromJSON, PolicyEngineModeFromJSONTyped, PolicyEngineModeToJSON, PolicyEngineModeToJSONTyped, } from './PolicyEngineMode'; import type { FlowDesignationEnum } from './FlowDesignationEnum'; import { FlowDesignationEnumFromJSON, FlowDesignationEnumFromJSONTyped, FlowDesignationEnumToJSON, FlowDesignationEnumToJSONTyped, } from './FlowDesignationEnum'; /** * Stripped down flow serializer * @export * @interface FlowSetRequest */ export interface FlowSetRequest { /** * * @type {string} * @memberof FlowSetRequest */ name: string; /** * Visible in the URL. * @type {string} * @memberof FlowSetRequest */ slug: string; /** * Shown as the Title in Flow pages. * @type {string} * @memberof FlowSetRequest */ title: string; /** * Decides what this Flow is used for. For example, the Authentication flow is redirect to when an un-authenticated user visits authentik. * @type {FlowDesignationEnum} * @memberof FlowSetRequest */ designation: FlowDesignationEnum; /** * * @type {PolicyEngineMode} * @memberof FlowSetRequest */ policyEngineMode?: PolicyEngineMode; /** * Enable compatibility mode, increases compatibility with password managers on mobile devices. * @type {boolean} * @memberof FlowSetRequest */ compatibilityMode?: boolean; /** * * @type {FlowLayoutEnum} * @memberof FlowSetRequest */ layout?: FlowLayoutEnum; /** * Configure what should happen when a flow denies access to a user. * @type {DeniedActionEnum} * @memberof FlowSetRequest */ deniedAction?: DeniedActionEnum; } /** * Check if a given object implements the FlowSetRequest interface. */ export function instanceOfFlowSetRequest(value: object): value is FlowSetRequest { if (!('name' in value) || value['name'] === undefined) return false; if (!('slug' in value) || value['slug'] === undefined) return false; if (!('title' in value) || value['title'] === undefined) return false; if (!('designation' in value) || value['designation'] === undefined) return false; return true; } export function FlowSetRequestFromJSON(json: any): FlowSetRequest { return FlowSetRequestFromJSONTyped(json, false); } export function FlowSetRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): FlowSetRequest { if (json == null) { return json; } return { 'name': json['name'], 'slug': json['slug'], 'title': json['title'], 'designation': FlowDesignationEnumFromJSON(json['designation']), 'policyEngineMode': json['policy_engine_mode'] == null ? undefined : PolicyEngineModeFromJSON(json['policy_engine_mode']), 'compatibilityMode': json['compatibility_mode'] == null ? undefined : json['compatibility_mode'], 'layout': json['layout'] == null ? undefined : FlowLayoutEnumFromJSON(json['layout']), 'deniedAction': json['denied_action'] == null ? undefined : DeniedActionEnumFromJSON(json['denied_action']), }; } export function FlowSetRequestToJSON(json: any): FlowSetRequest { return FlowSetRequestToJSONTyped(json, false); } export function FlowSetRequestToJSONTyped(value?: FlowSetRequest | null, ignoreDiscriminator: boolean = false): any { if (value == null) { return value; } return { 'name': value['name'], 'slug': value['slug'], 'title': value['title'], 'designation': FlowDesignationEnumToJSON(value['designation']), 'policy_engine_mode': PolicyEngineModeToJSON(value['policyEngineMode']), 'compatibility_mode': value['compatibilityMode'], 'layout': FlowLayoutEnumToJSON(value['layout']), 'denied_action': DeniedActionEnumToJSON(value['deniedAction']), }; }