import { PacketHighwayContext } from '@/napcat-core/packet/highway/highwayContext'; import { NapCatCore } from '@/napcat-core/index'; import { PacketLogger } from '@/napcat-core/packet/context/loggerContext'; import { NapCoreContext } from '@/napcat-core/packet/context/napCoreContext'; import { PacketClientContext } from '@/napcat-core/packet/context/clientContext'; import { PacketOperationContext } from '@/napcat-core/packet/context/operationContext'; import { PacketMsgConverter } from '@/napcat-core/packet/message/converter'; export class PacketContext { readonly msgConverter: PacketMsgConverter; readonly napcore: NapCoreContext; readonly logger: PacketLogger; readonly client: PacketClientContext; readonly highway: PacketHighwayContext; readonly operation: PacketOperationContext; constructor (core: NapCatCore) { this.msgConverter = new PacketMsgConverter(); this.napcore = new NapCoreContext(core); this.logger = new PacketLogger(this.napcore); this.client = new PacketClientContext(this.napcore, this.logger, this.napcore.napi2nativeLoader); this.highway = new PacketHighwayContext(this.napcore, this.logger, this.client); this.operation = new PacketOperationContext(this); } }