scripts/mapping_geojson_to_osm_tags/mappings/mapping-config.type.ts

52 lines
1.1 KiB
TypeScript

interface GeoJsonGeometry {
type:string,
coordinates:Array<number>,
}
interface GeoJsonProperties {
[key:string]: any,
}
interface GeoJsonFeature {
type:string,
geometry:GeoJsonGeometry,
properties:GeoJsonProperties,
}
export interface FeatureCollection{
type:string,
features:Array<GeoJsonFeature>,
}
export interface BoundingBoxCoordinatesType{
xMin: number,
xMax: number,
yMin: number,
yMax: number,
}
export default interface MappingConfigType{
config_name: string,
config_author: string,
default_properties_of_point: object,
tags: FeaturePropertyMappingConfigType
}
export interface FeaturePropertyMappingConfigType{
[key:string]: any,
boolean_value_conversion?:boolean,
remove_original_key?:boolean,
conditionnal_values?:ConditionnalValuesType,
transformer?:Function,
}
export interface ConditionnalValuesType{
[key:string]: ConditionnalValuesConfigType,
}
export interface ConditionnalValuesConfigType{
key_converted?:string,
value_converted?:string,
truthy_value?:any,
falsy_value?:any,
ignore_this_data?:boolean,
}