'use strict';
/**
* Wialon Remote API endpoint implementations
*
* @module apis
*/
/**
* Helper method to inject module endpoint implementations
*
* @private
* @param {string} module - Relative module path
*/
var inject = function ( module ) {
return function ( opts ) {
var C = require( module );
var o = new C( opts );
o.wialon = this;
return Object.freeze( o );
};
};
/**
* Export APIs
*/
module.exports = {
geofences : inject( './resources/zones' ),
search : inject( './core/search' ),
zones : inject( './resources/zones' )
};