UNPKG

@golemio/parkings

Version:
425 lines (424 loc) • 19.8 kB
import { JSONSchemaType } from "@golemio/core/dist/shared/ajv"; import { IOsmParkingProperties } from "./interfaces/IOsmParkingProperties"; import { IOsmParkingSpacesProperties } from "./interfaces/IOsmParkingSpacesProperties"; import { IOsmEntranceProperties } from "./interfaces/IOsmEntranceProperties"; import { IOsmParkingMachinesProperties } from "./interfaces/IOsmParkingMachinesProperties"; export declare class OsmSchemaGenerator { static getParkingSchema(): { type: string; properties: { type: { type: string; enum: string[]; }; features: { type: string; items: { type: string; properties: { type: { type: string; enum: string[]; }; geometry: { $id: string; title: string; description: string; type: string; required: string[]; oneOf: ({ title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; minItems: number; maxItems: number; items: { type: string; minItems?: undefined; items?: undefined; }; additionalItems: boolean; }; }; } | { title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; minItems?: undefined; items?: undefined; }; }; }; minItems?: undefined; maxItems?: undefined; additionalItems?: undefined; }; }; } | { title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; items: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; }; }; }; minItems?: undefined; }; minItems?: undefined; maxItems?: undefined; additionalItems?: undefined; }; }; })[]; }; properties: JSONSchemaType<IOsmParkingProperties>; }; required: string[]; }; }; }; required: string[]; }; static getParkingSpacesSchema(): { type: string; properties: { type: { type: string; enum: string[]; }; features: { type: string; items: { type: string; properties: { type: { type: string; enum: string[]; }; geometry: { $id: string; title: string; description: string; type: string; required: string[]; oneOf: ({ title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; minItems: number; maxItems: number; items: { type: string; minItems?: undefined; items?: undefined; }; additionalItems: boolean; }; }; } | { title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; minItems?: undefined; items?: undefined; }; }; }; minItems?: undefined; maxItems?: undefined; additionalItems?: undefined; }; }; } | { title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; items: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; }; }; }; minItems?: undefined; }; minItems?: undefined; maxItems?: undefined; additionalItems?: undefined; }; }; })[]; }; properties: JSONSchemaType<IOsmParkingSpacesProperties>; }; required: string[]; }; }; }; required: string[]; }; static getEntranceSchema(): { type: string; properties: { type: { type: string; enum: string[]; }; features: { type: string; items: { type: string; properties: { type: { type: string; enum: string[]; }; geometry: { $id: string; title: string; description: string; type: string; required: string[]; oneOf: ({ title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; minItems: number; maxItems: number; items: { type: string; minItems?: undefined; items?: undefined; }; additionalItems: boolean; }; }; } | { title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; minItems?: undefined; items?: undefined; }; }; }; minItems?: undefined; maxItems?: undefined; additionalItems?: undefined; }; }; } | { title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; items: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; }; }; }; minItems?: undefined; }; minItems?: undefined; maxItems?: undefined; additionalItems?: undefined; }; }; })[]; }; properties: JSONSchemaType<IOsmEntranceProperties>; }; required: string[]; }; }; }; required: string[]; }; static getParkingMachinesSchema(): { type: string; properties: { type: { type: string; enum: string[]; }; features: { type: string; items: { type: string; properties: { type: { type: string; enum: string[]; }; geometry: { $id: string; title: string; description: string; type: string; required: string[]; oneOf: ({ title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; minItems: number; maxItems: number; items: { type: string; minItems?: undefined; items?: undefined; }; additionalItems: boolean; }; }; } | { title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; minItems?: undefined; items?: undefined; }; }; }; minItems?: undefined; maxItems?: undefined; additionalItems?: undefined; }; }; } | { title: string; properties: { type: { enum: string[]; }; coordinates: { type: string; items: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; }; }; }; minItems?: undefined; }; minItems?: undefined; maxItems?: undefined; additionalItems?: undefined; }; }; })[]; }; properties: JSONSchemaType<IOsmParkingMachinesProperties>; }; required: string[]; }; }; }; required: string[]; }; private static getSchema; }