import { Param } from '../param'; import { Uid } from '../uid'; import { Ref } from '../ref'; export declare type Subject = string; export declare type OpValue = Param | Ref | Uid | RegExp | Date | string | number | boolean; export declare type OpArg = Param | string | number | boolean; export interface OperatorArgs { name: string; subject?: Subject; value?: OpValue | OpValue[]; arg?: OpArg; } export interface Operator extends OperatorArgs { } export declare class Operator { constructor(args: OperatorArgs); params(): Param[]; parseValue(value: any): any; toString(): string; }