"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 () {
    var ownKeys = function(o) {
        ownKeys = Object.getOwnPropertyNames || function (o) {
            var ar = [];
            for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
            return ar;
        };
        return ownKeys(o);
    };
    return function (mod) {
        if (mod && mod.__esModule) return mod;
        var result = {};
        if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
        __setModuleDefault(result, mod);
        return result;
    };
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.CreateUserOrgResponse$inboundSchema = exports.CreateUserRoleResponseEnum$ = exports.CreateUserRoleResponseEnum$outboundSchema = exports.CreateUserRoleResponseEnum$inboundSchema = exports.CreateUserRoleTypeResponse$ = exports.CreateUserRoleTypeResponse$outboundSchema = exports.CreateUserRoleTypeResponse$inboundSchema = exports.CreateUserUserIdResponse$ = exports.CreateUserUserIdResponse$outboundSchema = exports.CreateUserUserIdResponse$inboundSchema = exports.CreateUserStatusResponse$ = exports.CreateUserStatusResponse$outboundSchema = exports.CreateUserStatusResponse$inboundSchema = exports.CreateUserRequest$ = exports.CreateUserRequest$outboundSchema = exports.CreateUserRequest$inboundSchema = exports.CreateUserUserRequest$ = exports.CreateUserUserRequest$outboundSchema = exports.CreateUserUserRequest$inboundSchema = exports.CreateUserAgentRequest$ = exports.CreateUserAgentRequest$outboundSchema = exports.CreateUserAgentRequest$inboundSchema = exports.CreateUserPrimaryOrgRequest$ = exports.CreateUserPrimaryOrgRequest$outboundSchema = exports.CreateUserPrimaryOrgRequest$inboundSchema = exports.CreateUserRoleRequest$ = exports.CreateUserRoleRequest$outboundSchema = exports.CreateUserRoleRequest$inboundSchema = exports.CreateUserOrgRequest$ = exports.CreateUserOrgRequest$outboundSchema = exports.CreateUserOrgRequest$inboundSchema = exports.CreateUserRoleRequestEnum$ = exports.CreateUserRoleRequestEnum$outboundSchema = exports.CreateUserRoleRequestEnum$inboundSchema = exports.CreateUserRoleTypeRequest$ = exports.CreateUserRoleTypeRequest$outboundSchema = exports.CreateUserRoleTypeRequest$inboundSchema = exports.CreateUserUserIdRequest$ = exports.CreateUserUserIdRequest$outboundSchema = exports.CreateUserUserIdRequest$inboundSchema = exports.CreateUserStatusRequest$ = exports.CreateUserStatusRequest$outboundSchema = exports.CreateUserStatusRequest$inboundSchema = exports.CreateUserType = exports.CreateUserRoleResponseEnum = exports.CreateUserRoleTypeResponse = exports.CreateUserStatusResponse = exports.CreateUserRoleRequestEnum = exports.CreateUserRoleTypeRequest = exports.CreateUserStatusRequest = void 0;
exports.CreateUserResponse$ = exports.CreateUserResponse$outboundSchema = exports.CreateUserResponse$inboundSchema = exports.CreateUserUserResponse$ = exports.CreateUserUserResponse$outboundSchema = exports.CreateUserUserResponse$inboundSchema = exports.CreateUserPrimaryOrgResponse$ = exports.CreateUserPrimaryOrgResponse$outboundSchema = exports.CreateUserPrimaryOrgResponse$inboundSchema = exports.CreateUserAgentResponse$ = exports.CreateUserAgentResponse$outboundSchema = exports.CreateUserAgentResponse$inboundSchema = exports.CreateUserType$ = exports.CreateUserType$outboundSchema = exports.CreateUserType$inboundSchema = exports.CreateUserRoleResponse$ = exports.CreateUserRoleResponse$outboundSchema = exports.CreateUserRoleResponse$inboundSchema = exports.CreateUserOrgResponse$ = exports.CreateUserOrgResponse$outboundSchema = void 0;
exports.createUserUserIdRequestToJSON = createUserUserIdRequestToJSON;
exports.createUserUserIdRequestFromJSON = createUserUserIdRequestFromJSON;
exports.createUserOrgRequestToJSON = createUserOrgRequestToJSON;
exports.createUserOrgRequestFromJSON = createUserOrgRequestFromJSON;
exports.createUserRoleRequestToJSON = createUserRoleRequestToJSON;
exports.createUserRoleRequestFromJSON = createUserRoleRequestFromJSON;
exports.createUserPrimaryOrgRequestToJSON = createUserPrimaryOrgRequestToJSON;
exports.createUserPrimaryOrgRequestFromJSON = createUserPrimaryOrgRequestFromJSON;
exports.createUserAgentRequestToJSON = createUserAgentRequestToJSON;
exports.createUserAgentRequestFromJSON = createUserAgentRequestFromJSON;
exports.createUserUserRequestToJSON = createUserUserRequestToJSON;
exports.createUserUserRequestFromJSON = createUserUserRequestFromJSON;
exports.createUserRequestToJSON = createUserRequestToJSON;
exports.createUserRequestFromJSON = createUserRequestFromJSON;
exports.createUserUserIdResponseToJSON = createUserUserIdResponseToJSON;
exports.createUserUserIdResponseFromJSON = createUserUserIdResponseFromJSON;
exports.createUserOrgResponseToJSON = createUserOrgResponseToJSON;
exports.createUserOrgResponseFromJSON = createUserOrgResponseFromJSON;
exports.createUserRoleResponseToJSON = createUserRoleResponseToJSON;
exports.createUserRoleResponseFromJSON = createUserRoleResponseFromJSON;
exports.createUserAgentResponseToJSON = createUserAgentResponseToJSON;
exports.createUserAgentResponseFromJSON = createUserAgentResponseFromJSON;
exports.createUserPrimaryOrgResponseToJSON = createUserPrimaryOrgResponseToJSON;
exports.createUserPrimaryOrgResponseFromJSON = createUserPrimaryOrgResponseFromJSON;
exports.createUserUserResponseToJSON = createUserUserResponseToJSON;
exports.createUserUserResponseFromJSON = createUserUserResponseFromJSON;
exports.createUserResponseToJSON = createUserResponseToJSON;
exports.createUserResponseFromJSON = createUserResponseFromJSON;
const z = __importStar(require("zod"));
const schemas_js_1 = require("../../lib/schemas.js");
exports.CreateUserStatusRequest = {
    Active: "active",
    Tobedeleted: "tobedeleted",
};
exports.CreateUserRoleTypeRequest = {
    Primary: "primary",
    Secondary: "secondary",
};
exports.CreateUserRoleRequestEnum = {
    Administrator: "administrator",
    Aide: "aide",
    Guardian: "guardian",
    Parent: "parent",
    Proctor: "proctor",
    Relative: "relative",
    Student: "student",
    Teacher: "teacher",
};
exports.CreateUserStatusResponse = {
    Active: "active",
    Tobedeleted: "tobedeleted",
};
exports.CreateUserRoleTypeResponse = {
    Primary: "primary",
    Secondary: "secondary",
};
exports.CreateUserRoleResponseEnum = {
    Administrator: "administrator",
    Aide: "aide",
    Guardian: "guardian",
    Parent: "parent",
    Proctor: "proctor",
    Relative: "relative",
    Student: "student",
    Teacher: "teacher",
};
exports.CreateUserType = {
    AcademicSession: "academicSession",
    AssessmentLineItem: "assessmentLineItem",
    Category: "category",
    Class: "class",
    Course: "course",
    Demographics: "demographics",
    Enrollment: "enrollment",
    GradingPeriod: "gradingPeriod",
    LineItem: "lineItem",
    Org: "org",
    Resource: "resource",
    Result: "result",
    ScoreScale: "scoreScale",
    Student: "student",
    Teacher: "teacher",
    Term: "term",
    User: "user",
    ComponentResource: "componentResource",
    CourseComponent: "courseComponent",
};
/** @internal */
exports.CreateUserStatusRequest$inboundSchema = z.nativeEnum(exports.CreateUserStatusRequest);
/** @internal */
exports.CreateUserStatusRequest$outboundSchema = exports.CreateUserStatusRequest$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserStatusRequest$;
(function (CreateUserStatusRequest$) {
    /** @deprecated use `CreateUserStatusRequest$inboundSchema` instead. */
    CreateUserStatusRequest$.inboundSchema = exports.CreateUserStatusRequest$inboundSchema;
    /** @deprecated use `CreateUserStatusRequest$outboundSchema` instead. */
    CreateUserStatusRequest$.outboundSchema = exports.CreateUserStatusRequest$outboundSchema;
})(CreateUserStatusRequest$ || (exports.CreateUserStatusRequest$ = CreateUserStatusRequest$ = {}));
/** @internal */
exports.CreateUserUserIdRequest$inboundSchema = z.object({
    type: z.string(),
    identifier: z.string(),
});
/** @internal */
exports.CreateUserUserIdRequest$outboundSchema = z.object({
    type: z.string(),
    identifier: z.string(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserUserIdRequest$;
(function (CreateUserUserIdRequest$) {
    /** @deprecated use `CreateUserUserIdRequest$inboundSchema` instead. */
    CreateUserUserIdRequest$.inboundSchema = exports.CreateUserUserIdRequest$inboundSchema;
    /** @deprecated use `CreateUserUserIdRequest$outboundSchema` instead. */
    CreateUserUserIdRequest$.outboundSchema = exports.CreateUserUserIdRequest$outboundSchema;
})(CreateUserUserIdRequest$ || (exports.CreateUserUserIdRequest$ = CreateUserUserIdRequest$ = {}));
function createUserUserIdRequestToJSON(createUserUserIdRequest) {
    return JSON.stringify(exports.CreateUserUserIdRequest$outboundSchema.parse(createUserUserIdRequest));
}
function createUserUserIdRequestFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserUserIdRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserUserIdRequest' from JSON`);
}
/** @internal */
exports.CreateUserRoleTypeRequest$inboundSchema = z.nativeEnum(exports.CreateUserRoleTypeRequest);
/** @internal */
exports.CreateUserRoleTypeRequest$outboundSchema = exports.CreateUserRoleTypeRequest$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserRoleTypeRequest$;
(function (CreateUserRoleTypeRequest$) {
    /** @deprecated use `CreateUserRoleTypeRequest$inboundSchema` instead. */
    CreateUserRoleTypeRequest$.inboundSchema = exports.CreateUserRoleTypeRequest$inboundSchema;
    /** @deprecated use `CreateUserRoleTypeRequest$outboundSchema` instead. */
    CreateUserRoleTypeRequest$.outboundSchema = exports.CreateUserRoleTypeRequest$outboundSchema;
})(CreateUserRoleTypeRequest$ || (exports.CreateUserRoleTypeRequest$ = CreateUserRoleTypeRequest$ = {}));
/** @internal */
exports.CreateUserRoleRequestEnum$inboundSchema = z.nativeEnum(exports.CreateUserRoleRequestEnum);
/** @internal */
exports.CreateUserRoleRequestEnum$outboundSchema = exports.CreateUserRoleRequestEnum$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserRoleRequestEnum$;
(function (CreateUserRoleRequestEnum$) {
    /** @deprecated use `CreateUserRoleRequestEnum$inboundSchema` instead. */
    CreateUserRoleRequestEnum$.inboundSchema = exports.CreateUserRoleRequestEnum$inboundSchema;
    /** @deprecated use `CreateUserRoleRequestEnum$outboundSchema` instead. */
    CreateUserRoleRequestEnum$.outboundSchema = exports.CreateUserRoleRequestEnum$outboundSchema;
})(CreateUserRoleRequestEnum$ || (exports.CreateUserRoleRequestEnum$ = CreateUserRoleRequestEnum$ = {}));
/** @internal */
exports.CreateUserOrgRequest$inboundSchema = z.object({
    sourcedId: z.string(),
});
/** @internal */
exports.CreateUserOrgRequest$outboundSchema = z.object({
    sourcedId: z.string(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserOrgRequest$;
(function (CreateUserOrgRequest$) {
    /** @deprecated use `CreateUserOrgRequest$inboundSchema` instead. */
    CreateUserOrgRequest$.inboundSchema = exports.CreateUserOrgRequest$inboundSchema;
    /** @deprecated use `CreateUserOrgRequest$outboundSchema` instead. */
    CreateUserOrgRequest$.outboundSchema = exports.CreateUserOrgRequest$outboundSchema;
})(CreateUserOrgRequest$ || (exports.CreateUserOrgRequest$ = CreateUserOrgRequest$ = {}));
function createUserOrgRequestToJSON(createUserOrgRequest) {
    return JSON.stringify(exports.CreateUserOrgRequest$outboundSchema.parse(createUserOrgRequest));
}
function createUserOrgRequestFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserOrgRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserOrgRequest' from JSON`);
}
/** @internal */
exports.CreateUserRoleRequest$inboundSchema = z.object({
    roleType: exports.CreateUserRoleTypeRequest$inboundSchema,
    role: exports.CreateUserRoleRequestEnum$inboundSchema,
    org: z.lazy(() => exports.CreateUserOrgRequest$inboundSchema),
    userProfile: z.string().optional(),
    beginDate: z.string().optional(),
    endDate: z.string().optional(),
});
/** @internal */
exports.CreateUserRoleRequest$outboundSchema = z.object({
    roleType: exports.CreateUserRoleTypeRequest$outboundSchema,
    role: exports.CreateUserRoleRequestEnum$outboundSchema,
    org: z.lazy(() => exports.CreateUserOrgRequest$outboundSchema),
    userProfile: z.string().optional(),
    beginDate: z.string().optional(),
    endDate: z.string().optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserRoleRequest$;
(function (CreateUserRoleRequest$) {
    /** @deprecated use `CreateUserRoleRequest$inboundSchema` instead. */
    CreateUserRoleRequest$.inboundSchema = exports.CreateUserRoleRequest$inboundSchema;
    /** @deprecated use `CreateUserRoleRequest$outboundSchema` instead. */
    CreateUserRoleRequest$.outboundSchema = exports.CreateUserRoleRequest$outboundSchema;
})(CreateUserRoleRequest$ || (exports.CreateUserRoleRequest$ = CreateUserRoleRequest$ = {}));
function createUserRoleRequestToJSON(createUserRoleRequest) {
    return JSON.stringify(exports.CreateUserRoleRequest$outboundSchema.parse(createUserRoleRequest));
}
function createUserRoleRequestFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserRoleRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserRoleRequest' from JSON`);
}
/** @internal */
exports.CreateUserPrimaryOrgRequest$inboundSchema = z.object({
    sourcedId: z.string(),
});
/** @internal */
exports.CreateUserPrimaryOrgRequest$outboundSchema = z.object({
    sourcedId: z.string(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserPrimaryOrgRequest$;
(function (CreateUserPrimaryOrgRequest$) {
    /** @deprecated use `CreateUserPrimaryOrgRequest$inboundSchema` instead. */
    CreateUserPrimaryOrgRequest$.inboundSchema = exports.CreateUserPrimaryOrgRequest$inboundSchema;
    /** @deprecated use `CreateUserPrimaryOrgRequest$outboundSchema` instead. */
    CreateUserPrimaryOrgRequest$.outboundSchema = exports.CreateUserPrimaryOrgRequest$outboundSchema;
})(CreateUserPrimaryOrgRequest$ || (exports.CreateUserPrimaryOrgRequest$ = CreateUserPrimaryOrgRequest$ = {}));
function createUserPrimaryOrgRequestToJSON(createUserPrimaryOrgRequest) {
    return JSON.stringify(exports.CreateUserPrimaryOrgRequest$outboundSchema.parse(createUserPrimaryOrgRequest));
}
function createUserPrimaryOrgRequestFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserPrimaryOrgRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserPrimaryOrgRequest' from JSON`);
}
/** @internal */
exports.CreateUserAgentRequest$inboundSchema = z.object({
    sourcedId: z.string(),
});
/** @internal */
exports.CreateUserAgentRequest$outboundSchema = z.object({
    sourcedId: z.string(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserAgentRequest$;
(function (CreateUserAgentRequest$) {
    /** @deprecated use `CreateUserAgentRequest$inboundSchema` instead. */
    CreateUserAgentRequest$.inboundSchema = exports.CreateUserAgentRequest$inboundSchema;
    /** @deprecated use `CreateUserAgentRequest$outboundSchema` instead. */
    CreateUserAgentRequest$.outboundSchema = exports.CreateUserAgentRequest$outboundSchema;
})(CreateUserAgentRequest$ || (exports.CreateUserAgentRequest$ = CreateUserAgentRequest$ = {}));
function createUserAgentRequestToJSON(createUserAgentRequest) {
    return JSON.stringify(exports.CreateUserAgentRequest$outboundSchema.parse(createUserAgentRequest));
}
function createUserAgentRequestFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserAgentRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserAgentRequest' from JSON`);
}
/** @internal */
exports.CreateUserUserRequest$inboundSchema = z.object({
    sourcedId: z.string().optional(),
    metadata: z.record(z.any()).optional(),
    status: exports.CreateUserStatusRequest$inboundSchema.default("active"),
    userMasterIdentifier: z.nullable(z.string()).optional(),
    username: z.nullable(z.string()).optional(),
    userIds: z.array(z.lazy(() => exports.CreateUserUserIdRequest$inboundSchema))
        .optional(),
    enabledUser: z.boolean(),
    givenName: z.string(),
    familyName: z.string(),
    middleName: z.nullable(z.string()).optional(),
    roles: z.array(z.lazy(() => exports.CreateUserRoleRequest$inboundSchema)),
    primaryOrg: z.lazy(() => exports.CreateUserPrimaryOrgRequest$inboundSchema)
        .optional(),
    email: z.nullable(z.string()).optional(),
    preferredFirstName: z.nullable(z.string()).optional(),
    preferredMiddleName: z.nullable(z.string()).optional(),
    preferredLastName: z.nullable(z.string()).optional(),
    pronouns: z.nullable(z.string()).optional(),
    grades: z.array(z.string()).optional(),
    password: z.nullable(z.string()).optional(),
    sms: z.nullable(z.string()).optional(),
    phone: z.nullable(z.string()).optional(),
    agents: z.array(z.lazy(() => exports.CreateUserAgentRequest$inboundSchema))
        .optional(),
});
/** @internal */
exports.CreateUserUserRequest$outboundSchema = z.object({
    sourcedId: z.string().optional(),
    metadata: z.record(z.any()).optional(),
    status: exports.CreateUserStatusRequest$outboundSchema.default("active"),
    userMasterIdentifier: z.nullable(z.string()).optional(),
    username: z.nullable(z.string()).optional(),
    userIds: z.array(z.lazy(() => exports.CreateUserUserIdRequest$outboundSchema))
        .optional(),
    enabledUser: z.boolean(),
    givenName: z.string(),
    familyName: z.string(),
    middleName: z.nullable(z.string()).optional(),
    roles: z.array(z.lazy(() => exports.CreateUserRoleRequest$outboundSchema)),
    primaryOrg: z.lazy(() => exports.CreateUserPrimaryOrgRequest$outboundSchema)
        .optional(),
    email: z.nullable(z.string()).optional(),
    preferredFirstName: z.nullable(z.string()).optional(),
    preferredMiddleName: z.nullable(z.string()).optional(),
    preferredLastName: z.nullable(z.string()).optional(),
    pronouns: z.nullable(z.string()).optional(),
    grades: z.array(z.string()).optional(),
    password: z.nullable(z.string()).optional(),
    sms: z.nullable(z.string()).optional(),
    phone: z.nullable(z.string()).optional(),
    agents: z.array(z.lazy(() => exports.CreateUserAgentRequest$outboundSchema))
        .optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserUserRequest$;
(function (CreateUserUserRequest$) {
    /** @deprecated use `CreateUserUserRequest$inboundSchema` instead. */
    CreateUserUserRequest$.inboundSchema = exports.CreateUserUserRequest$inboundSchema;
    /** @deprecated use `CreateUserUserRequest$outboundSchema` instead. */
    CreateUserUserRequest$.outboundSchema = exports.CreateUserUserRequest$outboundSchema;
})(CreateUserUserRequest$ || (exports.CreateUserUserRequest$ = CreateUserUserRequest$ = {}));
function createUserUserRequestToJSON(createUserUserRequest) {
    return JSON.stringify(exports.CreateUserUserRequest$outboundSchema.parse(createUserUserRequest));
}
function createUserUserRequestFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserUserRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserUserRequest' from JSON`);
}
/** @internal */
exports.CreateUserRequest$inboundSchema = z.object({
    user: z.lazy(() => exports.CreateUserUserRequest$inboundSchema),
});
/** @internal */
exports.CreateUserRequest$outboundSchema = z.object({
    user: z.lazy(() => exports.CreateUserUserRequest$outboundSchema),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserRequest$;
(function (CreateUserRequest$) {
    /** @deprecated use `CreateUserRequest$inboundSchema` instead. */
    CreateUserRequest$.inboundSchema = exports.CreateUserRequest$inboundSchema;
    /** @deprecated use `CreateUserRequest$outboundSchema` instead. */
    CreateUserRequest$.outboundSchema = exports.CreateUserRequest$outboundSchema;
})(CreateUserRequest$ || (exports.CreateUserRequest$ = CreateUserRequest$ = {}));
function createUserRequestToJSON(createUserRequest) {
    return JSON.stringify(exports.CreateUserRequest$outboundSchema.parse(createUserRequest));
}
function createUserRequestFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserRequest' from JSON`);
}
/** @internal */
exports.CreateUserStatusResponse$inboundSchema = z.nativeEnum(exports.CreateUserStatusResponse);
/** @internal */
exports.CreateUserStatusResponse$outboundSchema = exports.CreateUserStatusResponse$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserStatusResponse$;
(function (CreateUserStatusResponse$) {
    /** @deprecated use `CreateUserStatusResponse$inboundSchema` instead. */
    CreateUserStatusResponse$.inboundSchema = exports.CreateUserStatusResponse$inboundSchema;
    /** @deprecated use `CreateUserStatusResponse$outboundSchema` instead. */
    CreateUserStatusResponse$.outboundSchema = exports.CreateUserStatusResponse$outboundSchema;
})(CreateUserStatusResponse$ || (exports.CreateUserStatusResponse$ = CreateUserStatusResponse$ = {}));
/** @internal */
exports.CreateUserUserIdResponse$inboundSchema = z.object({
    type: z.string(),
    identifier: z.string(),
});
/** @internal */
exports.CreateUserUserIdResponse$outboundSchema = z.object({
    type: z.string(),
    identifier: z.string(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserUserIdResponse$;
(function (CreateUserUserIdResponse$) {
    /** @deprecated use `CreateUserUserIdResponse$inboundSchema` instead. */
    CreateUserUserIdResponse$.inboundSchema = exports.CreateUserUserIdResponse$inboundSchema;
    /** @deprecated use `CreateUserUserIdResponse$outboundSchema` instead. */
    CreateUserUserIdResponse$.outboundSchema = exports.CreateUserUserIdResponse$outboundSchema;
})(CreateUserUserIdResponse$ || (exports.CreateUserUserIdResponse$ = CreateUserUserIdResponse$ = {}));
function createUserUserIdResponseToJSON(createUserUserIdResponse) {
    return JSON.stringify(exports.CreateUserUserIdResponse$outboundSchema.parse(createUserUserIdResponse));
}
function createUserUserIdResponseFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserUserIdResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserUserIdResponse' from JSON`);
}
/** @internal */
exports.CreateUserRoleTypeResponse$inboundSchema = z.nativeEnum(exports.CreateUserRoleTypeResponse);
/** @internal */
exports.CreateUserRoleTypeResponse$outboundSchema = exports.CreateUserRoleTypeResponse$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserRoleTypeResponse$;
(function (CreateUserRoleTypeResponse$) {
    /** @deprecated use `CreateUserRoleTypeResponse$inboundSchema` instead. */
    CreateUserRoleTypeResponse$.inboundSchema = exports.CreateUserRoleTypeResponse$inboundSchema;
    /** @deprecated use `CreateUserRoleTypeResponse$outboundSchema` instead. */
    CreateUserRoleTypeResponse$.outboundSchema = exports.CreateUserRoleTypeResponse$outboundSchema;
})(CreateUserRoleTypeResponse$ || (exports.CreateUserRoleTypeResponse$ = CreateUserRoleTypeResponse$ = {}));
/** @internal */
exports.CreateUserRoleResponseEnum$inboundSchema = z.nativeEnum(exports.CreateUserRoleResponseEnum);
/** @internal */
exports.CreateUserRoleResponseEnum$outboundSchema = exports.CreateUserRoleResponseEnum$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserRoleResponseEnum$;
(function (CreateUserRoleResponseEnum$) {
    /** @deprecated use `CreateUserRoleResponseEnum$inboundSchema` instead. */
    CreateUserRoleResponseEnum$.inboundSchema = exports.CreateUserRoleResponseEnum$inboundSchema;
    /** @deprecated use `CreateUserRoleResponseEnum$outboundSchema` instead. */
    CreateUserRoleResponseEnum$.outboundSchema = exports.CreateUserRoleResponseEnum$outboundSchema;
})(CreateUserRoleResponseEnum$ || (exports.CreateUserRoleResponseEnum$ = CreateUserRoleResponseEnum$ = {}));
/** @internal */
exports.CreateUserOrgResponse$inboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: z.string(),
});
/** @internal */
exports.CreateUserOrgResponse$outboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: z.string(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserOrgResponse$;
(function (CreateUserOrgResponse$) {
    /** @deprecated use `CreateUserOrgResponse$inboundSchema` instead. */
    CreateUserOrgResponse$.inboundSchema = exports.CreateUserOrgResponse$inboundSchema;
    /** @deprecated use `CreateUserOrgResponse$outboundSchema` instead. */
    CreateUserOrgResponse$.outboundSchema = exports.CreateUserOrgResponse$outboundSchema;
})(CreateUserOrgResponse$ || (exports.CreateUserOrgResponse$ = CreateUserOrgResponse$ = {}));
function createUserOrgResponseToJSON(createUserOrgResponse) {
    return JSON.stringify(exports.CreateUserOrgResponse$outboundSchema.parse(createUserOrgResponse));
}
function createUserOrgResponseFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserOrgResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserOrgResponse' from JSON`);
}
/** @internal */
exports.CreateUserRoleResponse$inboundSchema = z.object({
    roleType: exports.CreateUserRoleTypeResponse$inboundSchema,
    role: exports.CreateUserRoleResponseEnum$inboundSchema,
    org: z.lazy(() => exports.CreateUserOrgResponse$inboundSchema),
    userProfile: z.string().optional(),
    beginDate: z.nullable(z.string()),
    endDate: z.nullable(z.string()),
});
/** @internal */
exports.CreateUserRoleResponse$outboundSchema = z.object({
    roleType: exports.CreateUserRoleTypeResponse$outboundSchema,
    role: exports.CreateUserRoleResponseEnum$outboundSchema,
    org: z.lazy(() => exports.CreateUserOrgResponse$outboundSchema),
    userProfile: z.string().optional(),
    beginDate: z.nullable(z.string()),
    endDate: z.nullable(z.string()),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserRoleResponse$;
(function (CreateUserRoleResponse$) {
    /** @deprecated use `CreateUserRoleResponse$inboundSchema` instead. */
    CreateUserRoleResponse$.inboundSchema = exports.CreateUserRoleResponse$inboundSchema;
    /** @deprecated use `CreateUserRoleResponse$outboundSchema` instead. */
    CreateUserRoleResponse$.outboundSchema = exports.CreateUserRoleResponse$outboundSchema;
})(CreateUserRoleResponse$ || (exports.CreateUserRoleResponse$ = CreateUserRoleResponse$ = {}));
function createUserRoleResponseToJSON(createUserRoleResponse) {
    return JSON.stringify(exports.CreateUserRoleResponse$outboundSchema.parse(createUserRoleResponse));
}
function createUserRoleResponseFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserRoleResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserRoleResponse' from JSON`);
}
/** @internal */
exports.CreateUserType$inboundSchema = z.nativeEnum(exports.CreateUserType);
/** @internal */
exports.CreateUserType$outboundSchema = exports.CreateUserType$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserType$;
(function (CreateUserType$) {
    /** @deprecated use `CreateUserType$inboundSchema` instead. */
    CreateUserType$.inboundSchema = exports.CreateUserType$inboundSchema;
    /** @deprecated use `CreateUserType$outboundSchema` instead. */
    CreateUserType$.outboundSchema = exports.CreateUserType$outboundSchema;
})(CreateUserType$ || (exports.CreateUserType$ = CreateUserType$ = {}));
/** @internal */
exports.CreateUserAgentResponse$inboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: exports.CreateUserType$inboundSchema,
});
/** @internal */
exports.CreateUserAgentResponse$outboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: exports.CreateUserType$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserAgentResponse$;
(function (CreateUserAgentResponse$) {
    /** @deprecated use `CreateUserAgentResponse$inboundSchema` instead. */
    CreateUserAgentResponse$.inboundSchema = exports.CreateUserAgentResponse$inboundSchema;
    /** @deprecated use `CreateUserAgentResponse$outboundSchema` instead. */
    CreateUserAgentResponse$.outboundSchema = exports.CreateUserAgentResponse$outboundSchema;
})(CreateUserAgentResponse$ || (exports.CreateUserAgentResponse$ = CreateUserAgentResponse$ = {}));
function createUserAgentResponseToJSON(createUserAgentResponse) {
    return JSON.stringify(exports.CreateUserAgentResponse$outboundSchema.parse(createUserAgentResponse));
}
function createUserAgentResponseFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserAgentResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserAgentResponse' from JSON`);
}
/** @internal */
exports.CreateUserPrimaryOrgResponse$inboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: z.string(),
});
/** @internal */
exports.CreateUserPrimaryOrgResponse$outboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: z.string(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserPrimaryOrgResponse$;
(function (CreateUserPrimaryOrgResponse$) {
    /** @deprecated use `CreateUserPrimaryOrgResponse$inboundSchema` instead. */
    CreateUserPrimaryOrgResponse$.inboundSchema = exports.CreateUserPrimaryOrgResponse$inboundSchema;
    /** @deprecated use `CreateUserPrimaryOrgResponse$outboundSchema` instead. */
    CreateUserPrimaryOrgResponse$.outboundSchema = exports.CreateUserPrimaryOrgResponse$outboundSchema;
})(CreateUserPrimaryOrgResponse$ || (exports.CreateUserPrimaryOrgResponse$ = CreateUserPrimaryOrgResponse$ = {}));
function createUserPrimaryOrgResponseToJSON(createUserPrimaryOrgResponse) {
    return JSON.stringify(exports.CreateUserPrimaryOrgResponse$outboundSchema.parse(createUserPrimaryOrgResponse));
}
function createUserPrimaryOrgResponseFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserPrimaryOrgResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserPrimaryOrgResponse' from JSON`);
}
/** @internal */
exports.CreateUserUserResponse$inboundSchema = z.object({
    sourcedId: z.string(),
    status: exports.CreateUserStatusResponse$inboundSchema,
    dateLastModified: z.string().datetime({ offset: true }).transform(v => new Date(v)).optional(),
    metadata: z.nullable(z.record(z.any())).optional(),
    userMasterIdentifier: z.nullable(z.string()).optional(),
    username: z.nullable(z.string()).optional(),
    userIds: z.array(z.lazy(() => exports.CreateUserUserIdResponse$inboundSchema))
        .optional(),
    enabledUser: z.boolean(),
    givenName: z.string(),
    familyName: z.string(),
    middleName: z.nullable(z.string()).optional(),
    roles: z.array(z.lazy(() => exports.CreateUserRoleResponse$inboundSchema)),
    agents: z.array(z.lazy(() => exports.CreateUserAgentResponse$inboundSchema)),
    primaryOrg: z.lazy(() => exports.CreateUserPrimaryOrgResponse$inboundSchema)
        .optional(),
    email: z.nullable(z.string()).optional(),
    preferredFirstName: z.nullable(z.string()).optional(),
    preferredMiddleName: z.nullable(z.string()).optional(),
    preferredLastName: z.nullable(z.string()).optional(),
    pronouns: z.nullable(z.string()).optional(),
    grades: z.array(z.string()).optional(),
    password: z.nullable(z.string()).optional(),
    sms: z.nullable(z.string()).optional(),
    phone: z.nullable(z.string()).optional(),
});
/** @internal */
exports.CreateUserUserResponse$outboundSchema = z.object({
    sourcedId: z.string(),
    status: exports.CreateUserStatusResponse$outboundSchema,
    dateLastModified: z.date().transform(v => v.toISOString()).optional(),
    metadata: z.nullable(z.record(z.any())).optional(),
    userMasterIdentifier: z.nullable(z.string()).optional(),
    username: z.nullable(z.string()).optional(),
    userIds: z.array(z.lazy(() => exports.CreateUserUserIdResponse$outboundSchema))
        .optional(),
    enabledUser: z.boolean(),
    givenName: z.string(),
    familyName: z.string(),
    middleName: z.nullable(z.string()).optional(),
    roles: z.array(z.lazy(() => exports.CreateUserRoleResponse$outboundSchema)),
    agents: z.array(z.lazy(() => exports.CreateUserAgentResponse$outboundSchema)),
    primaryOrg: z.lazy(() => exports.CreateUserPrimaryOrgResponse$outboundSchema)
        .optional(),
    email: z.nullable(z.string()).optional(),
    preferredFirstName: z.nullable(z.string()).optional(),
    preferredMiddleName: z.nullable(z.string()).optional(),
    preferredLastName: z.nullable(z.string()).optional(),
    pronouns: z.nullable(z.string()).optional(),
    grades: z.array(z.string()).optional(),
    password: z.nullable(z.string()).optional(),
    sms: z.nullable(z.string()).optional(),
    phone: z.nullable(z.string()).optional(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserUserResponse$;
(function (CreateUserUserResponse$) {
    /** @deprecated use `CreateUserUserResponse$inboundSchema` instead. */
    CreateUserUserResponse$.inboundSchema = exports.CreateUserUserResponse$inboundSchema;
    /** @deprecated use `CreateUserUserResponse$outboundSchema` instead. */
    CreateUserUserResponse$.outboundSchema = exports.CreateUserUserResponse$outboundSchema;
})(CreateUserUserResponse$ || (exports.CreateUserUserResponse$ = CreateUserUserResponse$ = {}));
function createUserUserResponseToJSON(createUserUserResponse) {
    return JSON.stringify(exports.CreateUserUserResponse$outboundSchema.parse(createUserUserResponse));
}
function createUserUserResponseFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserUserResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserUserResponse' from JSON`);
}
/** @internal */
exports.CreateUserResponse$inboundSchema = z.object({
    user: z.lazy(() => exports.CreateUserUserResponse$inboundSchema),
});
/** @internal */
exports.CreateUserResponse$outboundSchema = z.object({
    user: z.lazy(() => exports.CreateUserUserResponse$outboundSchema),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var CreateUserResponse$;
(function (CreateUserResponse$) {
    /** @deprecated use `CreateUserResponse$inboundSchema` instead. */
    CreateUserResponse$.inboundSchema = exports.CreateUserResponse$inboundSchema;
    /** @deprecated use `CreateUserResponse$outboundSchema` instead. */
    CreateUserResponse$.outboundSchema = exports.CreateUserResponse$outboundSchema;
})(CreateUserResponse$ || (exports.CreateUserResponse$ = CreateUserResponse$ = {}));
function createUserResponseToJSON(createUserResponse) {
    return JSON.stringify(exports.CreateUserResponse$outboundSchema.parse(createUserResponse));
}
function createUserResponseFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.CreateUserResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'CreateUserResponse' from JSON`);
}
//# sourceMappingURL=createuser.js.map