cribers() { return false; } publish() {} } const channels = ObjectCreate(null); function channel(name) { let channel; const ref = channels[name]; if (ref) channel = ref.get(); if (channel) return channel; if (typeof name !== 'string' && typeof name !== 'symbol') { throw new ERR_INVALID_ARG_TYPE('channel', ['string', 'symbol'], name); } channel = new Channel(name); channels[name] = new WeakReference(channel); return channel; } function hasSubscribers(name) { let channel; const ref = channels[name]; if (ref) channel = ref.get(); if (!channel) { return false; } return channel.hasSubscribers; } module.exports = { channel, hasSubscribers, Channel };