UNPKG

@wootapa/polygraph-ol

Version:

Extension of @wootapa/polygraph for OpenLayers 7+.

50 lines (49 loc) 1.8 kB
import { KeyValue } from '../core/comparison'; import { IEvaluatable, IJson, IJsonDump, IReport } from '../core/contracts'; import { Reporter } from '../core/util'; import { FeatureThing, IDistanceOpts, IOlOpts } from './contracts'; import { PolygraphOl } from './polygraph'; import { WAFeature } from './feature'; export declare abstract class OlBase extends KeyValue implements IEvaluatable, IJson { static alias: string; protected _feature: WAFeature; protected _opts: IOlOpts; protected _reporter: Reporter; constructor(value: FeatureThing, opts: IOlOpts); get feature(): WAFeature; get opts(): IOlOpts; getAlias(): string; getReport(): IReport; resetReport(): void; asJson(): IJsonDump; evaluate<FeatureThing>(obj: FeatureThing): boolean; } export interface IOlOperators { intersects(value: FeatureThing): PolygraphOl; disjoint(value: FeatureThing): PolygraphOl; contains(value: FeatureThing): PolygraphOl; within(value: FeatureThing): PolygraphOl; distanceWithin(value: FeatureThing, distance: number): PolygraphOl; distanceBeyond(value: FeatureThing, distance: number): PolygraphOl; } export declare class OlIntersects extends OlBase { static alias: string; } export declare class OlDisjoint extends OlBase { static alias: string; } export declare class OlContains extends OlBase { static alias: string; } export declare class OlWithin extends OlBase { static alias: string; } export declare abstract class OlDistanceBase extends OlBase { get opts(): IDistanceOpts; } export declare class OlDistanceWithin extends OlDistanceBase { static alias: string; } export declare class OlDistanceBeyond extends OlDistanceBase { static alias: string; }