"use strict";
/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.Students = void 0;
const studentsGet_js_1 = require("../funcs/studentsGet.js");
const studentsGetAll_js_1 = require("../funcs/studentsGetAll.js");
const studentsGetForClass_js_1 = require("../funcs/studentsGetForClass.js");
const sdks_js_1 = require("../lib/sdks.js");
const fp_js_1 = require("../types/fp.js");
const operations_js_1 = require("../types/operations.js");
const studentsclasses_js_1 = require("./studentsclasses.js");
class Students extends sdks_js_1.ClientSDK {
    get classes() {
        return (this._classes ?? (this._classes = new studentsclasses_js_1.StudentsClasses(this._options)));
    }
    /**
     * Get Students for a specific Class in a School
     *
     * @remarks
     * To get all Students for a Class in a School on the service provider. If the specified school and/or class cannot be identified within the service provider, the api will return a 404 error code and message 'School or class not found.'
     */
    async getForClass(request, options) {
        return (0, operations_js_1.unwrapResultIterator)((0, studentsGetForClass_js_1.studentsGetForClass)(this, request, options));
    }
    /**
     * Get all Students
     *
     * @remarks
     * To get all Students on the service provider.
     */
    async getAll(request, options) {
        return (0, operations_js_1.unwrapResultIterator)((0, studentsGetAll_js_1.studentsGetAll)(this, request, options));
    }
    /**
     * Get a specific Student
     *
     * @remarks
     * To get a specific Student on the service provider. If the corresponding record cannot be located, the api will return a 404 error code and message 'Student not found.'
     */
    async get(request, options) {
        return (0, fp_js_1.unwrapAsync)((0, studentsGet_js_1.studentsGet)(this, request, options));
    }
}
exports.Students = Students;
//# sourceMappingURL=students.js.map