@openevstack/ocpp-rpc
Version:
⚡ A lightweight, production-ready RPC server built with Express and WebSocket for handling OCPP-based EV charger communication. Part of the OpenEVStack ecosystem.
29 lines (28 loc) • 1.28 kB
TypeScript
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
import EventEmitter from "events";
import { WebSocket } from "ws";
import { IncomingMessage } from "http";
import { IClose, ServerOptions } from "./interfaces/Options.interface";
import { AuthCallback } from "./types/types";
import { IListenOptions, IRpcServer } from "./interfaces/Server.interface";
import { Socket } from "net";
export declare class RpcServer extends EventEmitter implements IRpcServer {
private _httpServerAbortControllers;
private _state;
private _clients;
private _pendingUpgrades;
private _options;
private _wss;
private _strictValidators;
private authCallback?;
constructor(options: ServerOptions);
reconfigure(options: ServerOptions): void;
get handleUpgrade(): (request: IncomingMessage, socket: Socket, head: Buffer) => Promise<void>;
_onConnection(websocket: WebSocket, request: IncomingMessage): Promise<void>;
auth(cb: AuthCallback): void;
listen(port: number, host: string, options: IListenOptions): Promise<import("http").Server<typeof IncomingMessage, typeof import("http").ServerResponse>>;
close({ code, reason, awaitPending, force }: IClose): Promise<void>;
}