import type * as Protobuf from "@meshtastic/protobufs"; import { SimpleEventDispatcher } from "ste-simple-events"; import type { PacketMetadata } from "../types.ts"; import type * as Types from "../types.ts"; export class EventSystem { /** * Fires when a new FromRadio message has been received from the device * * @event onLogEvent */ public readonly onLogEvent: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new FromRadio message has been received from the device * * @event onFromRadio */ public readonly onFromRadio: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new FromRadio message containing a Data packet has been * received from the device * * @event onMeshPacket */ public readonly onMeshPacket: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new MyNodeInfo message has been received from the device * * @event onMyNodeInfo */ public readonly onMyNodeInfo: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new MeshPacket message containing a NodeInfo packet has been * received from device * * @event onNodeInfoPacket */ public readonly onNodeInfoPacket: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new Channel message is received * * @event onChannelPacket */ public readonly onChannelPacket: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new Config message is received * * @event onConfigPacket */ public readonly onConfigPacket: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new ModuleConfig message is received * * @event onModuleConfigPacket */ public readonly onModuleConfigPacket: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new MeshPacket message containing a ATAK packet has been * received from device * * @event onAtakPacket */ public readonly onAtakPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Text packet has been * received from device * * @event onMessagePacket */ public readonly onMessagePacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Remote Hardware packet has * been received from device * * @event onRemoteHardwarePacket */ public readonly onRemoteHardwarePacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher< PacketMetadata >(); /** * Fires when a new MeshPacket message containing a Position packet has been * received from device * * @event onPositionPacket */ public readonly onPositionPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a User packet has been * received from device * * @event onUserPacket */ public readonly onUserPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Routing packet has been * received from device * * @event onRoutingPacket */ public readonly onRoutingPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when the device receives a Metadata packet * * @event onDeviceMetadataPacket */ public readonly onDeviceMetadataPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when the device receives a Canned Message Module message packet * * @event onCannedMessageModulePacket */ public readonly onCannedMessageModulePacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Waypoint packet has been * received from device * * @event onWaypointPacket */ public readonly onWaypointPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing an Audio packet has been * received from device * * @event onAudioPacket */ public readonly onAudioPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Detection Sensor packet has been * received from device * * @event onDetectionSensorPacket */ public readonly onDetectionSensorPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Ping packet has been * received from device * * @event onPingPacket */ public readonly onPingPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a IP Tunnel packet has been * received from device * * @event onIpTunnelPacket */ public readonly onIpTunnelPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Paxcounter packet has been * received from device * * @event onPaxcounterPacket */ public readonly onPaxcounterPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Serial packet has been * received from device * * @event onSerialPacket */ public readonly onSerialPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Store and Forward packet * has been received from device * * @event onStoreForwardPacket */ public readonly onStoreForwardPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Store and Forward packet * has been received from device * * @event onRangeTestPacket */ public readonly onRangeTestPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Telemetry packet has been * received from device * * @event onTelemetryPacket */ public readonly onTelemetryPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a ZPS packet has been * received from device * * @event onZPSPacket */ public readonly onZpsPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Simulator packet has been * received from device * * @event onSimulatorPacket */ public readonly onSimulatorPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Trace Route packet has been * received from device * * @event onTraceRoutePacket */ public readonly onTraceRoutePacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Neighbor Info packet has been * received from device * * @event onNeighborInfoPacket */ public readonly onNeighborInfoPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing an ATAK packet has been * received from device * * @event onAtakPluginPacket */ public readonly onAtakPluginPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Map Report packet has been * received from device * * @event onMapReportPacket */ public readonly onMapReportPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing a Private packet has been * received from device * * @event onPrivatePacket */ public readonly onPrivatePacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when a new MeshPacket message containing an ATAK Forwarder packet has been * received from device * * @event onAtakForwarderPacket */ public readonly onAtakForwarderPacket: SimpleEventDispatcher< PacketMetadata > = new SimpleEventDispatcher>(); /** * Fires when the devices connection or configuration status changes * * @event onDeviceStatus */ public readonly onDeviceStatus: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a new FromRadio message containing a LogRecord packet has been * received from device * * @event onLogRecord */ public readonly onLogRecord: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when the device receives a meshPacket, returns a timestamp * * @event onMeshHeartbeat */ public readonly onMeshHeartbeat: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Outputs any debug log data (currently serial connections only) * * @event onDeviceDebugLog */ public readonly onDeviceDebugLog: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Outputs status of pending settings changes * * @event onpendingSettingsChange */ public readonly onPendingSettingsChange: SimpleEventDispatcher = new SimpleEventDispatcher(); /** * Fires when a QueueStatus message is generated * * @event onQueueStatus */ public readonly onQueueStatus: SimpleEventDispatcher = new SimpleEventDispatcher(); }