UNPKG

mobility-toolbox-js

Version:

Toolbox for JavaScript applications in the domains of mobility and logistics.

61 lines (60 loc) 2.04 kB
import HttpAPI from './HttpAPI'; import type { MocoNotification, MocoParameters } from '../types'; export interface MocoAPIOptions { apiKey: string; graph?: string; simplify?: number; ssoConfig?: string; url?: string; } export type MocoParametersExtended = { apiKey?: string; date?: Date; graph?: string; sso_config?: string; } & Omit<MocoParameters, 'apiKey' | 'graph' | 'sso_config'>; /** * This class provides convenience methods to use to the [geOps MOCO API](https://geops.com/de/solution/disruption-information). * * @example * import { MocoAPI } from 'mobility-toolbox-js/api'; * * const api = new MocoAPI({ * // graph: 'osm', * // url: 'https://moco.geops.io/api/v1', * // ssoConfig: "geopstest", * }); * * const notifications = await api.getNotifications(); * * console.log('Log route:', JSON.stringify(notifications)); * * @private */ declare class MocoAPI extends HttpAPI { graph?: string; simplify?: number; ssoConfig?: string; /** * Constructor * * @param {Object} options Options. * * @param {string} options.apiKey Access key for [geOps APIs](https://developer.geops.io/). * @param {string} [options.url='https://moco.geops.io/api/v1'] Service url. * @param {string} [options.ssoConfig='geopstest'] SSO config to get notifications from. * @param {string} [options.graph='osm'] Graph to use for geometries. */ constructor(options: MocoAPIOptions); /** * Get notifications from the MOCO API. * Notifications are returned as an array of GeoJSON feature collections. * * @param {MocoParameters} params Request parameters. * @param {FetchOptions} config Options for the fetch request. * @return {Promise<MocoNotification[]>} An array of GeoJSON feature collections with coordinates in [EPSG:4326](http://epsg.io/4326). * @public */ getNotifications(params?: MocoParametersExtended, config?: RequestInit): Promise<MocoNotification[]>; } export default MocoAPI;