21 lines
484 B
TypeScript
21 lines
484 B
TypeScript
interface InputPacketJSONDecoded {
|
|
command: string
|
|
data: any
|
|
}
|
|
|
|
type onReceiveCallback = (data: any) => void
|
|
export default abstract class InputPacket {
|
|
onreceive: onReceiveCallback | null = null
|
|
|
|
onReceive (callback: onReceiveCallback): void {
|
|
this.onreceive = callback
|
|
}
|
|
abstract identifier (): string
|
|
|
|
recv (packet: InputPacketJSONDecoded): void {
|
|
if (this.onreceive !== null) {
|
|
this.onreceive(packet.data)
|
|
}
|
|
}
|
|
}
|