import { JavaObject } from '../../../java/lang/JavaObject';
import { GostFach } from '../../../core/data/gost/GostFach';
import { GostHalbjahr } from '../../../core/types/gost/GostHalbjahr';
export declare class GostFachManager extends JavaObject {
    constructor();
    /**
     * Gibt an, ob es sich bei dem Fach um ein Projektkursfach handelt.
     *
     * @param fach   das Fach der gymnasialen Oberstufe
     *
     * @return true, falls es sich um ein Projektkursfach handelt
     */
    static istProjektkurs(fach: GostFach): boolean;
    /**
     * Gibt an, ob es sich bei dem Fach um ein Vertiefungskursfach handelt.
     *
     * @param fach   das Fach der gymnasialen Oberstufe
     *
     * @return true, falls es sich um ein Vertiefungskursfach handelt
     */
    static istVertiefungskurs(fach: GostFach): boolean;
    /**
     * Gibt an, ob das Fach durchgehend von EF.1 bis Q2.2 belegbar ist;
     *
     * @param fach   das Fach der gymnasialen Oberstufe
     *
     * @return true, falls es so belegbar ist, sonst false
     */
    static istDurchgehendBelegbarBisQ22(fach: GostFach | null): boolean;
    /**
     * Gibt an, ob das Fach durchgehend von EF.1 bis EF.2 belegbar ist;
     *
     * @param fach   das Fach der gymnasialen Oberstufe
     *
     * @return true, falls es so belegbar ist, sonst false
     */
    static istBelegbarBisEF2(fach: GostFach): boolean;
    /**
     * Prüft, ob das Fach zu der angegebenen Sprache gehört
     *
     * @param fach   das Fach der gymnasialen Oberstufe
     * @param sprache   das Kürzel der Sprache (1. Zeichen ohne Jahrgang!)
     *
     * @return true, falls das Fach zu der angegebenen Sprache passt, sonst false
     */
    static istFremdsprachenfach(fach: GostFach | null, sprache: String | null): boolean;
    /**
     * Liefert das Kürzel der Sprache (ohne Jahrgang) zurück, falls es sich um eine Sprache handelt.
     *
     * @param fach   das Fach der gymnasialen Oberstufe
     *
     * @return das Kürzel der Sprache oder null
     */
    static getFremdsprache(fach: GostFach): String | null;
    /**
     * Prüft, ob das Fach bilingual unterrichtet wird oder nicht.
     *
     * @param fach   das Fach der gymnasialen Oberstufe
     *
     * @return true, falls das Fach bilingual unterrichtet wird.
     */
    static istBilingual(fach: GostFach): boolean;
    /**
     * Gibt zurück, ob das Fach in dem angegebenen Halbjahr wählbar ist oder nicht.
     *
     * @param fach   das Fach der gymnasialen Oberstufe
     * @param halbjahr   das zu prüfende Halbjahr
     *
     * @return true, falls das Fach in dem Halbjahr wählbar ist, sonst false
     */
    static istWaehlbar(fach: GostFach | null, halbjahr: GostHalbjahr): boolean;
    isTranspiledInstanceOf(name: string): boolean;
}
export declare function cast_de_nrw_schule_svws_core_abschluss_gost_GostFachManager(obj: unknown): GostFachManager;
