UNPKG

@forestadmin/datasource-toolkit

Version:
29 lines 1.13 kB
import ConditionTree from './nodes/base'; import { Aggregator } from './nodes/branch'; import { Operator } from './nodes/operators'; import { CompositeId, RecordData } from '../../record'; import { CollectionSchema } from '../../schema'; export type GenericTreeBranch = { aggregator: Aggregator; conditions: Array<GenericTree>; }; export type GenericTreeLeaf = { field: string; operator: Operator; value?: unknown; }; export type GenericTree = GenericTreeBranch | GenericTreeLeaf; export default class ConditionTreeFactory { static MatchNone: ConditionTree; static MatchAll: ConditionTree; static matchRecords(schema: CollectionSchema, records: RecordData[]): ConditionTree; static matchIds(schema: CollectionSchema, ids: CompositeId[]): ConditionTree; static union(...trees: ConditionTree[]): ConditionTree; static intersect(...trees: ConditionTree[]): ConditionTree; static fromPlainObject(json: GenericTree): ConditionTree; private static matchFields; private static group; private static isLeaf; private static isBranch; } //# sourceMappingURL=factory.d.ts.map