pddl-workspace
Version:
65 lines (64 loc) • 2.49 kB
TypeScript
import { Variable } from "./language";
export declare abstract class ExpressionNode {
abstract toPddlString(): string;
}
export declare class VariableDeclarationNode extends ExpressionNode {
readonly variable: Variable;
constructor(variable: Variable);
toPddlString(): string;
}
export declare class VariableNode extends ExpressionNode {
readonly variable: Variable;
constructor(variable: Variable);
toPddlString(): string;
}
export declare class UnaryExpressionNode extends ExpressionNode {
readonly nested: ExpressionNode;
private readonly keyword;
constructor(nested: ExpressionNode, keyword: string);
toPddlString(): string;
}
export declare class BinaryExpressionNode extends ExpressionNode {
readonly left: ExpressionNode;
readonly right: ExpressionNode;
private readonly keyword;
constructor(left: ExpressionNode, right: ExpressionNode, keyword: string);
toPddlString(): string;
}
export declare class NAryLogicalExpression extends ExpressionNode {
readonly operands: ExpressionNode[];
private readonly keyword;
constructor(operands: ExpressionNode[], keyword: string);
toPddlString(): string;
}
export declare class Not extends UnaryExpressionNode {
readonly nested: ExpressionNode;
constructor(nested: ExpressionNode);
}
export declare class AtStart extends UnaryExpressionNode {
readonly nested: ExpressionNode;
constructor(nested: ExpressionNode);
}
export declare class AtEnd extends UnaryExpressionNode {
readonly nested: ExpressionNode;
constructor(nested: ExpressionNode);
}
export declare class OverAll extends UnaryExpressionNode {
readonly nested: ExpressionNode;
constructor(nested: ExpressionNode);
}
export declare class DurationExpressionNode extends ExpressionNode {
constructor();
toPddlString(): string;
}
export declare class EqualityNode extends BinaryExpressionNode {
readonly left: ExpressionNode;
readonly right: ExpressionNode;
constructor(left: ExpressionNode, right: ExpressionNode);
}
export declare function expression(variable: Variable): ExpressionNode;
export declare function overAll(expression: ExpressionNode): ExpressionNode;
export declare function atEnd(expression: ExpressionNode): ExpressionNode;
export declare function atStart(expression: ExpressionNode): ExpressionNode;
export declare function not(variable: Variable): ExpressionNode;
export declare function and(conjuncts: ExpressionNode[]): ExpressionNode;