/**
 * Traccar
 * Traccar GPS tracking server API documentation. To use the API you need to have a server instance. For testing purposes you can use one of free [demo servers](https://www.traccar.org/demo-server/). For production use you can install your own server or get a [subscription service](https://www.traccar.org/product/tracking-server/).
 *
 * OpenAPI spec version: 4.11
 * Contact: support@traccar.org
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */
import { AxiosPromise, AxiosInstance } from 'axios';
import { Configuration } from '../configuration';
import { RequestArgs, BaseAPI } from '../base';
import { Position } from '../models';
/**
 * PositionsApi - axios parameter creator
 * @export
 */
export declare const PositionsApiAxiosParamCreator: (configuration?: Configuration) => {
    /**
     * We strongly recommend using [Traccar WebSocket API](https://www.traccar.org/traccar-api/) instead of periodically polling positions endpoint. Without any params, it returns a list of last known positions for all the user's Devices. _from_ and _to_ fields are not required with _id_.
     * @summary Fetches a list of Positions
     * @param {number} [deviceId] _deviceId_ is optional, but requires the _from_ and _to_ parameters when used
     * @param {Date} [from] in IS0 8601 format. eg. &#x60;1963-11-22T18:30:00Z&#x60;
     * @param {Date} [to] in IS0 8601 format. eg. &#x60;1963-11-22T18:30:00Z&#x60;
     * @param {number} [id] To fetch one or more positions. Multiple params can be passed like &#x60;id&#x3D;31&amp;id&#x3D;42&#x60;
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    positionsGet: (deviceId?: number, from?: Date, to?: Date, id?: number, options?: any) => Promise<RequestArgs>;
};
/**
 * PositionsApi - functional programming interface
 * @export
 */
export declare const PositionsApiFp: (configuration?: Configuration) => {
    /**
     * We strongly recommend using [Traccar WebSocket API](https://www.traccar.org/traccar-api/) instead of periodically polling positions endpoint. Without any params, it returns a list of last known positions for all the user's Devices. _from_ and _to_ fields are not required with _id_.
     * @summary Fetches a list of Positions
     * @param {number} [deviceId] _deviceId_ is optional, but requires the _from_ and _to_ parameters when used
     * @param {Date} [from] in IS0 8601 format. eg. &#x60;1963-11-22T18:30:00Z&#x60;
     * @param {Date} [to] in IS0 8601 format. eg. &#x60;1963-11-22T18:30:00Z&#x60;
     * @param {number} [id] To fetch one or more positions. Multiple params can be passed like &#x60;id&#x3D;31&amp;id&#x3D;42&#x60;
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    positionsGet(deviceId?: number, from?: Date, to?: Date, id?: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<Position>>>;
};
/**
 * PositionsApi - factory interface
 * @export
 */
export declare const PositionsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
    /**
     * We strongly recommend using [Traccar WebSocket API](https://www.traccar.org/traccar-api/) instead of periodically polling positions endpoint. Without any params, it returns a list of last known positions for all the user's Devices. _from_ and _to_ fields are not required with _id_.
     * @summary Fetches a list of Positions
     * @param {number} [deviceId] _deviceId_ is optional, but requires the _from_ and _to_ parameters when used
     * @param {Date} [from] in IS0 8601 format. eg. &#x60;1963-11-22T18:30:00Z&#x60;
     * @param {Date} [to] in IS0 8601 format. eg. &#x60;1963-11-22T18:30:00Z&#x60;
     * @param {number} [id] To fetch one or more positions. Multiple params can be passed like &#x60;id&#x3D;31&amp;id&#x3D;42&#x60;
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    positionsGet(deviceId?: number, from?: Date, to?: Date, id?: number, options?: any): AxiosPromise<Array<Position>>;
};
/**
 * PositionsApi - object-oriented interface
 * @export
 * @class PositionsApi
 * @extends {BaseAPI}
 */
export declare class PositionsApi extends BaseAPI {
    /**
     * We strongly recommend using [Traccar WebSocket API](https://www.traccar.org/traccar-api/) instead of periodically polling positions endpoint. Without any params, it returns a list of last known positions for all the user's Devices. _from_ and _to_ fields are not required with _id_.
     * @summary Fetches a list of Positions
     * @param {number} [deviceId] _deviceId_ is optional, but requires the _from_ and _to_ parameters when used
     * @param {Date} [from] in IS0 8601 format. eg. &#x60;1963-11-22T18:30:00Z&#x60;
     * @param {Date} [to] in IS0 8601 format. eg. &#x60;1963-11-22T18:30:00Z&#x60;
     * @param {number} [id] To fetch one or more positions. Multiple params can be passed like &#x60;id&#x3D;31&amp;id&#x3D;42&#x60;
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     * @memberof PositionsApi
     */
    positionsGet(deviceId?: number, from?: Date, to?: Date, id?: number, options?: any): Promise<import("axios").AxiosResponse<Position[]>>;
}
