add types to serverKey in server

This commit is contained in:
u9g 2024-11-12 16:40:15 -05:00
parent 590dc33fed
commit bcaabebf8f
3 changed files with 10 additions and 2 deletions

View file

@ -41,10 +41,11 @@
"minecraft-wrap": "^1.2.3",
"mocha": "^10.0.0",
"power-assert": "^1.0.0",
"standard": "^17.0.0",
"prismarine-registry": "^1.8.0"
"prismarine-registry": "^1.8.0",
"standard": "^17.0.0"
},
"dependencies": {
"@types/node-rsa": "^1.1.4",
"@types/readable-stream": "^4.0.0",
"aes-js": "^3.1.2",
"buffer-equal": "^1.0.0",

2
src/index.d.ts vendored
View file

@ -7,6 +7,7 @@ import { Agent } from 'http'
import { Transform } from "readable-stream";
import { BinaryLike, KeyObject } from 'crypto';
import { Realm } from "prismarine-realms"
import NodeRSA from 'node-rsa';
type PromiseLike = Promise<void> | void
@ -166,6 +167,7 @@ declare module 'minecraft-protocol' {
motd: string
motdMsg?: Object
favicon: string
serverKey: NodeRSA
close(): void
on(event: 'connection', handler: (client: ServerClient) => PromiseLike): this
on(event: 'error', listener: (error: Error) => PromiseLike): this

View file

@ -8,6 +8,11 @@ const { concat } = require('../transforms/binaryStream')
const { mojangPublicKeyPem } = require('./constants')
const debug = require('debug')('minecraft-protocol')
/**
* @param {import('../index').Client} client
* @param {import('../index').Server} server
* @param {Object} options
*/
module.exports = function (client, server, options) {
const mojangPubKey = crypto.createPublicKey(mojangPublicKeyPem)
const raise = (translatableError) => client.end(translatableError, JSON.stringify({ translate: translatableError }))