"use strict";
/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
    if (mod && mod.__esModule) return mod;
    var result = {};
    if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
    __setModuleDefault(result, mod);
    return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValueFromJSON = exports.hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValueToJSON = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$ = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$inboundSchema = exports.hrisCreateEmploymentRequestDtoSchemasPayFrequency4FromJSON = exports.hrisCreateEmploymentRequestDtoSchemasPayFrequency4ToJSON = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$ = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$inboundSchema = exports.hrisCreateEmploymentRequestDtoEmploymentTypeFromJSON = exports.hrisCreateEmploymentRequestDtoEmploymentTypeToJSON = exports.HrisCreateEmploymentRequestDtoEmploymentType$ = exports.HrisCreateEmploymentRequestDtoEmploymentType$outboundSchema = exports.HrisCreateEmploymentRequestDtoEmploymentType$inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasValue$ = exports.HrisCreateEmploymentRequestDtoSchemasValue$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasValue$inboundSchema = exports.hrisCreateEmploymentRequestDtoSchemasSourceValueFromJSON = exports.hrisCreateEmploymentRequestDtoSchemasSourceValueToJSON = exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$ = exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$inboundSchema = exports.hrisCreateEmploymentRequestDtoSchemas4FromJSON = exports.hrisCreateEmploymentRequestDtoSchemas4ToJSON = exports.HrisCreateEmploymentRequestDtoSchemas4$ = exports.HrisCreateEmploymentRequestDtoSchemas4$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemas4$inboundSchema = exports.hrisCreateEmploymentRequestDtoEmploymentContractTypeFromJSON = exports.hrisCreateEmploymentRequestDtoEmploymentContractTypeToJSON = exports.HrisCreateEmploymentRequestDtoEmploymentContractType$ = exports.HrisCreateEmploymentRequestDtoEmploymentContractType$outboundSchema = exports.HrisCreateEmploymentRequestDtoEmploymentContractType$inboundSchema = exports.HrisCreateEmploymentRequestDtoValue$ = exports.HrisCreateEmploymentRequestDtoValue$outboundSchema = exports.HrisCreateEmploymentRequestDtoValue$inboundSchema = exports.hrisCreateEmploymentRequestDtoSourceValueFromJSON = exports.hrisCreateEmploymentRequestDtoSourceValueToJSON = exports.HrisCreateEmploymentRequestDtoSourceValue$ = exports.HrisCreateEmploymentRequestDtoSourceValue$outboundSchema = exports.HrisCreateEmploymentRequestDtoSourceValue$inboundSchema = exports.hrisCreateEmploymentRequestDto4FromJSON = exports.hrisCreateEmploymentRequestDto4ToJSON = exports.HrisCreateEmploymentRequestDto4$ = exports.HrisCreateEmploymentRequestDto4$outboundSchema = exports.HrisCreateEmploymentRequestDto4$inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue = exports.HrisCreateEmploymentRequestDtoSchemasValue = exports.HrisCreateEmploymentRequestDtoValue = void 0;
exports.hrisCreateEmploymentRequestDtoFromJSON = exports.hrisCreateEmploymentRequestDtoToJSON = exports.HrisCreateEmploymentRequestDto$ = exports.HrisCreateEmploymentRequestDto$outboundSchema = exports.HrisCreateEmploymentRequestDto$inboundSchema = exports.hrisCreateEmploymentRequestDtoPayPeriodFromJSON = exports.hrisCreateEmploymentRequestDtoPayPeriodToJSON = exports.HrisCreateEmploymentRequestDtoPayPeriod$ = exports.HrisCreateEmploymentRequestDtoPayPeriod$outboundSchema = exports.HrisCreateEmploymentRequestDtoPayPeriod$inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$ = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$inboundSchema = exports.hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValueFromJSON = exports.hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValueToJSON = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$ = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$inboundSchema = exports.hrisCreateEmploymentRequestDtoSchemasPayPeriod4FromJSON = exports.hrisCreateEmploymentRequestDtoSchemasPayPeriod4ToJSON = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$ = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$inboundSchema = exports.hrisCreateEmploymentRequestDtoPayFrequencyFromJSON = exports.hrisCreateEmploymentRequestDtoPayFrequencyToJSON = exports.HrisCreateEmploymentRequestDtoPayFrequency$ = exports.HrisCreateEmploymentRequestDtoPayFrequency$outboundSchema = exports.HrisCreateEmploymentRequestDtoPayFrequency$inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$ = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$inboundSchema = void 0;
const z = __importStar(require("zod"));
const primitives_js_1 = require("../../../lib/primitives.js");
const schemas_js_1 = require("../../../lib/schemas.js");
const enums_js_1 = require("../../types/enums.js");
var HrisCreateEmploymentRequestDtoValue;
(function (HrisCreateEmploymentRequestDtoValue) {
    HrisCreateEmploymentRequestDtoValue["FullTime"] = "full_time";
    HrisCreateEmploymentRequestDtoValue["Shifts"] = "shifts";
    HrisCreateEmploymentRequestDtoValue["PartTime"] = "part_time";
    HrisCreateEmploymentRequestDtoValue["UnmappedValue"] = "unmapped_value";
})(HrisCreateEmploymentRequestDtoValue || (exports.HrisCreateEmploymentRequestDtoValue = HrisCreateEmploymentRequestDtoValue = {}));
/**
 * The type of the employment.
 */
