UNPKG

@wootapa/polygraph-ol

Version:

Extension of @wootapa/polygraph for OpenLayers 7+.

66 lines (65 loc) 2.6 kB
import { IComparisonOpts, IEvaluatable, IJson, IJsonDump, ILikeOptions, IReport, Primitive, PrimitiveThing } from './contracts'; import { Reporter } from './util'; export declare abstract class KeyValue { protected _key: string; protected _value: Primitive; get key(): string; get value(): Primitive; constructor(key: string, value: PrimitiveThing); } export declare abstract class Comparison extends KeyValue implements IEvaluatable, IJson { static alias: string; protected _opts?: IComparisonOpts; protected _reporter: Reporter; constructor(key: string, value: PrimitiveThing, opts?: IComparisonOpts); get opts(): IComparisonOpts; getAlias(): string; getReport(): IReport; resetReport(): void; asJson(): IJsonDump; evaluate<PrimitiveThing>(obj: PrimitiveThing): boolean; } export interface IComparison<T> { equals(key: string, value: PrimitiveThing): T; isNull(key: string): T; eq(key: string, value: PrimitiveThing): T; greaterThan(key: string, value: PrimitiveThing): T; gt(key: string, value: PrimitiveThing): T; greaterThanEquals(key: string, value: PrimitiveThing): T; gte(key: string, value: PrimitiveThing): T; lessThan(key: string, value: PrimitiveThing): T; lt(key: string, value: PrimitiveThing): T; lessThanEquals(key: string, value: PrimitiveThing): T; lte(key: string, value: PrimitiveThing): T; like(key: string, value: PrimitiveThing, options?: IComparisonOpts): T; ilike(key: string, value: PrimitiveThing, options?: IComparisonOpts): T; any(key: string, values: Primitive[]): T; } export declare class ComparisonEquals extends Comparison { static alias: string; } export declare class ComparisonIsNull extends Comparison { static alias: string; } export declare class ComparisonGreaterThan extends Comparison { static alias: string; } export declare class ComparisonGreaterThanEquals extends Comparison { static alias: string; } export declare class ComparisonLessThan extends Comparison { static alias: string; } export declare class ComparisonLessThanEquals extends Comparison { static alias: string; } export declare class ComparisonLike extends Comparison { static alias: string; _valueRe: RegExp; constructor(key: string, value: PrimitiveThing, opts?: ILikeOptions); get opts(): ILikeOptions; } export declare class ComparisonILike extends ComparisonLike { static alias: string; constructor(key: string, value: PrimitiveThing, opts?: ILikeOptions); }