UNPKG

@overture-stack/sqon-builder

Version:
27 lines (26 loc) 1.52 kB
import { ArrayFilterValue, FilterKey, FilterOperator, FilterValue, FilterTypeMap, Operator, SQON, ScalarFilterValue } from './types/sqon'; type SQONBuilder = { and: (content: SQON | SQON[], pivot?: string) => SQONBuilder; or: (content: SQON | SQON[], pivot?: string) => SQONBuilder; not: (content: SQON | SQON[], pivot?: string) => SQONBuilder; in: (fieldName: string, value: ArrayFilterValue) => SQONBuilder; gt: (fieldName: string, value: ScalarFilterValue) => SQONBuilder; lt: (fieldName: string, value: ScalarFilterValue) => SQONBuilder; removeExactFilter: (filter: FilterOperator) => SQONBuilder; removeFilter: (fieldName: string, op?: FilterKey, value?: FilterValue) => SQONBuilder; setFilter: <Key extends FilterKey>(fieldName: string, op: Key, value: FilterTypeMap[Key]['content']['value']) => SQONBuilder; toString: () => string; toValue: () => SQON; } & SQON; export declare const emptySQON: () => Operator; declare const SQONBuilder: { (sqon: SQONBuilder | SQON | string): SQONBuilder; and: (content: SQON | SQON[], pivot?: string) => SQONBuilder; or: (content: SQON | SQON[], pivot?: string) => SQONBuilder; not: (content: SQON | SQON[], pivot?: string) => SQONBuilder; in: (fieldName: string, value: ArrayFilterValue) => SQONBuilder; gt: (fieldName: string, value: ScalarFilterValue) => SQONBuilder; lt: (fieldName: string, value: ScalarFilterValue) => SQONBuilder; from: (input: unknown) => SQONBuilder; }; export default SQONBuilder;