var HrisCreateEmploymentRequestDtoSchemasValue;
(function (HrisCreateEmploymentRequestDtoSchemasValue) {
    HrisCreateEmploymentRequestDtoSchemasValue["Contractor"] = "contractor";
    HrisCreateEmploymentRequestDtoSchemasValue["Intern"] = "intern";
    HrisCreateEmploymentRequestDtoSchemasValue["Permanent"] = "permanent";
    HrisCreateEmploymentRequestDtoSchemasValue["Apprentice"] = "apprentice";
    HrisCreateEmploymentRequestDtoSchemasValue["Freelance"] = "freelance";
    HrisCreateEmploymentRequestDtoSchemasValue["Terminated"] = "terminated";
    HrisCreateEmploymentRequestDtoSchemasValue["Temporary"] = "temporary";
    HrisCreateEmploymentRequestDtoSchemasValue["Seasonal"] = "seasonal";
    HrisCreateEmploymentRequestDtoSchemasValue["Volunteer"] = "volunteer";
    HrisCreateEmploymentRequestDtoSchemasValue["Probation"] = "probation";
    HrisCreateEmploymentRequestDtoSchemasValue["Internal"] = "internal";
    HrisCreateEmploymentRequestDtoSchemasValue["External"] = "external";
    HrisCreateEmploymentRequestDtoSchemasValue["Expatriate"] = "expatriate";
    HrisCreateEmploymentRequestDtoSchemasValue["EmployerOfRecord"] = "employer_of_record";
    HrisCreateEmploymentRequestDtoSchemasValue["Casual"] = "casual";
    HrisCreateEmploymentRequestDtoSchemasValue["Programme"] = "Programme";
    HrisCreateEmploymentRequestDtoSchemasValue["UnmappedValue"] = "unmapped_value";
})(HrisCreateEmploymentRequestDtoSchemasValue || (exports.HrisCreateEmploymentRequestDtoSchemasValue = HrisCreateEmploymentRequestDtoSchemasValue = {}));
/**
 * The pay frequency of the job postings.
 */
var HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue;
(function (HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue) {
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["Hourly"] = "hourly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["Weekly"] = "weekly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["BiWeekly"] = "bi_weekly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["FourWeekly"] = "four_weekly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["SemiMonthly"] = "semi_monthly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["Monthly"] = "monthly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["BiMonthly"] = "bi_monthly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["Quarterly"] = "quarterly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["SemiAnnually"] = "semi_annually";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["Yearly"] = "yearly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["ThirteenMonthly"] = "thirteen_monthly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["ProRata"] = "pro_rata";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["UnmappedValue"] = "unmapped_value";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["HalfYearly"] = "half_yearly";
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue["Daily"] = "daily";
})(HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue || (exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue = HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue = {}));
/**
 * The pay period of the job postings.
 */
