/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
import * as z from "zod";
import { remap as remap$ } from "../lib/primitives.js";
import { safeParse } from "../lib/schemas.js";
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponseAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200Action = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction = {
    Deny: "deny",
    Log: "log",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction = {
    Deny: "deny",
    Log: "log",
};
/**
 * [Parameter](https://vercel.com/docs/security/vercel-waf/rule-configuration#parameters) from the incoming traffic.
 */
export const GetFirewallConfigType = {
    Host: "host",
    Path: "path",
    Method: "method",
    Header: "header",
    Query: "query",
    Cookie: "cookie",
    TargetPath: "target_path",
    RawPath: "raw_path",
    IpAddress: "ip_address",
    Protocol: "protocol",
    Region: "region",
    Scheme: "scheme",
    Environment: "environment",
    UserAgent: "user_agent",
    GeoContinent: "geo_continent",
    GeoCountry: "geo_country",
    GeoCountryRegion: "geo_country_region",
    GeoCity: "geo_city",
    GeoAsNumber: "geo_as_number",
    Ja4Digest: "ja4_digest",
    Ja3Digest: "ja3_digest",
    RateLimitApiId: "rate_limit_api_id",
};
export const GetFirewallConfigOp = {
    Re: "re",
    Eq: "eq",
    Ex: "ex",
    Inc: "inc",
    Pre: "pre",
    Suf: "suf",
    Sub: "sub",
    Gt: "gt",
    Gte: "gte",
    Lt: "lt",
    Lte: "lte",
    Nex: "nex",
    Ninc: "ninc",
    Neq: "neq",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction = {
    Deny: "deny",
    Log: "log",
    Challenge: "challenge",
    Bypass: "bypass",
    RateLimit: "rate_limit",
    Redirect: "redirect",
};
export const GetFirewallConfigAlgo = {
    FixedWindow: "fixed_window",
    TokenBucket: "token_bucket",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction = {
    Deny: "deny",
    Log: "log",
    Challenge: "challenge",
    RateLimit: "rate_limit",
};
export const GetFirewallConfigSecurityAction = {
    Deny: "deny",
    Log: "log",
    Challenge: "challenge",
    Bypass: "bypass",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction = {
    Deny: "deny",
    Log: "log",
    Challenge: "challenge",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction = {
    Deny: "deny",
    Log: "log",
    Challenge: "challenge",
};
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction = {
    Deny: "deny",
    Log: "log",
    Challenge: "challenge",
};
/** @internal */
export const GetFirewallConfigRequest$inboundSchema = z.object({
    projectId: z.string(),
    teamId: z.string().optional(),
    slug: z.string().optional(),
    configVersion: z.string(),
});
/** @internal */
export const GetFirewallConfigRequest$outboundSchema = z.object({
    projectId: z.string(),
    teamId: z.string().optional(),
    slug: z.string().optional(),
    configVersion: z.string(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigRequest$;
(function (GetFirewallConfigRequest$) {
    /** @deprecated use `GetFirewallConfigRequest$inboundSchema` instead. */
    GetFirewallConfigRequest$.inboundSchema = GetFirewallConfigRequest$inboundSchema;
    /** @deprecated use `GetFirewallConfigRequest$outboundSchema` instead. */
    GetFirewallConfigRequest$.outboundSchema = GetFirewallConfigRequest$outboundSchema;
})(GetFirewallConfigRequest$ || (GetFirewallConfigRequest$ = {}));
export function getFirewallConfigRequestToJSON(getFirewallConfigRequest) {
    return JSON.stringify(GetFirewallConfigRequest$outboundSchema.parse(getFirewallConfigRequest));
}
export function getFirewallConfigRequestFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigRequest' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$ = {}));
/** @internal */
export const GetFirewallConfigSd$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigSd$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSdAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSd$;
(function (GetFirewallConfigSd$) {
    /** @deprecated use `GetFirewallConfigSd$inboundSchema` instead. */
    GetFirewallConfigSd$.inboundSchema = GetFirewallConfigSd$inboundSchema;
    /** @deprecated use `GetFirewallConfigSd$outboundSchema` instead. */
    GetFirewallConfigSd$.outboundSchema = GetFirewallConfigSd$outboundSchema;
})(GetFirewallConfigSd$ || (GetFirewallConfigSd$ = {}));
export function getFirewallConfigSdToJSON(getFirewallConfigSd) {
    return JSON.stringify(GetFirewallConfigSd$outboundSchema.parse(getFirewallConfigSd));
}
export function getFirewallConfigSdFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigSd$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigSd' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$ = {}));
/** @internal */
export const GetFirewallConfigMa$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigMa$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsMaAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigMa$;
(function (GetFirewallConfigMa$) {
    /** @deprecated use `GetFirewallConfigMa$inboundSchema` instead. */
    GetFirewallConfigMa$.inboundSchema = GetFirewallConfigMa$inboundSchema;
    /** @deprecated use `GetFirewallConfigMa$outboundSchema` instead. */
    GetFirewallConfigMa$.outboundSchema = GetFirewallConfigMa$outboundSchema;
})(GetFirewallConfigMa$ || (GetFirewallConfigMa$ = {}));
export function getFirewallConfigMaToJSON(getFirewallConfigMa) {
    return JSON.stringify(GetFirewallConfigMa$outboundSchema.parse(getFirewallConfigMa));
}
export function getFirewallConfigMaFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigMa$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigMa' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponseAction$inboundSchema = z
    .nativeEnum(GetFirewallConfigSecurityResponseAction);
/** @internal */
export const GetFirewallConfigSecurityResponseAction$outboundSchema = GetFirewallConfigSecurityResponseAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponseAction$;
(function (GetFirewallConfigSecurityResponseAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponseAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponseAction$.inboundSchema = GetFirewallConfigSecurityResponseAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponseAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponseAction$.outboundSchema = GetFirewallConfigSecurityResponseAction$outboundSchema;
})(GetFirewallConfigSecurityResponseAction$ || (GetFirewallConfigSecurityResponseAction$ = {}));
/** @internal */
export const GetFirewallConfigLfi$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponseAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigLfi$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponseAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigLfi$;
(function (GetFirewallConfigLfi$) {
    /** @deprecated use `GetFirewallConfigLfi$inboundSchema` instead. */
    GetFirewallConfigLfi$.inboundSchema = GetFirewallConfigLfi$inboundSchema;
    /** @deprecated use `GetFirewallConfigLfi$outboundSchema` instead. */
    GetFirewallConfigLfi$.outboundSchema = GetFirewallConfigLfi$outboundSchema;
})(GetFirewallConfigLfi$ || (GetFirewallConfigLfi$ = {}));
export function getFirewallConfigLfiToJSON(getFirewallConfigLfi) {
    return JSON.stringify(GetFirewallConfigLfi$outboundSchema.parse(getFirewallConfigLfi));
}
export function getFirewallConfigLfiFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigLfi$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigLfi' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200Action$inboundSchema = z
    .nativeEnum(GetFirewallConfigSecurityResponse200Action);
/** @internal */
export const GetFirewallConfigSecurityResponse200Action$outboundSchema = GetFirewallConfigSecurityResponse200Action$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200Action$;
(function (GetFirewallConfigSecurityResponse200Action$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200Action$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200Action$.inboundSchema = GetFirewallConfigSecurityResponse200Action$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200Action$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200Action$.outboundSchema = GetFirewallConfigSecurityResponse200Action$outboundSchema;
})(GetFirewallConfigSecurityResponse200Action$ || (GetFirewallConfigSecurityResponse200Action$ = {}));
/** @internal */
export const GetFirewallConfigRfi$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200Action$inboundSchema,
});
/** @internal */
export const GetFirewallConfigRfi$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200Action$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigRfi$;
(function (GetFirewallConfigRfi$) {
    /** @deprecated use `GetFirewallConfigRfi$inboundSchema` instead. */
    GetFirewallConfigRfi$.inboundSchema = GetFirewallConfigRfi$inboundSchema;
    /** @deprecated use `GetFirewallConfigRfi$outboundSchema` instead. */
    GetFirewallConfigRfi$.outboundSchema = GetFirewallConfigRfi$outboundSchema;
})(GetFirewallConfigRfi$ || (GetFirewallConfigRfi$ = {}));
export function getFirewallConfigRfiToJSON(getFirewallConfigRfi) {
    return JSON.stringify(GetFirewallConfigRfi$outboundSchema.parse(getFirewallConfigRfi));
}
export function getFirewallConfigRfiFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigRfi$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigRfi' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONAction$ = {}));
/** @internal */
export const GetFirewallConfigRce$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigRce$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigRce$;
(function (GetFirewallConfigRce$) {
    /** @deprecated use `GetFirewallConfigRce$inboundSchema` instead. */
    GetFirewallConfigRce$.inboundSchema = GetFirewallConfigRce$inboundSchema;
    /** @deprecated use `GetFirewallConfigRce$outboundSchema` instead. */
    GetFirewallConfigRce$.outboundSchema = GetFirewallConfigRce$outboundSchema;
})(GetFirewallConfigRce$ || (GetFirewallConfigRce$ = {}));
export function getFirewallConfigRceToJSON(getFirewallConfigRce) {
    return JSON.stringify(GetFirewallConfigRce$outboundSchema.parse(getFirewallConfigRce));
}
export function getFirewallConfigRceFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigRce$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigRce' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$ = {}));
/** @internal */
export const GetFirewallConfigPhp$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigPhp$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigPhp$;
(function (GetFirewallConfigPhp$) {
    /** @deprecated use `GetFirewallConfigPhp$inboundSchema` instead. */
    GetFirewallConfigPhp$.inboundSchema = GetFirewallConfigPhp$inboundSchema;
    /** @deprecated use `GetFirewallConfigPhp$outboundSchema` instead. */
    GetFirewallConfigPhp$.outboundSchema = GetFirewallConfigPhp$outboundSchema;
})(GetFirewallConfigPhp$ || (GetFirewallConfigPhp$ = {}));
export function getFirewallConfigPhpToJSON(getFirewallConfigPhp) {
    return JSON.stringify(GetFirewallConfigPhp$outboundSchema.parse(getFirewallConfigPhp));
}
export function getFirewallConfigPhpFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigPhp$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigPhp' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$ = {}));
/** @internal */
export const GetFirewallConfigGen$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigGen$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigGen$;
(function (GetFirewallConfigGen$) {
    /** @deprecated use `GetFirewallConfigGen$inboundSchema` instead. */
    GetFirewallConfigGen$.inboundSchema = GetFirewallConfigGen$inboundSchema;
    /** @deprecated use `GetFirewallConfigGen$outboundSchema` instead. */
    GetFirewallConfigGen$.outboundSchema = GetFirewallConfigGen$outboundSchema;
})(GetFirewallConfigGen$ || (GetFirewallConfigGen$ = {}));
export function getFirewallConfigGenToJSON(getFirewallConfigGen) {
    return JSON.stringify(GetFirewallConfigGen$outboundSchema.parse(getFirewallConfigGen));
}
export function getFirewallConfigGenFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigGen$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigGen' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$ = {}));
/** @internal */
export const GetFirewallConfigXss$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigXss$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsXssAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigXss$;
(function (GetFirewallConfigXss$) {
    /** @deprecated use `GetFirewallConfigXss$inboundSchema` instead. */
    GetFirewallConfigXss$.inboundSchema = GetFirewallConfigXss$inboundSchema;
    /** @deprecated use `GetFirewallConfigXss$outboundSchema` instead. */
    GetFirewallConfigXss$.outboundSchema = GetFirewallConfigXss$outboundSchema;
})(GetFirewallConfigXss$ || (GetFirewallConfigXss$ = {}));
export function getFirewallConfigXssToJSON(getFirewallConfigXss) {
    return JSON.stringify(GetFirewallConfigXss$outboundSchema.parse(getFirewallConfigXss));
}
export function getFirewallConfigXssFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigXss$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigXss' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$ = {}));
/** @internal */
export const GetFirewallConfigSqli$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigSqli$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSqliAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSqli$;
(function (GetFirewallConfigSqli$) {
    /** @deprecated use `GetFirewallConfigSqli$inboundSchema` instead. */
    GetFirewallConfigSqli$.inboundSchema = GetFirewallConfigSqli$inboundSchema;
    /** @deprecated use `GetFirewallConfigSqli$outboundSchema` instead. */
    GetFirewallConfigSqli$.outboundSchema = GetFirewallConfigSqli$outboundSchema;
})(GetFirewallConfigSqli$ || (GetFirewallConfigSqli$ = {}));
export function getFirewallConfigSqliToJSON(getFirewallConfigSqli) {
    return JSON.stringify(GetFirewallConfigSqli$outboundSchema.parse(getFirewallConfigSqli));
}
export function getFirewallConfigSqliFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigSqli$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigSqli' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$ = {}));
/** @internal */
export const GetFirewallConfigSf$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigSf$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsSfAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSf$;
(function (GetFirewallConfigSf$) {
    /** @deprecated use `GetFirewallConfigSf$inboundSchema` instead. */
    GetFirewallConfigSf$.inboundSchema = GetFirewallConfigSf$inboundSchema;
    /** @deprecated use `GetFirewallConfigSf$outboundSchema` instead. */
    GetFirewallConfigSf$.outboundSchema = GetFirewallConfigSf$outboundSchema;
})(GetFirewallConfigSf$ || (GetFirewallConfigSf$ = {}));
export function getFirewallConfigSfToJSON(getFirewallConfigSf) {
    return JSON.stringify(GetFirewallConfigSf$outboundSchema.parse(getFirewallConfigSf));
}
export function getFirewallConfigSfFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigSf$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigSf' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$ = {}));
/** @internal */
export const GetFirewallConfigJava$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigJava$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyCrsJavaAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigJava$;
(function (GetFirewallConfigJava$) {
    /** @deprecated use `GetFirewallConfigJava$inboundSchema` instead. */
    GetFirewallConfigJava$.inboundSchema = GetFirewallConfigJava$inboundSchema;
    /** @deprecated use `GetFirewallConfigJava$outboundSchema` instead. */
    GetFirewallConfigJava$.outboundSchema = GetFirewallConfigJava$outboundSchema;
})(GetFirewallConfigJava$ || (GetFirewallConfigJava$ = {}));
export function getFirewallConfigJavaToJSON(getFirewallConfigJava) {
    return JSON.stringify(GetFirewallConfigJava$outboundSchema.parse(getFirewallConfigJava));
}
export function getFirewallConfigJavaFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigJava$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigJava' from JSON`);
}
/** @internal */
export const GetFirewallConfigCrs$inboundSchema = z.object({
    sd: z.lazy(() => GetFirewallConfigSd$inboundSchema),
    ma: z.lazy(() => GetFirewallConfigMa$inboundSchema),
    lfi: z.lazy(() => GetFirewallConfigLfi$inboundSchema),
    rfi: z.lazy(() => GetFirewallConfigRfi$inboundSchema),
    rce: z.lazy(() => GetFirewallConfigRce$inboundSchema),
    php: z.lazy(() => GetFirewallConfigPhp$inboundSchema),
    gen: z.lazy(() => GetFirewallConfigGen$inboundSchema),
    xss: z.lazy(() => GetFirewallConfigXss$inboundSchema),
    sqli: z.lazy(() => GetFirewallConfigSqli$inboundSchema),
    sf: z.lazy(() => GetFirewallConfigSf$inboundSchema),
    java: z.lazy(() => GetFirewallConfigJava$inboundSchema),
});
/** @internal */
export const GetFirewallConfigCrs$outboundSchema = z.object({
    sd: z.lazy(() => GetFirewallConfigSd$outboundSchema),
    ma: z.lazy(() => GetFirewallConfigMa$outboundSchema),
    lfi: z.lazy(() => GetFirewallConfigLfi$outboundSchema),
    rfi: z.lazy(() => GetFirewallConfigRfi$outboundSchema),
    rce: z.lazy(() => GetFirewallConfigRce$outboundSchema),
    php: z.lazy(() => GetFirewallConfigPhp$outboundSchema),
    gen: z.lazy(() => GetFirewallConfigGen$outboundSchema),
    xss: z.lazy(() => GetFirewallConfigXss$outboundSchema),
    sqli: z.lazy(() => GetFirewallConfigSqli$outboundSchema),
    sf: z.lazy(() => GetFirewallConfigSf$outboundSchema),
    java: z.lazy(() => GetFirewallConfigJava$outboundSchema),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigCrs$;
(function (GetFirewallConfigCrs$) {
    /** @deprecated use `GetFirewallConfigCrs$inboundSchema` instead. */
    GetFirewallConfigCrs$.inboundSchema = GetFirewallConfigCrs$inboundSchema;
    /** @deprecated use `GetFirewallConfigCrs$outboundSchema` instead. */
    GetFirewallConfigCrs$.outboundSchema = GetFirewallConfigCrs$outboundSchema;
})(GetFirewallConfigCrs$ || (GetFirewallConfigCrs$ = {}));
export function getFirewallConfigCrsToJSON(getFirewallConfigCrs) {
    return JSON.stringify(GetFirewallConfigCrs$outboundSchema.parse(getFirewallConfigCrs));
}
export function getFirewallConfigCrsFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigCrs$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigCrs' from JSON`);
}
/** @internal */
export const GetFirewallConfigType$inboundSchema = z.nativeEnum(GetFirewallConfigType);
/** @internal */
export const GetFirewallConfigType$outboundSchema = GetFirewallConfigType$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigType$;
(function (GetFirewallConfigType$) {
    /** @deprecated use `GetFirewallConfigType$inboundSchema` instead. */
    GetFirewallConfigType$.inboundSchema = GetFirewallConfigType$inboundSchema;
    /** @deprecated use `GetFirewallConfigType$outboundSchema` instead. */
    GetFirewallConfigType$.outboundSchema = GetFirewallConfigType$outboundSchema;
})(GetFirewallConfigType$ || (GetFirewallConfigType$ = {}));
/** @internal */
export const GetFirewallConfigOp$inboundSchema = z.nativeEnum(GetFirewallConfigOp);
/** @internal */
export const GetFirewallConfigOp$outboundSchema = GetFirewallConfigOp$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigOp$;
(function (GetFirewallConfigOp$) {
    /** @deprecated use `GetFirewallConfigOp$inboundSchema` instead. */
    GetFirewallConfigOp$.inboundSchema = GetFirewallConfigOp$inboundSchema;
    /** @deprecated use `GetFirewallConfigOp$outboundSchema` instead. */
    GetFirewallConfigOp$.outboundSchema = GetFirewallConfigOp$outboundSchema;
})(GetFirewallConfigOp$ || (GetFirewallConfigOp$ = {}));
/** @internal */
export const GetFirewallConfigValue$inboundSchema = z.union([z.string(), z.number(), z.array(z.string())]);
/** @internal */
export const GetFirewallConfigValue$outboundSchema = z.union([z.string(), z.number(), z.array(z.string())]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigValue$;
(function (GetFirewallConfigValue$) {
    /** @deprecated use `GetFirewallConfigValue$inboundSchema` instead. */
    GetFirewallConfigValue$.inboundSchema = GetFirewallConfigValue$inboundSchema;
    /** @deprecated use `GetFirewallConfigValue$outboundSchema` instead. */
    GetFirewallConfigValue$.outboundSchema = GetFirewallConfigValue$outboundSchema;
})(GetFirewallConfigValue$ || (GetFirewallConfigValue$ = {}));
export function getFirewallConfigValueToJSON(getFirewallConfigValue) {
    return JSON.stringify(GetFirewallConfigValue$outboundSchema.parse(getFirewallConfigValue));
}
export function getFirewallConfigValueFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigValue$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigValue' from JSON`);
}
/** @internal */
export const GetFirewallConfigConditions$inboundSchema = z.object({
    type: GetFirewallConfigType$inboundSchema,
    op: GetFirewallConfigOp$inboundSchema,
    neg: z.boolean().optional(),
    key: z.string().optional(),
    value: z.union([z.string(), z.number(), z.array(z.string())]).optional(),
});
/** @internal */
export const GetFirewallConfigConditions$outboundSchema = z.object({
    type: GetFirewallConfigType$outboundSchema,
    op: GetFirewallConfigOp$outboundSchema,
    neg: z.boolean().optional(),
    key: z.string().optional(),
    value: z.union([z.string(), z.number(), z.array(z.string())]).optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigConditions$;
(function (GetFirewallConfigConditions$) {
    /** @deprecated use `GetFirewallConfigConditions$inboundSchema` instead. */
    GetFirewallConfigConditions$.inboundSchema = GetFirewallConfigConditions$inboundSchema;
    /** @deprecated use `GetFirewallConfigConditions$outboundSchema` instead. */
    GetFirewallConfigConditions$.outboundSchema = GetFirewallConfigConditions$outboundSchema;
})(GetFirewallConfigConditions$ || (GetFirewallConfigConditions$ = {}));
export function getFirewallConfigConditionsToJSON(getFirewallConfigConditions) {
    return JSON.stringify(GetFirewallConfigConditions$outboundSchema.parse(getFirewallConfigConditions));
}
export function getFirewallConfigConditionsFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigConditions$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigConditions' from JSON`);
}
/** @internal */
export const GetFirewallConfigConditionGroup$inboundSchema = z.object({
    conditions: z.array(z.lazy(() => GetFirewallConfigConditions$inboundSchema)),
});
/** @internal */
export const GetFirewallConfigConditionGroup$outboundSchema = z.object({
    conditions: z.array(z.lazy(() => GetFirewallConfigConditions$outboundSchema)),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigConditionGroup$;
(function (GetFirewallConfigConditionGroup$) {
    /** @deprecated use `GetFirewallConfigConditionGroup$inboundSchema` instead. */
    GetFirewallConfigConditionGroup$.inboundSchema = GetFirewallConfigConditionGroup$inboundSchema;
    /** @deprecated use `GetFirewallConfigConditionGroup$outboundSchema` instead. */
    GetFirewallConfigConditionGroup$.outboundSchema = GetFirewallConfigConditionGroup$outboundSchema;
})(GetFirewallConfigConditionGroup$ || (GetFirewallConfigConditionGroup$ = {}));
export function getFirewallConfigConditionGroupToJSON(getFirewallConfigConditionGroup) {
    return JSON.stringify(GetFirewallConfigConditionGroup$outboundSchema.parse(getFirewallConfigConditionGroup));
}
export function getFirewallConfigConditionGroupFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigConditionGroup$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigConditionGroup' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$ = {}));
/** @internal */
export const GetFirewallConfigAlgo$inboundSchema = z.nativeEnum(GetFirewallConfigAlgo);
/** @internal */
export const GetFirewallConfigAlgo$outboundSchema = GetFirewallConfigAlgo$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigAlgo$;
(function (GetFirewallConfigAlgo$) {
    /** @deprecated use `GetFirewallConfigAlgo$inboundSchema` instead. */
    GetFirewallConfigAlgo$.inboundSchema = GetFirewallConfigAlgo$inboundSchema;
    /** @deprecated use `GetFirewallConfigAlgo$outboundSchema` instead. */
    GetFirewallConfigAlgo$.outboundSchema = GetFirewallConfigAlgo$outboundSchema;
})(GetFirewallConfigAlgo$ || (GetFirewallConfigAlgo$ = {}));
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$ = {}));
/** @internal */
export const GetFirewallConfigRateLimit$inboundSchema = z.object({
    algo: GetFirewallConfigAlgo$inboundSchema,
    window: z.number(),
    limit: z.number(),
    keys: z.array(z.string()),
    action: z.nullable(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$inboundSchema).optional(),
});
/** @internal */
export const GetFirewallConfigRateLimit$outboundSchema = z.object({
    algo: GetFirewallConfigAlgo$outboundSchema,
    window: z.number(),
    limit: z.number(),
    keys: z.array(z.string()),
    action: z.nullable(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesActionAction$outboundSchema).optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigRateLimit$;
(function (GetFirewallConfigRateLimit$) {
    /** @deprecated use `GetFirewallConfigRateLimit$inboundSchema` instead. */
    GetFirewallConfigRateLimit$.inboundSchema = GetFirewallConfigRateLimit$inboundSchema;
    /** @deprecated use `GetFirewallConfigRateLimit$outboundSchema` instead. */
    GetFirewallConfigRateLimit$.outboundSchema = GetFirewallConfigRateLimit$outboundSchema;
})(GetFirewallConfigRateLimit$ || (GetFirewallConfigRateLimit$ = {}));
export function getFirewallConfigRateLimitToJSON(getFirewallConfigRateLimit) {
    return JSON.stringify(GetFirewallConfigRateLimit$outboundSchema.parse(getFirewallConfigRateLimit));
}
export function getFirewallConfigRateLimitFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigRateLimit$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigRateLimit' from JSON`);
}
/** @internal */
export const GetFirewallConfigRedirect$inboundSchema = z.object({
    location: z.string(),
    permanent: z.boolean(),
});
/** @internal */
export const GetFirewallConfigRedirect$outboundSchema = z.object({
    location: z.string(),
    permanent: z.boolean(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigRedirect$;
(function (GetFirewallConfigRedirect$) {
    /** @deprecated use `GetFirewallConfigRedirect$inboundSchema` instead. */
    GetFirewallConfigRedirect$.inboundSchema = GetFirewallConfigRedirect$inboundSchema;
    /** @deprecated use `GetFirewallConfigRedirect$outboundSchema` instead. */
    GetFirewallConfigRedirect$.outboundSchema = GetFirewallConfigRedirect$outboundSchema;
})(GetFirewallConfigRedirect$ || (GetFirewallConfigRedirect$ = {}));
export function getFirewallConfigRedirectToJSON(getFirewallConfigRedirect) {
    return JSON.stringify(GetFirewallConfigRedirect$outboundSchema.parse(getFirewallConfigRedirect));
}
export function getFirewallConfigRedirectFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigRedirect$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigRedirect' from JSON`);
}
/** @internal */
export const GetFirewallConfigMitigate$inboundSchema = z.object({
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$inboundSchema,
    rateLimit: z.nullable(z.lazy(() => GetFirewallConfigRateLimit$inboundSchema))
        .optional(),
    redirect: z.nullable(z.lazy(() => GetFirewallConfigRedirect$inboundSchema))
        .optional(),
    actionDuration: z.nullable(z.string()).optional(),
    bypassSystem: z.nullable(z.boolean()).optional(),
});
/** @internal */
export const GetFirewallConfigMitigate$outboundSchema = z.object({
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyRulesAction$outboundSchema,
    rateLimit: z.nullable(z.lazy(() => GetFirewallConfigRateLimit$outboundSchema))
        .optional(),
    redirect: z.nullable(z.lazy(() => GetFirewallConfigRedirect$outboundSchema))
        .optional(),
    actionDuration: z.nullable(z.string()).optional(),
    bypassSystem: z.nullable(z.boolean()).optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigMitigate$;
(function (GetFirewallConfigMitigate$) {
    /** @deprecated use `GetFirewallConfigMitigate$inboundSchema` instead. */
    GetFirewallConfigMitigate$.inboundSchema = GetFirewallConfigMitigate$inboundSchema;
    /** @deprecated use `GetFirewallConfigMitigate$outboundSchema` instead. */
    GetFirewallConfigMitigate$.outboundSchema = GetFirewallConfigMitigate$outboundSchema;
})(GetFirewallConfigMitigate$ || (GetFirewallConfigMitigate$ = {}));
export function getFirewallConfigMitigateToJSON(getFirewallConfigMitigate) {
    return JSON.stringify(GetFirewallConfigMitigate$outboundSchema.parse(getFirewallConfigMitigate));
}
export function getFirewallConfigMitigateFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigMitigate$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigMitigate' from JSON`);
}
/** @internal */
export const GetFirewallConfigAction$inboundSchema = z.object({
    mitigate: z.lazy(() => GetFirewallConfigMitigate$inboundSchema).optional(),
});
/** @internal */
export const GetFirewallConfigAction$outboundSchema = z.object({
    mitigate: z.lazy(() => GetFirewallConfigMitigate$outboundSchema).optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigAction$;
(function (GetFirewallConfigAction$) {
    /** @deprecated use `GetFirewallConfigAction$inboundSchema` instead. */
    GetFirewallConfigAction$.inboundSchema = GetFirewallConfigAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigAction$outboundSchema` instead. */
    GetFirewallConfigAction$.outboundSchema = GetFirewallConfigAction$outboundSchema;
})(GetFirewallConfigAction$ || (GetFirewallConfigAction$ = {}));
export function getFirewallConfigActionToJSON(getFirewallConfigAction) {
    return JSON.stringify(GetFirewallConfigAction$outboundSchema.parse(getFirewallConfigAction));
}
export function getFirewallConfigActionFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigAction$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigAction' from JSON`);
}
/** @internal */
export const GetFirewallConfigRules$inboundSchema = z.object({
    id: z.string(),
    name: z.string(),
    description: z.string().optional(),
    active: z.boolean(),
    conditionGroup: z.array(z.lazy(() => GetFirewallConfigConditionGroup$inboundSchema)),
    action: z.lazy(() => GetFirewallConfigAction$inboundSchema),
});
/** @internal */
export const GetFirewallConfigRules$outboundSchema = z.object({
    id: z.string(),
    name: z.string(),
    description: z.string().optional(),
    active: z.boolean(),
    conditionGroup: z.array(z.lazy(() => GetFirewallConfigConditionGroup$outboundSchema)),
    action: z.lazy(() => GetFirewallConfigAction$outboundSchema),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigRules$;
(function (GetFirewallConfigRules$) {
    /** @deprecated use `GetFirewallConfigRules$inboundSchema` instead. */
    GetFirewallConfigRules$.inboundSchema = GetFirewallConfigRules$inboundSchema;
    /** @deprecated use `GetFirewallConfigRules$outboundSchema` instead. */
    GetFirewallConfigRules$.outboundSchema = GetFirewallConfigRules$outboundSchema;
})(GetFirewallConfigRules$ || (GetFirewallConfigRules$ = {}));
export function getFirewallConfigRulesToJSON(getFirewallConfigRules) {
    return JSON.stringify(GetFirewallConfigRules$outboundSchema.parse(getFirewallConfigRules));
}
export function getFirewallConfigRulesFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigRules$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigRules' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityAction);
/** @internal */
export const GetFirewallConfigSecurityAction$outboundSchema = GetFirewallConfigSecurityAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityAction$;
(function (GetFirewallConfigSecurityAction$) {
    /** @deprecated use `GetFirewallConfigSecurityAction$inboundSchema` instead. */
    GetFirewallConfigSecurityAction$.inboundSchema = GetFirewallConfigSecurityAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityAction$outboundSchema` instead. */
    GetFirewallConfigSecurityAction$.outboundSchema = GetFirewallConfigSecurityAction$outboundSchema;
})(GetFirewallConfigSecurityAction$ || (GetFirewallConfigSecurityAction$ = {}));
/** @internal */
export const GetFirewallConfigIps$inboundSchema = z.object({
    id: z.string(),
    hostname: z.string(),
    ip: z.string(),
    notes: z.string().optional(),
    action: GetFirewallConfigSecurityAction$inboundSchema,
});
/** @internal */
export const GetFirewallConfigIps$outboundSchema = z.object({
    id: z.string(),
    hostname: z.string(),
    ip: z.string(),
    notes: z.string().optional(),
    action: GetFirewallConfigSecurityAction$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigIps$;
(function (GetFirewallConfigIps$) {
    /** @deprecated use `GetFirewallConfigIps$inboundSchema` instead. */
    GetFirewallConfigIps$.inboundSchema = GetFirewallConfigIps$inboundSchema;
    /** @deprecated use `GetFirewallConfigIps$outboundSchema` instead. */
    GetFirewallConfigIps$.outboundSchema = GetFirewallConfigIps$outboundSchema;
})(GetFirewallConfigIps$ || (GetFirewallConfigIps$ = {}));
export function getFirewallConfigIpsToJSON(getFirewallConfigIps) {
    return JSON.stringify(GetFirewallConfigIps$outboundSchema.parse(getFirewallConfigIps));
}
export function getFirewallConfigIpsFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigIps$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigIps' from JSON`);
}
/** @internal */
export const Changes$inboundSchema = z.object({});
/** @internal */
export const Changes$outboundSchema = z.object({});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var Changes$;
(function (Changes$) {
    /** @deprecated use `Changes$inboundSchema` instead. */
    Changes$.inboundSchema = Changes$inboundSchema;
    /** @deprecated use `Changes$outboundSchema` instead. */
    Changes$.outboundSchema = Changes$outboundSchema;
})(Changes$ || (Changes$ = {}));
export function changesToJSON(changes) {
    return JSON.stringify(Changes$outboundSchema.parse(changes));
}
export function changesFromJSON(jsonString) {
    return safeParse(jsonString, (x) => Changes$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'Changes' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$ = {}));
/** @internal */
export const BotProtection$inboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$inboundSchema
        .optional(),
    updatedAt: z.string().optional(),
    userId: z.string().optional(),
    username: z.string().optional(),
});
/** @internal */
export const BotProtection$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAction$outboundSchema
        .optional(),
    updatedAt: z.string().optional(),
    userId: z.string().optional(),
    username: z.string().optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var BotProtection$;
(function (BotProtection$) {
    /** @deprecated use `BotProtection$inboundSchema` instead. */
    BotProtection$.inboundSchema = BotProtection$inboundSchema;
    /** @deprecated use `BotProtection$outboundSchema` instead. */
    BotProtection$.outboundSchema = BotProtection$outboundSchema;
})(BotProtection$ || (BotProtection$ = {}));
export function botProtectionToJSON(botProtection) {
    return JSON.stringify(BotProtection$outboundSchema.parse(botProtection));
}
export function botProtectionFromJSON(jsonString) {
    return safeParse(jsonString, (x) => BotProtection$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'BotProtection' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$ = {}));
/** @internal */
export const AiBots$inboundSchema = z
    .object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$inboundSchema
        .optional(),
    updatedAt: z.string().optional(),
    userId: z.string().optional(),
    username: z.string().optional(),
});
/** @internal */
export const AiBots$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesAiBotsAction$outboundSchema
        .optional(),
    updatedAt: z.string().optional(),
    userId: z.string().optional(),
    username: z.string().optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var AiBots$;
(function (AiBots$) {
    /** @deprecated use `AiBots$inboundSchema` instead. */
    AiBots$.inboundSchema = AiBots$inboundSchema;
    /** @deprecated use `AiBots$outboundSchema` instead. */
    AiBots$.outboundSchema = AiBots$outboundSchema;
})(AiBots$ || (AiBots$ = {}));
export function aiBotsToJSON(aiBots) {
    return JSON.stringify(AiBots$outboundSchema.parse(aiBots));
}
export function aiBotsFromJSON(jsonString) {
    return safeParse(jsonString, (x) => AiBots$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'AiBots' from JSON`);
}
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$inboundSchema = z.nativeEnum(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction);
/** @internal */
export const GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$;
(function (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$) {
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$inboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$.inboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$inboundSchema;
    /** @deprecated use `GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$outboundSchema` instead. */
    GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$.outboundSchema = GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$outboundSchema;
})(GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$ || (GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$ = {}));
/** @internal */
export const Owasp$inboundSchema = z
    .object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$inboundSchema
        .optional(),
    updatedAt: z.string().optional(),
    userId: z.string().optional(),
    username: z.string().optional(),
});
/** @internal */
export const Owasp$outboundSchema = z.object({
    active: z.boolean(),
    action: GetFirewallConfigSecurityResponse200ApplicationJSONResponseBodyManagedRulesOwaspAction$outboundSchema
        .optional(),
    updatedAt: z.string().optional(),
    userId: z.string().optional(),
    username: z.string().optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var Owasp$;
(function (Owasp$) {
    /** @deprecated use `Owasp$inboundSchema` instead. */
    Owasp$.inboundSchema = Owasp$inboundSchema;
    /** @deprecated use `Owasp$outboundSchema` instead. */
    Owasp$.outboundSchema = Owasp$outboundSchema;
})(Owasp$ || (Owasp$ = {}));
export function owaspToJSON(owasp) {
    return JSON.stringify(Owasp$outboundSchema.parse(owasp));
}
export function owaspFromJSON(jsonString) {
    return safeParse(jsonString, (x) => Owasp$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'Owasp' from JSON`);
}
/** @internal */
export const ManagedRules$inboundSchema = z.object({
    bot_protection: z.lazy(() => BotProtection$inboundSchema).optional(),
    ai_bots: z.lazy(() => AiBots$inboundSchema).optional(),
    owasp: z.lazy(() => Owasp$inboundSchema).optional(),
}).transform((v) => {
    return remap$(v, {
        "bot_protection": "botProtection",
        "ai_bots": "aiBots",
    });
});
/** @internal */
export const ManagedRules$outboundSchema = z.object({
    botProtection: z.lazy(() => BotProtection$outboundSchema).optional(),
    aiBots: z.lazy(() => AiBots$outboundSchema).optional(),
    owasp: z.lazy(() => Owasp$outboundSchema).optional(),
}).transform((v) => {
    return remap$(v, {
        botProtection: "bot_protection",
        aiBots: "ai_bots",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var ManagedRules$;
(function (ManagedRules$) {
    /** @deprecated use `ManagedRules$inboundSchema` instead. */
    ManagedRules$.inboundSchema = ManagedRules$inboundSchema;
    /** @deprecated use `ManagedRules$outboundSchema` instead. */
    ManagedRules$.outboundSchema = ManagedRules$outboundSchema;
})(ManagedRules$ || (ManagedRules$ = {}));
export function managedRulesToJSON(managedRules) {
    return JSON.stringify(ManagedRules$outboundSchema.parse(managedRules));
}
export function managedRulesFromJSON(jsonString) {
    return safeParse(jsonString, (x) => ManagedRules$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'ManagedRules' from JSON`);
}
/** @internal */
export const GetFirewallConfigResponseBody$inboundSchema = z.object({
    ownerId: z.string(),
    projectKey: z.string(),
    id: z.string(),
    version: z.number(),
    updatedAt: z.string(),
    firewallEnabled: z.boolean(),
    crs: z.lazy(() => GetFirewallConfigCrs$inboundSchema),
    rules: z.array(z.lazy(() => GetFirewallConfigRules$inboundSchema)),
    ips: z.array(z.lazy(() => GetFirewallConfigIps$inboundSchema)),
    changes: z.array(z.lazy(() => Changes$inboundSchema)),
    managedRules: z.lazy(() => ManagedRules$inboundSchema).optional(),
    botIdEnabled: z.boolean().optional(),
});
/** @internal */
export const GetFirewallConfigResponseBody$outboundSchema = z.object({
    ownerId: z.string(),
    projectKey: z.string(),
    id: z.string(),
    version: z.number(),
    updatedAt: z.string(),
    firewallEnabled: z.boolean(),
    crs: z.lazy(() => GetFirewallConfigCrs$outboundSchema),
    rules: z.array(z.lazy(() => GetFirewallConfigRules$outboundSchema)),
    ips: z.array(z.lazy(() => GetFirewallConfigIps$outboundSchema)),
    changes: z.array(z.lazy(() => Changes$outboundSchema)),
    managedRules: z.lazy(() => ManagedRules$outboundSchema).optional(),
    botIdEnabled: z.boolean().optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export var GetFirewallConfigResponseBody$;
(function (GetFirewallConfigResponseBody$) {
    /** @deprecated use `GetFirewallConfigResponseBody$inboundSchema` instead. */
    GetFirewallConfigResponseBody$.inboundSchema = GetFirewallConfigResponseBody$inboundSchema;
    /** @deprecated use `GetFirewallConfigResponseBody$outboundSchema` instead. */
    GetFirewallConfigResponseBody$.outboundSchema = GetFirewallConfigResponseBody$outboundSchema;
})(GetFirewallConfigResponseBody$ || (GetFirewallConfigResponseBody$ = {}));
export function getFirewallConfigResponseBodyToJSON(getFirewallConfigResponseBody) {
    return JSON.stringify(GetFirewallConfigResponseBody$outboundSchema.parse(getFirewallConfigResponseBody));
}
export function getFirewallConfigResponseBodyFromJSON(jsonString) {
    return safeParse(jsonString, (x) => GetFirewallConfigResponseBody$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetFirewallConfigResponseBody' from JSON`);
}
//# sourceMappingURL=getfirewallconfigop.js.map