@forestadmin/datasource-toolkit
Version:
19 lines • 944 B
TypeScript
import ConditionTree from './nodes/base';
import ConditionTreeLeaf from './nodes/leaf';
import { Operator } from './nodes/operators';
import { ColumnType, PrimitiveTypes } from '../../schema';
export type Replacer = (leaf: ConditionTreeLeaf, timezone: string, isDateOnly?: boolean) => ConditionTree;
export type Alternative = {
dependsOn: Operator[];
replacer: Replacer;
forTypes?: PrimitiveTypes[];
};
export default class ConditionTreeEquivalent {
private static alternatives;
static getEquivalentTree(leaf: ConditionTreeLeaf, operators: Set<Operator>, columnType: ColumnType, timezone: string): ConditionTree;
static hasEquivalentTree(operator: Operator, operators: Set<Operator>, columnType: ColumnType): boolean;
/** Find a way to replace an operator by recursively exploring the transforms graph */
private static getReplacer;
private static getAlternatives;
}
//# sourceMappingURL=equivalence.d.ts.map