"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.GetTeachersForSchoolResponse$ = exports.GetTeachersForSchoolResponse$outboundSchema = exports.GetTeachersForSchoolResponse$inboundSchema = exports.GetTeachersForSchoolResponseBody$ = exports.GetTeachersForSchoolResponseBody$outboundSchema = exports.GetTeachersForSchoolResponseBody$inboundSchema = exports.GetTeachersForSchoolUser$ = exports.GetTeachersForSchoolUser$outboundSchema = exports.GetTeachersForSchoolUser$inboundSchema = exports.GetTeachersForSchoolPrimaryOrg$ = exports.GetTeachersForSchoolPrimaryOrg$outboundSchema = exports.GetTeachersForSchoolPrimaryOrg$inboundSchema = exports.GetTeachersForSchoolAgent$ = exports.GetTeachersForSchoolAgent$outboundSchema = exports.GetTeachersForSchoolAgent$inboundSchema = exports.GetTeachersForSchoolType$ = exports.GetTeachersForSchoolType$outboundSchema = exports.GetTeachersForSchoolType$inboundSchema = exports.GetTeachersForSchoolRole$ = exports.GetTeachersForSchoolRole$outboundSchema = exports.GetTeachersForSchoolRole$inboundSchema = exports.GetTeachersForSchoolOrg$ = exports.GetTeachersForSchoolOrg$outboundSchema = exports.GetTeachersForSchoolOrg$inboundSchema = exports.GetTeachersForSchoolRoleEnum$ = exports.GetTeachersForSchoolRoleEnum$outboundSchema = exports.GetTeachersForSchoolRoleEnum$inboundSchema = exports.GetTeachersForSchoolRoleType$ = exports.GetTeachersForSchoolRoleType$outboundSchema = exports.GetTeachersForSchoolRoleType$inboundSchema = exports.GetTeachersForSchoolUserId$ = exports.GetTeachersForSchoolUserId$outboundSchema = exports.GetTeachersForSchoolUserId$inboundSchema = exports.GetTeachersForSchoolStatus$ = exports.GetTeachersForSchoolStatus$outboundSchema = exports.GetTeachersForSchoolStatus$inboundSchema = exports.GetTeachersForSchoolRequest$ = exports.GetTeachersForSchoolRequest$outboundSchema = exports.GetTeachersForSchoolRequest$inboundSchema = exports.GetTeachersForSchoolOrderBy$ = exports.GetTeachersForSchoolOrderBy$outboundSchema = exports.GetTeachersForSchoolOrderBy$inboundSchema = exports.GetTeachersForSchoolType = exports.GetTeachersForSchoolRoleEnum = exports.GetTeachersForSchoolRoleType = exports.GetTeachersForSchoolStatus = exports.GetTeachersForSchoolOrderBy = void 0;
exports.getTeachersForSchoolRequestToJSON = getTeachersForSchoolRequestToJSON;
exports.getTeachersForSchoolRequestFromJSON = getTeachersForSchoolRequestFromJSON;
exports.getTeachersForSchoolUserIdToJSON = getTeachersForSchoolUserIdToJSON;
exports.getTeachersForSchoolUserIdFromJSON = getTeachersForSchoolUserIdFromJSON;
exports.getTeachersForSchoolOrgToJSON = getTeachersForSchoolOrgToJSON;
exports.getTeachersForSchoolOrgFromJSON = getTeachersForSchoolOrgFromJSON;
exports.getTeachersForSchoolRoleToJSON = getTeachersForSchoolRoleToJSON;
exports.getTeachersForSchoolRoleFromJSON = getTeachersForSchoolRoleFromJSON;
exports.getTeachersForSchoolAgentToJSON = getTeachersForSchoolAgentToJSON;
exports.getTeachersForSchoolAgentFromJSON = getTeachersForSchoolAgentFromJSON;
exports.getTeachersForSchoolPrimaryOrgToJSON = getTeachersForSchoolPrimaryOrgToJSON;
exports.getTeachersForSchoolPrimaryOrgFromJSON = getTeachersForSchoolPrimaryOrgFromJSON;
exports.getTeachersForSchoolUserToJSON = getTeachersForSchoolUserToJSON;
exports.getTeachersForSchoolUserFromJSON = getTeachersForSchoolUserFromJSON;
exports.getTeachersForSchoolResponseBodyToJSON = getTeachersForSchoolResponseBodyToJSON;
exports.getTeachersForSchoolResponseBodyFromJSON = getTeachersForSchoolResponseBodyFromJSON;
exports.getTeachersForSchoolResponseToJSON = getTeachersForSchoolResponseToJSON;
exports.getTeachersForSchoolResponseFromJSON = getTeachersForSchoolResponseFromJSON;
const z = __importStar(require("zod"));
const primitives_js_1 = require("../../lib/primitives.js");
const schemas_js_1 = require("../../lib/schemas.js");
/**
 * The order to sort the response by
 */
