"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.cast_de_nrw_schule_svws_core_abschluss_gost_GostBelegpruefungsArt = exports.GostBelegpruefungsArt = void 0;
const JavaObject_1 = require("../../../java/lang/JavaObject");
class GostBelegpruefungsArt extends JavaObject_1.JavaObject {
    static EF1 = new GostBelegpruefungsArt("EF.1", "nur EF.1");
    static GESAMT = new GostBelegpruefungsArt("Gesamt", "die gesamte Oberstufe");
    kuerzel;
    beschreibung;
    /**
     * Erzeugt ein neues Abitur-Belegungsart-Objekt
     *
     * @param kuerzel        das der Kurs-Belegungsart
     * @param beschreibung   die textuelle Beschreibung der Kurs-Belegungsart
     */
    constructor(kuerzel, beschreibung) {
        super();
        this.kuerzel = kuerzel;
        this.beschreibung = beschreibung;
    }
    /**
     * Gibt die Art der Belegprüfung anhand des übergebenen Kürzels zurück.
     *
     * @param kuerzel    das Kürzel der Art der Belegprüfung
     *
     * @return die Art der Belegprüfung
     */
    static fromKuerzel(kuerzel) {
        if (kuerzel === null)
            return null;
        switch (kuerzel) {
            case "EF.1":
                return GostBelegpruefungsArt.EF1;
            case "Gesamt":
                return GostBelegpruefungsArt.GESAMT;
        }
        return null;
    }
    toString() {
        return this.kuerzel;
    }
    isTranspiledInstanceOf(name) {
        return ['de.nrw.schule.svws.core.abschluss.gost.GostBelegpruefungsArt'].includes(name);
    }
}
exports.GostBelegpruefungsArt = GostBelegpruefungsArt;
function cast_de_nrw_schule_svws_core_abschluss_gost_GostBelegpruefungsArt(obj) {
    return obj;
}
exports.cast_de_nrw_schule_svws_core_abschluss_gost_GostBelegpruefungsArt = cast_de_nrw_schule_svws_core_abschluss_gost_GostBelegpruefungsArt;
//# sourceMappingURL=GostBelegpruefungsArt.js.map