"use strict";
/* tslint:disable */
/* eslint-disable */
/**
 * authentik
 * Making authentication simple.
 *
 * The version of the OpenAPI document: 2025.10.0-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.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.instanceOfFlowSetRequest = instanceOfFlowSetRequest;
exports.FlowSetRequestFromJSON = FlowSetRequestFromJSON;
exports.FlowSetRequestFromJSONTyped = FlowSetRequestFromJSONTyped;
exports.FlowSetRequestToJSON = FlowSetRequestToJSON;
exports.FlowSetRequestToJSONTyped = FlowSetRequestToJSONTyped;
const DeniedActionEnum_1 = require("./DeniedActionEnum");
const FlowLayoutEnum_1 = require("./FlowLayoutEnum");
const PolicyEngineMode_1 = require("./PolicyEngineMode");
const FlowDesignationEnum_1 = require("./FlowDesignationEnum");
/**
 * Check if a given object implements the FlowSetRequest interface.
 */
function instanceOfFlowSetRequest(value) {
    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;
}
function FlowSetRequestFromJSON(json) {
    return FlowSetRequestFromJSONTyped(json, false);
}
function FlowSetRequestFromJSONTyped(json, ignoreDiscriminator) {
    if (json == null) {
        return json;
    }
    return {
        'name': json['name'],
        'slug': json['slug'],
        'title': json['title'],
        'designation': (0, FlowDesignationEnum_1.FlowDesignationEnumFromJSON)(json['designation']),
        'policyEngineMode': json['policy_engine_mode'] == null ? undefined : (0, PolicyEngineMode_1.PolicyEngineModeFromJSON)(json['policy_engine_mode']),
        'compatibilityMode': json['compatibility_mode'] == null ? undefined : json['compatibility_mode'],
        'layout': json['layout'] == null ? undefined : (0, FlowLayoutEnum_1.FlowLayoutEnumFromJSON)(json['layout']),
        'deniedAction': json['denied_action'] == null ? undefined : (0, DeniedActionEnum_1.DeniedActionEnumFromJSON)(json['denied_action']),
    };
}
function FlowSetRequestToJSON(json) {
    return FlowSetRequestToJSONTyped(json, false);
}
function FlowSetRequestToJSONTyped(value, ignoreDiscriminator = false) {
    if (value == null) {
        return value;
    }
    return {
        'name': value['name'],
        'slug': value['slug'],
        'title': value['title'],
        'designation': (0, FlowDesignationEnum_1.FlowDesignationEnumToJSON)(value['designation']),
        'policy_engine_mode': (0, PolicyEngineMode_1.PolicyEngineModeToJSON)(value['policyEngineMode']),
        'compatibility_mode': value['compatibilityMode'],
        'layout': (0, FlowLayoutEnum_1.FlowLayoutEnumToJSON)(value['layout']),
        'denied_action': (0, DeniedActionEnum_1.DeniedActionEnumToJSON)(value['deniedAction']),
    };
}
//# sourceMappingURL=FlowSetRequest.js.map