UNPKG

osm2geojson-lite

Version:

a lightweight yet faster osm (either in xml or in json formats) to geojson convertor - 4x faster than xmldom + osmtogeojson in most situations - implemented in pure JavaScript without any 3rd party dependency

74 lines (73 loc) 1.92 kB
import { Feature } from 'geojson'; import { RefElements } from './utils'; declare class OsmObject { refCount: number; protected refElems: RefElements; private type; private id; private tags; private props; private hasTag; constructor(type: string, id: string, refElems: RefElements); addTags(tags: { [k: string]: string; }): void; addTag(k: string, v: string): void; addProp(k: string, v: any): void; addProps(props: { [k: string]: string; }): void; getCompositeId(): string; getProps(): { [k: string]: string; }; toFeatureArray(): Array<Feature<any, any>>; } export declare class Node extends OsmObject { private latLng; constructor(id: string, refElems: RefElements); setLatLng(latLng: { lat: string; lon: string; }): void; toFeatureArray(): Array<Feature<any, any>>; getLatLng(): { lat: string; lon: string; } | null; } export declare class Way extends OsmObject { private latLngArray; private isPolygon; constructor(id: string, refElems: RefElements); addLatLng(latLng: { lat: string; lon: string; }): void; setLatLngArray(latLngArray: Array<{ lat: string; lon: string; [k: string]: any; }>): void; addNodeRef(ref: string): void; addTags(tags: { [k: string]: string; }): void; addTag(k: string, v: string): void; toCoordsArray(): string[][]; toFeatureArray(): Array<Feature<any, any>>; private analyzeTag; } export declare class Relation extends OsmObject { private relations; private nodes; private bounds; [k: string]: any; constructor(id: string, refElems: RefElements); setBounds(bounds: any[]): void; addMember(member: { [k: string]: any; }): void; toFeatureArray(): Array<Feature<any, any>>; } export {};