exports.GetTeachersForSchoolOrderBy = {
    Asc: "asc",
    Desc: "desc",
};
exports.GetTeachersForSchoolStatus = {
    Active: "active",
    Tobedeleted: "tobedeleted",
};
exports.GetTeachersForSchoolRoleType = {
    Primary: "primary",
    Secondary: "secondary",
};
exports.GetTeachersForSchoolRoleEnum = {
    Administrator: "administrator",
    Aide: "aide",
    Guardian: "guardian",
    Parent: "parent",
    Proctor: "proctor",
    Relative: "relative",
    Student: "student",
    Teacher: "teacher",
};
exports.GetTeachersForSchoolType = {
    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.GetTeachersForSchoolOrderBy$inboundSchema = z.nativeEnum(exports.GetTeachersForSchoolOrderBy);
/** @internal */
exports.GetTeachersForSchoolOrderBy$outboundSchema = exports.GetTeachersForSchoolOrderBy$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var GetTeachersForSchoolOrderBy$;
(function (GetTeachersForSchoolOrderBy$) {
    /** @deprecated use `GetTeachersForSchoolOrderBy$inboundSchema` instead. */
    GetTeachersForSchoolOrderBy$.inboundSchema = exports.GetTeachersForSchoolOrderBy$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolOrderBy$outboundSchema` instead. */
    GetTeachersForSchoolOrderBy$.outboundSchema = exports.GetTeachersForSchoolOrderBy$outboundSchema;
})(GetTeachersForSchoolOrderBy$ || (exports.GetTeachersForSchoolOrderBy$ = GetTeachersForSchoolOrderBy$ = {}));
/** @internal */
exports.GetTeachersForSchoolRequest$inboundSchema = z.object({
    schoolSourcedId: z.string(),
    fields: z.string().optional(),
    limit: z.number().int().default(100),
    offset: z.number().int().default(0),
    sort: z.string().optional(),
    orderBy: exports.GetTeachersForSchoolOrderBy$inboundSchema.optional(),
    filter: z.string().optional(),
    search: z.string().optional(),
});
/** @internal */
exports.GetTeachersForSchoolRequest$outboundSchema = z.object({
    schoolSourcedId: z.string(),
    fields: z.string().optional(),
    limit: z.number().int().default(100),
    offset: z.number().int().default(0),
    sort: z.string().optional(),
    orderBy: exports.GetTeachersForSchoolOrderBy$outboundSchema.optional(),
    filter: z.string().optional(),
    search: 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 GetTeachersForSchoolRequest$;
(function (GetTeachersForSchoolRequest$) {
    /** @deprecated use `GetTeachersForSchoolRequest$inboundSchema` instead. */
    GetTeachersForSchoolRequest$.inboundSchema = exports.GetTeachersForSchoolRequest$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolRequest$outboundSchema` instead. */
    GetTeachersForSchoolRequest$.outboundSchema = exports.GetTeachersForSchoolRequest$outboundSchema;
})(GetTeachersForSchoolRequest$ || (exports.GetTeachersForSchoolRequest$ = GetTeachersForSchoolRequest$ = {}));
function getTeachersForSchoolRequestToJSON(getTeachersForSchoolRequest) {
    return JSON.stringify(exports.GetTeachersForSchoolRequest$outboundSchema.parse(getTeachersForSchoolRequest));
}
function getTeachersForSchoolRequestFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolRequest$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolRequest' from JSON`);
}
/** @internal */
exports.GetTeachersForSchoolStatus$inboundSchema = z.nativeEnum(exports.GetTeachersForSchoolStatus);
/** @internal */
exports.GetTeachersForSchoolStatus$outboundSchema = exports.GetTeachersForSchoolStatus$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var GetTeachersForSchoolStatus$;
(function (GetTeachersForSchoolStatus$) {
    /** @deprecated use `GetTeachersForSchoolStatus$inboundSchema` instead. */
    GetTeachersForSchoolStatus$.inboundSchema = exports.GetTeachersForSchoolStatus$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolStatus$outboundSchema` instead. */
    GetTeachersForSchoolStatus$.outboundSchema = exports.GetTeachersForSchoolStatus$outboundSchema;
})(GetTeachersForSchoolStatus$ || (exports.GetTeachersForSchoolStatus$ = GetTeachersForSchoolStatus$ = {}));
/** @internal */
exports.GetTeachersForSchoolUserId$inboundSchema = z.object({
    type: z.string(),
    identifier: z.string(),
});
/** @internal */
exports.GetTeachersForSchoolUserId$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 GetTeachersForSchoolUserId$;
(function (GetTeachersForSchoolUserId$) {
    /** @deprecated use `GetTeachersForSchoolUserId$inboundSchema` instead. */
    GetTeachersForSchoolUserId$.inboundSchema = exports.GetTeachersForSchoolUserId$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolUserId$outboundSchema` instead. */
    GetTeachersForSchoolUserId$.outboundSchema = exports.GetTeachersForSchoolUserId$outboundSchema;
})(GetTeachersForSchoolUserId$ || (exports.GetTeachersForSchoolUserId$ = GetTeachersForSchoolUserId$ = {}));
function getTeachersForSchoolUserIdToJSON(getTeachersForSchoolUserId) {
    return JSON.stringify(exports.GetTeachersForSchoolUserId$outboundSchema.parse(getTeachersForSchoolUserId));
}
function getTeachersForSchoolUserIdFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolUserId$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolUserId' from JSON`);
}
/** @internal */
exports.GetTeachersForSchoolRoleType$inboundSchema = z.nativeEnum(exports.GetTeachersForSchoolRoleType);
/** @internal */
exports.GetTeachersForSchoolRoleType$outboundSchema = exports.GetTeachersForSchoolRoleType$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var GetTeachersForSchoolRoleType$;
(function (GetTeachersForSchoolRoleType$) {
    /** @deprecated use `GetTeachersForSchoolRoleType$inboundSchema` instead. */
    GetTeachersForSchoolRoleType$.inboundSchema = exports.GetTeachersForSchoolRoleType$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolRoleType$outboundSchema` instead. */
    GetTeachersForSchoolRoleType$.outboundSchema = exports.GetTeachersForSchoolRoleType$outboundSchema;
})(GetTeachersForSchoolRoleType$ || (exports.GetTeachersForSchoolRoleType$ = GetTeachersForSchoolRoleType$ = {}));
/** @internal */
exports.GetTeachersForSchoolRoleEnum$inboundSchema = z.nativeEnum(exports.GetTeachersForSchoolRoleEnum);
/** @internal */
exports.GetTeachersForSchoolRoleEnum$outboundSchema = exports.GetTeachersForSchoolRoleEnum$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var GetTeachersForSchoolRoleEnum$;
(function (GetTeachersForSchoolRoleEnum$) {
    /** @deprecated use `GetTeachersForSchoolRoleEnum$inboundSchema` instead. */
    GetTeachersForSchoolRoleEnum$.inboundSchema = exports.GetTeachersForSchoolRoleEnum$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolRoleEnum$outboundSchema` instead. */
    GetTeachersForSchoolRoleEnum$.outboundSchema = exports.GetTeachersForSchoolRoleEnum$outboundSchema;
})(GetTeachersForSchoolRoleEnum$ || (exports.GetTeachersForSchoolRoleEnum$ = GetTeachersForSchoolRoleEnum$ = {}));
/** @internal */
exports.GetTeachersForSchoolOrg$inboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: z.string(),
});
/** @internal */
exports.GetTeachersForSchoolOrg$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 GetTeachersForSchoolOrg$;
(function (GetTeachersForSchoolOrg$) {
    /** @deprecated use `GetTeachersForSchoolOrg$inboundSchema` instead. */
    GetTeachersForSchoolOrg$.inboundSchema = exports.GetTeachersForSchoolOrg$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolOrg$outboundSchema` instead. */
    GetTeachersForSchoolOrg$.outboundSchema = exports.GetTeachersForSchoolOrg$outboundSchema;
})(GetTeachersForSchoolOrg$ || (exports.GetTeachersForSchoolOrg$ = GetTeachersForSchoolOrg$ = {}));
function getTeachersForSchoolOrgToJSON(getTeachersForSchoolOrg) {
    return JSON.stringify(exports.GetTeachersForSchoolOrg$outboundSchema.parse(getTeachersForSchoolOrg));
}
function getTeachersForSchoolOrgFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolOrg$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolOrg' from JSON`);
}
/** @internal */
exports.GetTeachersForSchoolRole$inboundSchema = z.object({
    roleType: exports.GetTeachersForSchoolRoleType$inboundSchema,
    role: exports.GetTeachersForSchoolRoleEnum$inboundSchema,
    org: z.lazy(() => exports.GetTeachersForSchoolOrg$inboundSchema),
    userProfile: z.string().optional(),
    beginDate: z.nullable(z.string()),
    endDate: z.nullable(z.string()),
});
/** @internal */
exports.GetTeachersForSchoolRole$outboundSchema = z.object({
    roleType: exports.GetTeachersForSchoolRoleType$outboundSchema,
    role: exports.GetTeachersForSchoolRoleEnum$outboundSchema,
    org: z.lazy(() => exports.GetTeachersForSchoolOrg$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 GetTeachersForSchoolRole$;
(function (GetTeachersForSchoolRole$) {
    /** @deprecated use `GetTeachersForSchoolRole$inboundSchema` instead. */
    GetTeachersForSchoolRole$.inboundSchema = exports.GetTeachersForSchoolRole$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolRole$outboundSchema` instead. */
    GetTeachersForSchoolRole$.outboundSchema = exports.GetTeachersForSchoolRole$outboundSchema;
})(GetTeachersForSchoolRole$ || (exports.GetTeachersForSchoolRole$ = GetTeachersForSchoolRole$ = {}));
function getTeachersForSchoolRoleToJSON(getTeachersForSchoolRole) {
    return JSON.stringify(exports.GetTeachersForSchoolRole$outboundSchema.parse(getTeachersForSchoolRole));
}
function getTeachersForSchoolRoleFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolRole$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolRole' from JSON`);
}
/** @internal */
exports.GetTeachersForSchoolType$inboundSchema = z.nativeEnum(exports.GetTeachersForSchoolType);
/** @internal */
exports.GetTeachersForSchoolType$outboundSchema = exports.GetTeachersForSchoolType$inboundSchema;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var GetTeachersForSchoolType$;
(function (GetTeachersForSchoolType$) {
    /** @deprecated use `GetTeachersForSchoolType$inboundSchema` instead. */
    GetTeachersForSchoolType$.inboundSchema = exports.GetTeachersForSchoolType$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolType$outboundSchema` instead. */
    GetTeachersForSchoolType$.outboundSchema = exports.GetTeachersForSchoolType$outboundSchema;
})(GetTeachersForSchoolType$ || (exports.GetTeachersForSchoolType$ = GetTeachersForSchoolType$ = {}));
/** @internal */
exports.GetTeachersForSchoolAgent$inboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: exports.GetTeachersForSchoolType$inboundSchema,
});
/** @internal */
exports.GetTeachersForSchoolAgent$outboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: exports.GetTeachersForSchoolType$outboundSchema,
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var GetTeachersForSchoolAgent$;
(function (GetTeachersForSchoolAgent$) {
    /** @deprecated use `GetTeachersForSchoolAgent$inboundSchema` instead. */
    GetTeachersForSchoolAgent$.inboundSchema = exports.GetTeachersForSchoolAgent$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolAgent$outboundSchema` instead. */
    GetTeachersForSchoolAgent$.outboundSchema = exports.GetTeachersForSchoolAgent$outboundSchema;
})(GetTeachersForSchoolAgent$ || (exports.GetTeachersForSchoolAgent$ = GetTeachersForSchoolAgent$ = {}));
function getTeachersForSchoolAgentToJSON(getTeachersForSchoolAgent) {
    return JSON.stringify(exports.GetTeachersForSchoolAgent$outboundSchema.parse(getTeachersForSchoolAgent));
}
function getTeachersForSchoolAgentFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolAgent$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolAgent' from JSON`);
}
/** @internal */
exports.GetTeachersForSchoolPrimaryOrg$inboundSchema = z.object({
    href: z.string(),
    sourcedId: z.string(),
    type: z.string(),
});
/** @internal */
exports.GetTeachersForSchoolPrimaryOrg$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 GetTeachersForSchoolPrimaryOrg$;
(function (GetTeachersForSchoolPrimaryOrg$) {
    /** @deprecated use `GetTeachersForSchoolPrimaryOrg$inboundSchema` instead. */
    GetTeachersForSchoolPrimaryOrg$.inboundSchema = exports.GetTeachersForSchoolPrimaryOrg$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolPrimaryOrg$outboundSchema` instead. */
    GetTeachersForSchoolPrimaryOrg$.outboundSchema = exports.GetTeachersForSchoolPrimaryOrg$outboundSchema;
})(GetTeachersForSchoolPrimaryOrg$ || (exports.GetTeachersForSchoolPrimaryOrg$ = GetTeachersForSchoolPrimaryOrg$ = {}));
function getTeachersForSchoolPrimaryOrgToJSON(getTeachersForSchoolPrimaryOrg) {
    return JSON.stringify(exports.GetTeachersForSchoolPrimaryOrg$outboundSchema.parse(getTeachersForSchoolPrimaryOrg));
}
function getTeachersForSchoolPrimaryOrgFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolPrimaryOrg$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolPrimaryOrg' from JSON`);
}
/** @internal */
exports.GetTeachersForSchoolUser$inboundSchema = z.object({
    sourcedId: z.string(),
    status: exports.GetTeachersForSchoolStatus$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.GetTeachersForSchoolUserId$inboundSchema))
        .optional(),
    enabledUser: z.boolean(),
    givenName: z.string(),
    familyName: z.string(),
    middleName: z.nullable(z.string()).optional(),
    roles: z.array(z.lazy(() => exports.GetTeachersForSchoolRole$inboundSchema)),
    agents: z.array(z.lazy(() => exports.GetTeachersForSchoolAgent$inboundSchema)),
    primaryOrg: z.lazy(() => exports.GetTeachersForSchoolPrimaryOrg$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.GetTeachersForSchoolUser$outboundSchema = z.object({
    sourcedId: z.string(),
    status: exports.GetTeachersForSchoolStatus$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.GetTeachersForSchoolUserId$outboundSchema))
        .optional(),
    enabledUser: z.boolean(),
    givenName: z.string(),
    familyName: z.string(),
    middleName: z.nullable(z.string()).optional(),
    roles: z.array(z.lazy(() => exports.GetTeachersForSchoolRole$outboundSchema)),
    agents: z.array(z.lazy(() => exports.GetTeachersForSchoolAgent$outboundSchema)),
    primaryOrg: z.lazy(() => exports.GetTeachersForSchoolPrimaryOrg$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 GetTeachersForSchoolUser$;
(function (GetTeachersForSchoolUser$) {
    /** @deprecated use `GetTeachersForSchoolUser$inboundSchema` instead. */
    GetTeachersForSchoolUser$.inboundSchema = exports.GetTeachersForSchoolUser$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolUser$outboundSchema` instead. */
    GetTeachersForSchoolUser$.outboundSchema = exports.GetTeachersForSchoolUser$outboundSchema;
})(GetTeachersForSchoolUser$ || (exports.GetTeachersForSchoolUser$ = GetTeachersForSchoolUser$ = {}));
function getTeachersForSchoolUserToJSON(getTeachersForSchoolUser) {
    return JSON.stringify(exports.GetTeachersForSchoolUser$outboundSchema.parse(getTeachersForSchoolUser));
}
function getTeachersForSchoolUserFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolUser$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolUser' from JSON`);
}
/** @internal */
exports.GetTeachersForSchoolResponseBody$inboundSchema = z.object({
    users: z.array(z.lazy(() => exports.GetTeachersForSchoolUser$inboundSchema)),
    totalCount: z.number(),
    pageCount: z.number(),
    pageNumber: z.number(),
    offset: z.number(),
    limit: z.number(),
});
/** @internal */
exports.GetTeachersForSchoolResponseBody$outboundSchema = z.object({
    users: z.array(z.lazy(() => exports.GetTeachersForSchoolUser$outboundSchema)),
    totalCount: z.number(),
    pageCount: z.number(),
    pageNumber: z.number(),
    offset: z.number(),
    limit: z.number(),
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var GetTeachersForSchoolResponseBody$;
(function (GetTeachersForSchoolResponseBody$) {
    /** @deprecated use `GetTeachersForSchoolResponseBody$inboundSchema` instead. */
    GetTeachersForSchoolResponseBody$.inboundSchema = exports.GetTeachersForSchoolResponseBody$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolResponseBody$outboundSchema` instead. */
    GetTeachersForSchoolResponseBody$.outboundSchema = exports.GetTeachersForSchoolResponseBody$outboundSchema;
})(GetTeachersForSchoolResponseBody$ || (exports.GetTeachersForSchoolResponseBody$ = GetTeachersForSchoolResponseBody$ = {}));
function getTeachersForSchoolResponseBodyToJSON(getTeachersForSchoolResponseBody) {
    return JSON.stringify(exports.GetTeachersForSchoolResponseBody$outboundSchema.parse(getTeachersForSchoolResponseBody));
}
function getTeachersForSchoolResponseBodyFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolResponseBody$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolResponseBody' from JSON`);
}
/** @internal */
exports.GetTeachersForSchoolResponse$inboundSchema = z.object({
    Result: z.lazy(() => exports.GetTeachersForSchoolResponseBody$inboundSchema),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        "Result": "result",
    });
});
/** @internal */
exports.GetTeachersForSchoolResponse$outboundSchema = z.object({
    result: z.lazy(() => exports.GetTeachersForSchoolResponseBody$outboundSchema),
}).transform((v) => {
    return (0, primitives_js_1.remap)(v, {
        result: "Result",
    });
});
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
var GetTeachersForSchoolResponse$;
(function (GetTeachersForSchoolResponse$) {
    /** @deprecated use `GetTeachersForSchoolResponse$inboundSchema` instead. */
    GetTeachersForSchoolResponse$.inboundSchema = exports.GetTeachersForSchoolResponse$inboundSchema;
    /** @deprecated use `GetTeachersForSchoolResponse$outboundSchema` instead. */
    GetTeachersForSchoolResponse$.outboundSchema = exports.GetTeachersForSchoolResponse$outboundSchema;
})(GetTeachersForSchoolResponse$ || (exports.GetTeachersForSchoolResponse$ = GetTeachersForSchoolResponse$ = {}));
function getTeachersForSchoolResponseToJSON(getTeachersForSchoolResponse) {
    return JSON.stringify(exports.GetTeachersForSchoolResponse$outboundSchema.parse(getTeachersForSchoolResponse));
}
function getTeachersForSchoolResponseFromJSON(jsonString) {
    return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.GetTeachersForSchoolResponse$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'GetTeachersForSchoolResponse' from JSON`);
}
//# sourceMappingURL=getteachersforschool.js.map