import { GEAbschlussFach } from '../../../core/data/abschluss/GEAbschlussFach';
import { Service } from '../../../core/Service';
import { Predicate } from '../../../java/util/function/Predicate';
import { GEAbschlussFaecher } from '../../../core/data/abschluss/GEAbschlussFaecher';
import { AbschlussErgebnis } from '../../../core/data/abschluss/AbschlussErgebnis';
export declare class ServiceAbschlussHA10 extends Service<GEAbschlussFaecher, AbschlussErgebnis> {
    filterDefizit: Predicate<GEAbschlussFach>;
    filterMangelhaft: Predicate<GEAbschlussFach>;
    filterMangelhaftOhneZP10Faecher: Predicate<GEAbschlussFach>;
    filterUngenuegend: Predicate<GEAbschlussFach>;
    filterEKurse: Predicate<GEAbschlussFach>;
    filterWeitereFremdsprachen: Predicate<GEAbschlussFach>;
    constructor();
    /**
     * Führt die Abschlussberechnung anhand der übergebenen Abschlussfächer durch
     * und gibt das Berechnungsergebnis zurück.
     *
     * @param input    die Abschlussfächer
     *
     * @return das Ergebnis der Abschlussberechnung
     */
    handle(input: GEAbschlussFaecher): AbschlussErgebnis;
    /**
     * Prüft in Bezug auf Defizite, ob der Abschluss erworben wurde.
     *
     * @param faecher      die Asbchlussfächer nach Fächergruppen sortiert
     * @param log_indent   die Einrückung für das Logging
     *
     * @return das Ergebnis der Abschlussberechnung in Bezug die Defizitberechnung
     */
    private pruefeDefizite;
    isTranspiledInstanceOf(name: string): boolean;
}
export declare function cast_de_nrw_schule_svws_core_abschluss_ge_ServiceAbschlussHA10(obj: unknown): ServiceAbschlussHA10;
