/
generic.ts
29 lines (24 loc) · 961 Bytes
/
generic.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
import {
deserialize as deserializeArray,
deserializeStream,
deserializeFiltered,
FromFeatureFn,
} from './generic/featurecollection.js';
import { Rect } from './packedrtree.js';
import { IFeature } from './generic/feature.js';
import HeaderMeta from './HeaderMeta.js';
export type HeaderMetaFn = (headerMeta: HeaderMeta) => void;
export function deserialize(
input: Uint8Array | ReadableStream | string,
fromFeature: FromFeatureFn,
rect?: Rect
): any[] | AsyncGenerator<IFeature> {
if (input instanceof Uint8Array)
return deserializeArray(input, fromFeature);
else if (input instanceof ReadableStream)
return deserializeStream(input, fromFeature);
else return deserializeFiltered(input, rect as Rect, fromFeature);
}
export { serialize } from './generic/featurecollection.js';
export { GeometryType } from './flat-geobuf/geometry-type.js';
export { ColumnType } from './flat-geobuf/column-type.js';