Adds types for geojson-validation by @LiamAttClarke (#65551)

* Adds types for geojson-validation

* Cleans up geojson-validation types

* Formats geojson-validation
This commit is contained in:
Leem
2023-06-05 20:55:11 -04:00
committed by GitHub
parent 2f5c34485d
commit 3bbec6eeb9
4 changed files with 92 additions and 0 deletions

View File

@@ -0,0 +1,22 @@
import GeoJSONValidation = require('geojson-validation');
GeoJSONValidation.allTypes.Feature; // $ExpectType GeoJSONValidator
GeoJSONValidation.define('Feature', () => {}); // $ExpectType boolean
GeoJSONValidation.isBbox(null); // $ExpectType string[]
GeoJSONValidation.isFeature(null); // $ExpectType string[]
GeoJSONValidation.isFeatureCollection(null); // $ExpectType string[]
GeoJSONValidation.isGeoJSONObject(null); // $ExpectType string[]
GeoJSONValidation.valid(null); // $ExpectType string[]
GeoJSONValidation.isGeometryObject(null); // $ExpectType string[]
GeoJSONValidation.isLineString(null); // $ExpectType string[]
GeoJSONValidation.isLineStringCoor(null); // $ExpectType string[]
GeoJSONValidation.isMultiLineString(null); // $ExpectType string[]
GeoJSONValidation.isMultiLineStringCoor(null); // $ExpectType string[]
GeoJSONValidation.isMultiPoint(null); // $ExpectType string[]
GeoJSONValidation.isMultiPointCoor(null); // $ExpectType string[]
GeoJSONValidation.isMultiPolygon(null); // $ExpectType string[]
GeoJSONValidation.isMultiPolygonCoor(null); // $ExpectType string[]
GeoJSONValidation.isPoint(null); // $ExpectType string[]
GeoJSONValidation.isPolygon(null); // $ExpectType string[]
GeoJSONValidation.isPolygonCoor(null); // $ExpectType string[]
GeoJSONValidation.isPosition(null); // $ExpectType string[]

46
types/geojson-validation/index.d.ts vendored Normal file
View File

@@ -0,0 +1,46 @@
// Type definitions for geojson-validation 1.0
// Project: https://gitlab.com/mjbecze/GeoJSON-Validation
// Definitions by: Liam A. Clarke <https://github.com/LiamAttClarke>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
export interface GeoJSONValidator {
(geoJSONObject: unknown, trace?: boolean | undefined): string[];
}
export const allTypes: {
Feature: GeoJSONValidator;
FeatureCollection: GeoJSONValidator;
Point: GeoJSONValidator;
MultiPoint: GeoJSONValidator;
LineString: GeoJSONValidator;
MultiLineString: GeoJSONValidator;
Polygon: GeoJSONValidator;
MultiPolygon: GeoJSONValidator;
GeometryCollection: GeoJSONValidator;
Bbox: GeoJSONValidator;
Position: GeoJSONValidator;
GeoJSON: GeoJSONValidator;
GeometryObject: GeoJSONValidator;
};
export function define(type: keyof typeof allTypes, definition: (...args: any[]) => any): boolean;
export const isPosition: GeoJSONValidator;
export const isGeoJSONObject: GeoJSONValidator;
export const valid: GeoJSONValidator;
export const isGeometryObject: GeoJSONValidator;
export const isPoint: GeoJSONValidator;
export const isMultiPointCoor: GeoJSONValidator;
export const isMultiPoint: GeoJSONValidator;
export const isLineStringCoor: GeoJSONValidator;
export const isLineString: GeoJSONValidator;
export const isMultiLineStringCoor: GeoJSONValidator;
export const isMultiLineString: GeoJSONValidator;
export const isPolygonCoor: GeoJSONValidator;
export const isPolygon: GeoJSONValidator;
export const isMultiPolygonCoor: GeoJSONValidator;
export const isMultiPolygon: GeoJSONValidator;
export const isGeometryCollection: GeoJSONValidator;
export const isFeature: GeoJSONValidator;
export const isFeatureCollection: GeoJSONValidator;
export const isBbox: GeoJSONValidator;

View File

@@ -0,0 +1,23 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": [
"es6"
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictFunctionTypes": true,
"strictNullChecks": true,
"baseUrl": "../",
"typeRoots": [
"../"
],
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"geojson-validation-tests.ts"
]
}

View File

@@ -0,0 +1 @@
{ "extends": "@definitelytyped/dtslint/dt.json" }