var HrisCreateEmploymentRequestDtoSchemasPayPeriodValue;
(function (HrisCreateEmploymentRequestDtoSchemasPayPeriodValue) {
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["Hour"] = "hour";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["Day"] = "day";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["Week"] = "week";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["EveryTwoWeeks"] = "every_two_weeks";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["Month"] = "month";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["TwiceAMonth"] = "twice_a_month";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["EveryTwoMonths"] = "every_two_months";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["Quarter"] = "quarter";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["EverySixMonths"] = "every_six_months";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["Year"] = "year";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["OneOff"] = "one_off";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["None"] = "none";
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue["UnmappedValue"] = "unmapped_value";
})(HrisCreateEmploymentRequestDtoSchemasPayPeriodValue || (exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue = HrisCreateEmploymentRequestDtoSchemasPayPeriodValue = {}));
/** @internal */
exports.HrisCreateEmploymentRequestDto4$inboundSchema = z.object({});
/** @internal */
exports.HrisCreateEmploymentRequestDto4$outboundSchema = z.object({});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDto4$;
(function (HrisCreateEmploymentRequestDto4$) {
    /** @deprecated use `HrisCreateEmploymentRequestDto4$inboundSchema` instead. */
    HrisCreateEmploymentRequestDto4$.inboundSchema = exports.HrisCreateEmploymentRequestDto4$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDto4$outboundSchema` instead. */
    HrisCreateEmploymentRequestDto4$.outboundSchema = exports.HrisCreateEmploymentRequestDto4$outboundSchema;
})(HrisCreateEmploymentRequestDto4$ || (exports.HrisCreateEmploymentRequestDto4$ = HrisCreateEmploymentRequestDto4$ = {}));
function hrisCreateEmploymentRequestDto4ToJSON(hrisCreateEmploymentRequestDto4) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDto4$outboundSchema.parse(hrisCreateEmploymentRequestDto4));
}
exports.hrisCreateEmploymentRequestDto4ToJSON = hrisCreateEmploymentRequestDto4ToJSON;
function hrisCreateEmploymentRequestDto4FromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDto4$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDto4' from JSON`);
}
exports.hrisCreateEmploymentRequestDto4FromJSON = hrisCreateEmploymentRequestDto4FromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSourceValue$inboundSchema = z.union([
    z.lazy(() => exports.HrisCreateEmploymentRequestDto4$inboundSchema),
    z.string(),
    z.number(),
    z.boolean(),
    z.array(z.any()),
]);
/** @internal */
exports.HrisCreateEmploymentRequestDtoSourceValue$outboundSchema = z.union([
    z.lazy(() => exports.HrisCreateEmploymentRequestDto4$outboundSchema),
    z.string(),
    z.number(),
    z.boolean(),
    z.array(z.any()),
]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSourceValue$;
(function (HrisCreateEmploymentRequestDtoSourceValue$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSourceValue$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSourceValue$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSourceValue$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSourceValue$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSourceValue$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSourceValue$outboundSchema;
})(HrisCreateEmploymentRequestDtoSourceValue$ || (exports.HrisCreateEmploymentRequestDtoSourceValue$ = HrisCreateEmploymentRequestDtoSourceValue$ = {}));
function hrisCreateEmploymentRequestDtoSourceValueToJSON(hrisCreateEmploymentRequestDtoSourceValue) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoSourceValue$outboundSchema.parse(hrisCreateEmploymentRequestDtoSourceValue));
}
exports.hrisCreateEmploymentRequestDtoSourceValueToJSON = hrisCreateEmploymentRequestDtoSourceValueToJSON;
function hrisCreateEmploymentRequestDtoSourceValueFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoSourceValue$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoSourceValue' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoSourceValueFromJSON = hrisCreateEmploymentRequestDtoSourceValueFromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoValue$inboundSchema = z
    .union([
    z.nativeEnum(HrisCreateEmploymentRequestDtoValue),
    z.string().transform(enums_js_1.catchUnrecognizedEnum),
]);
/** @internal */
exports.HrisCreateEmploymentRequestDtoValue$outboundSchema = z.union([
    z.nativeEnum(HrisCreateEmploymentRequestDtoValue),
    z.string().and(z.custom()),
]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoValue$;
(function (HrisCreateEmploymentRequestDtoValue$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoValue$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoValue$.inboundSchema = exports.HrisCreateEmploymentRequestDtoValue$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoValue$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoValue$.outboundSchema = exports.HrisCreateEmploymentRequestDtoValue$outboundSchema;
})(HrisCreateEmploymentRequestDtoValue$ || (exports.HrisCreateEmploymentRequestDtoValue$ = HrisCreateEmploymentRequestDtoValue$ = {}));
/** @internal */
exports.HrisCreateEmploymentRequestDtoEmploymentContractType$inboundSchema = z.object({
    source_value: z.nullable(z.union([
        z.lazy(() => exports.HrisCreateEmploymentRequestDto4$inboundSchema),
        z.string(),
        z.number(),
        z.boolean(),
        z.array(z.any()),
    ])).optional(),
    value: z.nullable(exports.HrisCreateEmploymentRequestDtoValue$inboundSchema)
        .optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        "source_value": "sourceValue",
    });
});
/** @internal */
exports.HrisCreateEmploymentRequestDtoEmploymentContractType$outboundSchema = z.object({
    sourceValue: z.nullable(z.union([
        z.lazy(() => exports.HrisCreateEmploymentRequestDto4$outboundSchema),
        z.string(),
        z.number(),
        z.boolean(),
        z.array(z.any()),
    ])).optional(),
    value: z.nullable(exports.HrisCreateEmploymentRequestDtoValue$outboundSchema)
        .optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        sourceValue: "source_value",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoEmploymentContractType$;
(function (HrisCreateEmploymentRequestDtoEmploymentContractType$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoEmploymentContractType$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoEmploymentContractType$.inboundSchema = exports.HrisCreateEmploymentRequestDtoEmploymentContractType$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoEmploymentContractType$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoEmploymentContractType$.outboundSchema = exports.HrisCreateEmploymentRequestDtoEmploymentContractType$outboundSchema;
})(HrisCreateEmploymentRequestDtoEmploymentContractType$ || (exports.HrisCreateEmploymentRequestDtoEmploymentContractType$ = HrisCreateEmploymentRequestDtoEmploymentContractType$ = {}));
function hrisCreateEmploymentRequestDtoEmploymentContractTypeToJSON(hrisCreateEmploymentRequestDtoEmploymentContractType) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoEmploymentContractType$outboundSchema.parse(hrisCreateEmploymentRequestDtoEmploymentContractType));
}
exports.hrisCreateEmploymentRequestDtoEmploymentContractTypeToJSON = hrisCreateEmploymentRequestDtoEmploymentContractTypeToJSON;
function hrisCreateEmploymentRequestDtoEmploymentContractTypeFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoEmploymentContractType$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoEmploymentContractType' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoEmploymentContractTypeFromJSON = hrisCreateEmploymentRequestDtoEmploymentContractTypeFromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemas4$inboundSchema = z.object({});
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemas4$outboundSchema = z.object({});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemas4$;
(function (HrisCreateEmploymentRequestDtoSchemas4$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemas4$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemas4$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemas4$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemas4$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemas4$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemas4$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemas4$ || (exports.HrisCreateEmploymentRequestDtoSchemas4$ = HrisCreateEmploymentRequestDtoSchemas4$ = {}));
function hrisCreateEmploymentRequestDtoSchemas4ToJSON(hrisCreateEmploymentRequestDtoSchemas4) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoSchemas4$outboundSchema.parse(hrisCreateEmploymentRequestDtoSchemas4));
}
exports.hrisCreateEmploymentRequestDtoSchemas4ToJSON = hrisCreateEmploymentRequestDtoSchemas4ToJSON;
function hrisCreateEmploymentRequestDtoSchemas4FromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoSchemas4$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoSchemas4' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoSchemas4FromJSON = hrisCreateEmploymentRequestDtoSchemas4FromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$inboundSchema = z.union([
    z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemas4$inboundSchema),
    z.string(),
    z.number(),
    z.boolean(),
    z.array(z.any()),
]);
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$outboundSchema = z.union([
    z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemas4$outboundSchema),
    z.string(),
    z.number(),
    z.boolean(),
    z.array(z.any()),
]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemasSourceValue$;
(function (HrisCreateEmploymentRequestDtoSchemasSourceValue$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasSourceValue$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasSourceValue$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasSourceValue$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasSourceValue$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemasSourceValue$ || (exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$ = HrisCreateEmploymentRequestDtoSchemasSourceValue$ = {}));
function hrisCreateEmploymentRequestDtoSchemasSourceValueToJSON(hrisCreateEmploymentRequestDtoSchemasSourceValue) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$outboundSchema.parse(hrisCreateEmploymentRequestDtoSchemasSourceValue));
}
exports.hrisCreateEmploymentRequestDtoSchemasSourceValueToJSON = hrisCreateEmploymentRequestDtoSchemasSourceValueToJSON;
function hrisCreateEmploymentRequestDtoSchemasSourceValueFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoSchemasSourceValue$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoSchemasSourceValue' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoSchemasSourceValueFromJSON = hrisCreateEmploymentRequestDtoSchemasSourceValueFromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasValue$inboundSchema = z
    .union([
    z.nativeEnum(HrisCreateEmploymentRequestDtoSchemasValue),
    z.string().transform(enums_js_1.catchUnrecognizedEnum),
]);
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasValue$outboundSchema = z.union([
    z.nativeEnum(HrisCreateEmploymentRequestDtoSchemasValue),
    z.string().and(z.custom()),
]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemasValue$;
(function (HrisCreateEmploymentRequestDtoSchemasValue$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasValue$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasValue$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasValue$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasValue$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasValue$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasValue$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemasValue$ || (exports.HrisCreateEmploymentRequestDtoSchemasValue$ = HrisCreateEmploymentRequestDtoSchemasValue$ = {}));
/** @internal */
exports.HrisCreateEmploymentRequestDtoEmploymentType$inboundSchema = z.object({
    source_value: z.nullable(z.union([
        z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemas4$inboundSchema),
        z.string(),
        z.number(),
        z.boolean(),
        z.array(z.any()),
    ])).optional(),
    value: z.nullable(exports.HrisCreateEmploymentRequestDtoSchemasValue$inboundSchema)
        .optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        "source_value": "sourceValue",
    });
});
/** @internal */
exports.HrisCreateEmploymentRequestDtoEmploymentType$outboundSchema = z.object({
    sourceValue: z.nullable(z.union([
        z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemas4$outboundSchema),
        z.string(),
        z.number(),
        z.boolean(),
        z.array(z.any()),
    ])).optional(),
    value: z.nullable(exports.HrisCreateEmploymentRequestDtoSchemasValue$outboundSchema)
        .optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        sourceValue: "source_value",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoEmploymentType$;
(function (HrisCreateEmploymentRequestDtoEmploymentType$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoEmploymentType$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoEmploymentType$.inboundSchema = exports.HrisCreateEmploymentRequestDtoEmploymentType$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoEmploymentType$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoEmploymentType$.outboundSchema = exports.HrisCreateEmploymentRequestDtoEmploymentType$outboundSchema;
})(HrisCreateEmploymentRequestDtoEmploymentType$ || (exports.HrisCreateEmploymentRequestDtoEmploymentType$ = HrisCreateEmploymentRequestDtoEmploymentType$ = {}));
function hrisCreateEmploymentRequestDtoEmploymentTypeToJSON(hrisCreateEmploymentRequestDtoEmploymentType) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoEmploymentType$outboundSchema.parse(hrisCreateEmploymentRequestDtoEmploymentType));
}
exports.hrisCreateEmploymentRequestDtoEmploymentTypeToJSON = hrisCreateEmploymentRequestDtoEmploymentTypeToJSON;
function hrisCreateEmploymentRequestDtoEmploymentTypeFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoEmploymentType$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoEmploymentType' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoEmploymentTypeFromJSON = hrisCreateEmploymentRequestDtoEmploymentTypeFromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$inboundSchema = z.object({});
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$outboundSchema = z.object({});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemasPayFrequency4$;
(function (HrisCreateEmploymentRequestDtoSchemasPayFrequency4$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayFrequency4$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayFrequency4$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayFrequency4$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayFrequency4$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemasPayFrequency4$ || (exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$ = HrisCreateEmploymentRequestDtoSchemasPayFrequency4$ = {}));
function hrisCreateEmploymentRequestDtoSchemasPayFrequency4ToJSON(hrisCreateEmploymentRequestDtoSchemasPayFrequency4) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$outboundSchema.parse(hrisCreateEmploymentRequestDtoSchemasPayFrequency4));
}
exports.hrisCreateEmploymentRequestDtoSchemasPayFrequency4ToJSON = hrisCreateEmploymentRequestDtoSchemasPayFrequency4ToJSON;
function hrisCreateEmploymentRequestDtoSchemasPayFrequency4FromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoSchemasPayFrequency4' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoSchemasPayFrequency4FromJSON = hrisCreateEmploymentRequestDtoSchemasPayFrequency4FromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$inboundSchema = z.union([
    z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$inboundSchema),
    z.string(),
    z.number(),
    z.boolean(),
    z.array(z.any()),
]);
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$outboundSchema = z.union([
    z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$outboundSchema),
    z.string(),
    z.number(),
    z.boolean(),
    z.array(z.any()),
]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$;
(function (HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$ || (exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$ = HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$ = {}));
function hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValueToJSON(hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$outboundSchema
        .parse(hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue));
}
exports.hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValueToJSON = hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValueToJSON;
function hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValueFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue$inboundSchema
        .parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValue' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValueFromJSON = hrisCreateEmploymentRequestDtoSchemasPayFrequencySourceValueFromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$inboundSchema = z
    .union([
    z.nativeEnum(HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue),
    z.string().transform(enums_js_1.catchUnrecognizedEnum),
]);
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$outboundSchema = z.union([
    z.nativeEnum(HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue),
    z.string().and(z.custom()),
]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$;
(function (HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$ || (exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$ = HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$ = {}));
/** @internal */
exports.HrisCreateEmploymentRequestDtoPayFrequency$inboundSchema = z.object({
    source_value: z.nullable(z.union([
        z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$inboundSchema),
        z.string(),
        z.number(),
        z.boolean(),
        z.array(z.any()),
    ])).optional(),
    value: z.nullable(exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$inboundSchema).optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        "source_value": "sourceValue",
    });
});
/** @internal */
exports.HrisCreateEmploymentRequestDtoPayFrequency$outboundSchema = z.object({
    sourceValue: z.nullable(z.union([
        z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemasPayFrequency4$outboundSchema),
        z.string(),
        z.number(),
        z.boolean(),
        z.array(z.any()),
    ])).optional(),
    value: z.nullable(exports.HrisCreateEmploymentRequestDtoSchemasPayFrequencyValue$outboundSchema).optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        sourceValue: "source_value",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoPayFrequency$;
(function (HrisCreateEmploymentRequestDtoPayFrequency$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoPayFrequency$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoPayFrequency$.inboundSchema = exports.HrisCreateEmploymentRequestDtoPayFrequency$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoPayFrequency$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoPayFrequency$.outboundSchema = exports.HrisCreateEmploymentRequestDtoPayFrequency$outboundSchema;
})(HrisCreateEmploymentRequestDtoPayFrequency$ || (exports.HrisCreateEmploymentRequestDtoPayFrequency$ = HrisCreateEmploymentRequestDtoPayFrequency$ = {}));
function hrisCreateEmploymentRequestDtoPayFrequencyToJSON(hrisCreateEmploymentRequestDtoPayFrequency) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoPayFrequency$outboundSchema.parse(hrisCreateEmploymentRequestDtoPayFrequency));
}
exports.hrisCreateEmploymentRequestDtoPayFrequencyToJSON = hrisCreateEmploymentRequestDtoPayFrequencyToJSON;
function hrisCreateEmploymentRequestDtoPayFrequencyFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoPayFrequency$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoPayFrequency' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoPayFrequencyFromJSON = hrisCreateEmploymentRequestDtoPayFrequencyFromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$inboundSchema = z.object({});
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$outboundSchema = z.object({});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemasPayPeriod4$;
(function (HrisCreateEmploymentRequestDtoSchemasPayPeriod4$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayPeriod4$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayPeriod4$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayPeriod4$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayPeriod4$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemasPayPeriod4$ || (exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$ = HrisCreateEmploymentRequestDtoSchemasPayPeriod4$ = {}));
function hrisCreateEmploymentRequestDtoSchemasPayPeriod4ToJSON(hrisCreateEmploymentRequestDtoSchemasPayPeriod4) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$outboundSchema.parse(hrisCreateEmploymentRequestDtoSchemasPayPeriod4));
}
exports.hrisCreateEmploymentRequestDtoSchemasPayPeriod4ToJSON = hrisCreateEmploymentRequestDtoSchemasPayPeriod4ToJSON;
function hrisCreateEmploymentRequestDtoSchemasPayPeriod4FromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoSchemasPayPeriod4' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoSchemasPayPeriod4FromJSON = hrisCreateEmploymentRequestDtoSchemasPayPeriod4FromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$inboundSchema = z.union([
    z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$inboundSchema),
    z.string(),
    z.number(),
    z.boolean(),
    z.array(z.any()),
]);
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$outboundSchema = z.union([
    z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$outboundSchema),
    z.string(),
    z.number(),
    z.boolean(),
    z.array(z.any()),
]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$;
(function (HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$ || (exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$ = HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$ = {}));
function hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValueToJSON(hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$outboundSchema
        .parse(hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue));
}
exports.hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValueToJSON = hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValueToJSON;
function hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValueFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue$inboundSchema
        .parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValue' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValueFromJSON = hrisCreateEmploymentRequestDtoSchemasPayPeriodSourceValueFromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$inboundSchema = z
    .union([
    z.nativeEnum(HrisCreateEmploymentRequestDtoSchemasPayPeriodValue),
    z.string().transform(enums_js_1.catchUnrecognizedEnum),
]);
/** @internal */
exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$outboundSchema = z.union([
    z.nativeEnum(HrisCreateEmploymentRequestDtoSchemasPayPeriodValue),
    z.string().and(z.custom()),
]);
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$;
(function (HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$.inboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$.outboundSchema = exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$outboundSchema;
})(HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$ || (exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$ = HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$ = {}));
/** @internal */
exports.HrisCreateEmploymentRequestDtoPayPeriod$inboundSchema = z.object({
    source_value: z.nullable(z.union([
        z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$inboundSchema),
        z.string(),
        z.number(),
        z.boolean(),
        z.array(z.any()),
    ])).optional(),
    value: z.nullable(exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$inboundSchema).optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        "source_value": "sourceValue",
    });
});
/** @internal */
exports.HrisCreateEmploymentRequestDtoPayPeriod$outboundSchema = z.object({
    sourceValue: z.nullable(z.union([
        z.lazy(() => exports.HrisCreateEmploymentRequestDtoSchemasPayPeriod4$outboundSchema),
        z.string(),
        z.number(),
        z.boolean(),
        z.array(z.any()),
    ])).optional(),
    value: z.nullable(exports.HrisCreateEmploymentRequestDtoSchemasPayPeriodValue$outboundSchema).optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        sourceValue: "source_value",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDtoPayPeriod$;
(function (HrisCreateEmploymentRequestDtoPayPeriod$) {
    /** @deprecated use `HrisCreateEmploymentRequestDtoPayPeriod$inboundSchema` instead. */
    HrisCreateEmploymentRequestDtoPayPeriod$.inboundSchema = exports.HrisCreateEmploymentRequestDtoPayPeriod$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDtoPayPeriod$outboundSchema` instead. */
    HrisCreateEmploymentRequestDtoPayPeriod$.outboundSchema = exports.HrisCreateEmploymentRequestDtoPayPeriod$outboundSchema;
})(HrisCreateEmploymentRequestDtoPayPeriod$ || (exports.HrisCreateEmploymentRequestDtoPayPeriod$ = HrisCreateEmploymentRequestDtoPayPeriod$ = {}));
function hrisCreateEmploymentRequestDtoPayPeriodToJSON(hrisCreateEmploymentRequestDtoPayPeriod) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDtoPayPeriod$outboundSchema.parse(hrisCreateEmploymentRequestDtoPayPeriod));
}
exports.hrisCreateEmploymentRequestDtoPayPeriodToJSON = hrisCreateEmploymentRequestDtoPayPeriodToJSON;
function hrisCreateEmploymentRequestDtoPayPeriodFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDtoPayPeriod$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDtoPayPeriod' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoPayPeriodFromJSON = hrisCreateEmploymentRequestDtoPayPeriodFromJSON;
/** @internal */
exports.HrisCreateEmploymentRequestDto$inboundSchema = z.object({
    effective_date: z.nullable(z.string().datetime({ offset: true }).transform(v => new Date(v))).optional(),
    employee_id: z.nullable(z.string()).optional(),
    employment_contract_type: z.nullable(z.lazy(() => exports.HrisCreateEmploymentRequestDtoEmploymentContractType$inboundSchema)).optional(),
    employment_type: z.nullable(z.lazy(() => exports.HrisCreateEmploymentRequestDtoEmploymentType$inboundSchema)).optional(),
    id: z.nullable(z.string()).optional(),
    job_title: z.nullable(z.string()).optional(),
    passthrough: z.nullable(z.record(z.any())).optional(),
    pay_currency: z.nullable(z.string()).optional(),
    pay_frequency: z.nullable(z.lazy(() => exports.HrisCreateEmploymentRequestDtoPayFrequency$inboundSchema)).optional(),
    pay_period: z.nullable(z.lazy(() => exports.HrisCreateEmploymentRequestDtoPayPeriod$inboundSchema)).optional(),
    pay_rate: z.nullable(z.string()).optional(),
    time_worked: z.nullable(z.string()).optional(),
    unified_custom_fields: z.nullable(z.record(z.any())).optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        "effective_date": "effectiveDate",
        "employee_id": "employeeId",
        "employment_contract_type": "employmentContractType",
        "employment_type": "employmentType",
        "job_title": "jobTitle",
        "pay_currency": "payCurrency",
        "pay_frequency": "payFrequency",
        "pay_period": "payPeriod",
        "pay_rate": "payRate",
        "time_worked": "timeWorked",
        "unified_custom_fields": "unifiedCustomFields",
    });
});
/** @internal */
exports.HrisCreateEmploymentRequestDto$outboundSchema = z.object({
    effectiveDate: z.nullable(z.date().transform(v => v.toISOString()))
        .optional(),
    employeeId: z.nullable(z.string()).optional(),
    employmentContractType: z.nullable(z.lazy(() => exports.HrisCreateEmploymentRequestDtoEmploymentContractType$outboundSchema)).optional(),
    employmentType: z.nullable(z.lazy(() => exports.HrisCreateEmploymentRequestDtoEmploymentType$outboundSchema)).optional(),
    id: z.nullable(z.string()).optional(),
    jobTitle: z.nullable(z.string()).optional(),
    passthrough: z.nullable(z.record(z.any())).optional(),
    payCurrency: z.nullable(z.string()).optional(),
    payFrequency: z.nullable(z.lazy(() => exports.HrisCreateEmploymentRequestDtoPayFrequency$outboundSchema)).optional(),
    payPeriod: z.nullable(z.lazy(() => exports.HrisCreateEmploymentRequestDtoPayPeriod$outboundSchema)).optional(),
    payRate: z.nullable(z.string()).optional(),
    timeWorked: z.nullable(z.string()).optional(),
    unifiedCustomFields: z.nullable(z.record(z.any())).optional(),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        effectiveDate: "effective_date",
        employeeId: "employee_id",
        employmentContractType: "employment_contract_type",
        employmentType: "employment_type",
        jobTitle: "job_title",
        payCurrency: "pay_currency",
        payFrequency: "pay_frequency",
        payPeriod: "pay_period",
        payRate: "pay_rate",
        timeWorked: "time_worked",
        unifiedCustomFields: "unified_custom_fields",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var HrisCreateEmploymentRequestDto$;
(function (HrisCreateEmploymentRequestDto$) {
    /** @deprecated use `HrisCreateEmploymentRequestDto$inboundSchema` instead. */
    HrisCreateEmploymentRequestDto$.inboundSchema = exports.HrisCreateEmploymentRequestDto$inboundSchema;
    /** @deprecated use `HrisCreateEmploymentRequestDto$outboundSchema` instead. */
    HrisCreateEmploymentRequestDto$.outboundSchema = exports.HrisCreateEmploymentRequestDto$outboundSchema;
})(HrisCreateEmploymentRequestDto$ || (exports.HrisCreateEmploymentRequestDto$ = HrisCreateEmploymentRequestDto$ = {}));
function hrisCreateEmploymentRequestDtoToJSON(hrisCreateEmploymentRequestDto) {
    return JSON.stringify(exports.HrisCreateEmploymentRequestDto$outboundSchema.parse(hrisCreateEmploymentRequestDto));
}
exports.hrisCreateEmploymentRequestDtoToJSON = hrisCreateEmploymentRequestDtoToJSON;
function hrisCreateEmploymentRequestDtoFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.HrisCreateEmploymentRequestDto$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'HrisCreateEmploymentRequestDto' from JSON`);
}
exports.hrisCreateEmploymentRequestDtoFromJSON = hrisCreateEmploymentRequestDtoFromJSON;
//# sourceMappingURL=hriscreateemploymentrequestdto.js.map