import { JavaObject } from '../../../java/lang/JavaObject';
import { Class } from '../../../java/lang/Class';
export declare class SatOutput extends JavaObject {
/**
* Es existiert eine Lösung.
*/
static readonly TYPE_UNKNOWN: number;
/**
* Es existiert (beweisbar) keine Lösung existiert.
*/
static readonly TYPE_SATISFIABLE: number;
/**
* Unbekannt, ob eine Lösung existiert (z. B. bei einem TimeOut).
*/
static readonly TYPE_UNSATISFIABLE: number;
/**
* Eine Lösung einer Formel {@link SatInput}. Das Format muss wie folgt aussehen:
*
* Das Array muss um Eins größer sein, als die Anzahl der verwendeten Variablen.
* An Position i steht der Wert i. Positiv, falls die Variable i TRUE ist, oder negativ,
* falls die Variable i FALSE ist. Der 0-Index wird ignoriert.
*
* Beispiel solution = {0, -1, 2, -3, -4} bedeutet x1=FALSE, x2=TRUE, x3=FALSE, x4=FALSE
*/
private readonly solution;
private readonly type;
/**
* Erzeugt eine Lösung anhand der übergebenen Parameter.
*
* @param pSolution Das Array der Variablen.
* @param pType Einer der drei möglichen Typen.
*/
private constructor();
/**
* Getter für data;
*
* @return data
*/
getSolution(): Array;
/**
* Liefert TRUE, falls eine Lösung existiert.
*
* @return TRUE, falls eine Lösung existiert.
*/
isSatisfiable(): boolean;
/**
* Liefert TRUE, falls (beweisbar) keine Lösung existiert.
*
* @return TRUE, falls (beweisbar) keine Lösung existiert.
*/
isUnsatisfiable(): boolean;
/**
* Liefert TRUE, falls unbekannt ist, ob eine Lösung existiert (z. B. bei einem TimeOut).
*
* @return TRUE, falls unbekannt ist, ob eine Lösung existiert (z. B. bei einem TimeOut).
*/
isUnknown(): boolean;
/**
* Liefert ein Objekt dieser Klasse mit dem Typ TYPE_UNKNOWN (z. B. bei einem TimeOut).
*
* @return ein Objekt dieser Klasse mit dem Typ TYPE_UNKNOWN (z. B. bei einem TimeOut).
*/
static createUNKNOWN(): SatOutput;
/**
* Liefert ein Objekt dieser Klasse mit dem Typ TYPE_UNSATISFIABLE.
*
* @return ein Objekt dieser Klasse mit dem Typ TYPE_UNSATISFIABLE
*/
static createUNSATISFIABLE(): SatOutput;
/**
* Liefert ein Objekt dieser Klasse mit dem Typ TYPE_SATISFIABLE.
*
* @param pSolution Die Lösung der Variablenbelegungen.
* @return ein Objekt dieser Klasse mit dem Typ TYPE_SATISFIABLE.
*/
static createSATISFIABLE(pSolution: Array): SatOutput;
/**
* Liefert eine Kopie, welche aber potentiell eine andere Lösung besitzt.
*
* @param pOutput Das zu kopierende Objekt.
* @param pSolution Die Lösung der Variablenbelegungen.
* @return eine Kopie, welche aber potentiell eine andere Lösung besitzt.
*/
static createCopy(pOutput: SatOutput, pSolution: Array): SatOutput;
transpilerCanonicalName(): string;
isTranspiledInstanceOf(name: string): boolean;
static class: Class;
}
export declare function cast_de_svws_nrw_core_adt_sat_SatOutput(obj: unknown): SatOutput;
//# sourceMappingURL=SatOutput.d.ts.map