import { Ast, BinaryExprAst, FeatureAst, NotAst } from "../ast/Ast"; export interface ValidBinaryExprAst extends BinaryExprAst { type: "binary_expr"; left: FeatureAst; right: FeatureAst; } export interface ValidBooleanExprAst extends BinaryExprAst { type: "boolean_expr"; left: ValidAst; right: ValidAst; } export interface ValidNotAst extends NotAst { expr: ValidAst; } export declare type ValidAst = FeatureAst | ValidBinaryExprAst | ValidBooleanExprAst | ValidNotAst; export declare function reduceTruthTable(ast: Ast): { features: string[]; truthTable: string; }; export declare function stringifyValidAst(ast: ValidAst): string; export declare function stringifyWhereAst(ast: Ast): string;