-
Notifications
You must be signed in to change notification settings - Fork 18
/
index.d.ts
120 lines (100 loc) · 2.36 KB
/
index.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
import { Feature, FeatureCollection, Geometry } from 'geojson';
/**
* Aggregation definition
*/
export interface IAggregateDef {
/**
* type
*/
type: 'sum' | 'avg' | 'count' | 'max' | 'min' | 'first' | 'last'
/**
* Data field name
*/
field: string
/**
* Aggregation field name
*/
name?: string
}
/**
* Classes-break classification definition
*/
export interface IClassesBreakClassidicationDef {
type: 'classes',
field: string,
method: 'equalInterval' | 'naturalBreaks' | 'quantile' | 'std',
breakCount: number,
normType?: 'field' | 'log' | 'percent',
normField?: string
}
/**
* Unique value classification definition
*/
export interface IUniqueValueClassidicationDef {
type: 'unique',
fields: string[]
}
export interface IQueryOptions {
/**
* A sql where statement
*/
where?: string
/**
* GeoJSON or Esri geometry Object
*/
geometry?: Geometry
/**
* Spatial predicate
*/
spatialPredicate?: 'ST_Within' | 'ST_Contains' | 'ST_Intersects'
/**
* Set of fields to select from feature properties
*/
fields?: string[]
/**
* Describes the set of aggregations to perform on fields
*/
aggregates?: IAggregateDef[]
/**
* Set of fields for grouping statistics
*/
groupBy?: string[]
/**
* number of results to return
*/
number?: number
/**
* number of return features to offset
*/
offset?: number
/**
* Set of fields or aggregates by which to order results
*/
order?: string[]
/**
* An EPSG code, an OGC WKT or an ESRI WKT used to convert geometry
*/
outputCrs?: string | number
/**
* An EPSG code, an OGC WKT or an ESRI WKT defining the coordinate system of the input data. Defaults to 4326 (WGS84)
*/
inputCrs?: string | number
/**
* Whether to return Esri feature collection
*/
toEsri?: boolean
/**
* Number of digits to appear after decimal point for geometry
*/
geometryPrecision?: number
/**
* GeoJSON or geoservices classification Object
*/
classification?: IClassesBreakClassidicationDef | IUniqueValueClassidicationDef
}
/**
* Build and apply a query to a feature collection object or an array of features
* @param features a feature collection object or an array of features
* @param options query options
*/
export function query(features: Feature[] | FeatureCollection, options: IQueryOptions): Feature[]