UNPKG

jsmodbus

Version:

Implementation for the Serial/TCP Modbus protocol.

34 lines 1.62 kB
/// <reference types="node" /> import ModbusAbstractRequest from './abstract-request'; import { RequestToResponse } from './request-response-map'; import ModbusRTURequest from './rtu-request'; import ModbusTCPRequest from './tcp-request'; import { UserRequestError } from './user-request-error'; import { UserRequestMetrics } from './user-request-metrics'; export declare type ModbusRequest = ModbusTCPRequest | ModbusRTURequest; export interface IUserRequestResolve<Req extends ModbusAbstractRequest> { metrics: UserRequestMetrics; request: Req; response: RequestToResponse<Req>; } export declare type PromiseUserRequest<Req extends ModbusAbstractRequest> = Promise<IUserRequestResolve<Req>>; export default class UserRequest<Req extends ModbusAbstractRequest = any> { protected readonly _request: Req; protected readonly _timeout: number; protected readonly _promise: PromiseUserRequest<Req>; protected _resolve: (value: IUserRequestResolve<Req>) => void; protected _reject: (err: UserRequestError<RequestToResponse<Req>, Req>) => void; protected _timer: NodeJS.Timeout; protected _metrics: UserRequestMetrics; constructor(request: Req, timeout?: number); createPayload(): Buffer; start(cb: () => void): void; readonly metrics: UserRequestMetrics; done(): void; readonly request: Req; readonly timeout: number; readonly promise: Promise<IUserRequestResolve<Req>>; resolve(response: RequestToResponse<Req>): void; readonly reject: (err: UserRequestError<RequestToResponse<Req>, Req>) => void; } //# sourceMappingURL=user-request.d.ts.map