import { JavaObject } from '../../../java/lang/JavaObject'; import { GEAbschlussFach } from '../../../core/data/abschluss/GEAbschlussFach'; import { List } from '../../../java/util/List'; import { Predicate } from '../../../java/util/function/Predicate'; export declare class AbschlussFaecherGruppe extends JavaObject { private readonly faecher; /** * Erzeugt eine Fächergruppe aus den angegebenen Fächern und den vorgegebenen Kriterien. * * @param faecherAlle eine Liste aller vorhandenen Leistungen * @param faecherNutzen nur die gelisteten Fächer nutzen, null bedeutet grundsätzlich alle benoteten Fächer nutzen (außer den gefilterten) * @param faecherFiltern null bedeutet keinen Filter verwenden, ansonsten werden die gelisteten Fächer gefiltert */ constructor(faecherAlle: List, faecherNutzen: List | null, faecherFiltern: List | null); /** * Prüft, ob die gelisteten Fächer in der Fächergruppe sind und nur diese. * * @param faecherAbgleich die Fächer, welche in der Fächergruppe sein sollen. * * @return true, falls die angegebenen Fächer und nur diese in der Fächergruppe sind, ansonsten false. */ istVollstaendig(faecherAbgleich: List | null): boolean; /** * Gibt zurück, ob die Fächergruppe leer ist oder mindestens ein Fach beinhaltet. * * @return true, falls die Fächergruppe leer ist, ansonsten false */ isEmpty(): boolean; /** * Prüft, ob das Fach mit dem angegebenen Fachkürzel in der Fächergruppe enthalten ist * oder nicht. * * @param kuerzel das Kürzel des Faches, welches geprüft werden soll. * * @return true, falls das Fach vorhanden ist, und ansonsten false */ contains(kuerzel: String | null): boolean; /** * Entfernt alle Fächer aus der Fächergruppe, die dem übergebenen Filter entsprechen. * * @param filter die Funktion, um die zu entfernenden Fächer zu bestimmen * * @return die Liste der tatsächlich entfernten Fächer */ entferneFaecher(filter: Predicate): List; /** * Bestimmt das Fach, welches dem übergebenen Filter entspricht. Entsprechen * mehrere Fächer dem Filterkriterium, so wird nur das erste Fach * der internen Liste zurückgegeben. * * @param filter die Funktion, die das Kriterium für das gesuchte Fach angibt. * * @return das Fach, sofern eines gefunden wurde, ansonsten false */ getFach(filter: Predicate): GEAbschlussFach | null; /** * Bestimmt alle Fächer, welche dem übergebenen Filterkriterium entsprechen. * * @param filter die Funktion, die das Kriterium für die gesuchten Fächer angibt. * * @return eine Liste der Fächer, die dem Filterkriterium entsprechen */ getFaecher(filter: Predicate): List; /** * Gibt die Anzahl der Fächer zurück, welche dem übergebenen Filterkriterium entsprechen. * * @param filter die Funktion, die das Kriterium für die gesuchten Fächer angibt. * * @return die Anzahl der Fächer */ getFaecherAnzahl(filter: Predicate): number; /** * Bestimmt die Kürzel aller Fächer, welche dem übergebenen Filterkriterium entsprechen. * * @param filter die Funktion, die das Kriterium für die gesuchten Fächer angibt. * * @return eine Liste der Kürzel der Fächer, die dem Filterkriterium entsprechen */ getKuerzel(filter: Predicate): List; /** * Erstellt eine Zeichenkette mit einer Komma-separierten Liste der Kürzel aller Fächer, * welche dem übergebenen Filterkriterium entsprechen. * * @param filter die Funktion, die das Kriterium für die gesuchten Fächer angibt. * * @return die Zeichenkette mit einer Komma-separierten Liste der Fächerkürzel */ getKuerzelListe(filter: Predicate): String; /** * Gibt eine Komma-separierte Liste, der Abschlussfächer aus. Dabei wird * die toString Methode der Klasse AbschlussFach verwendet. */ toString(): String; isTranspiledInstanceOf(name: string): boolean; } export declare function cast_de_nrw_schule_svws_core_abschluss_ge_AbschlussFaecherGruppe(obj: unknown): AbschlussFaecherGruppe;