push(pushedRequest) {
    const { correlationId } = pushedRequest.entry
    const socketRequest = this.createSocketRequest(pushedRequest)

    if (this.canSendSocketRequestImmediately()) {
      this.sendSocketRequest(socketRequest)
      return
    }

    this.pending.push(socketRequest)
    this.scheduleCheckPendingRequests()

    this.logger.debug(`Request enqueued`, {
      clientId: this.clientId,
      broker: this.broker,
      correlationId,
    })

    this[PRIVATE.EMIT_QUEUE_SIZE_EVENT]()
  }
@typedef {Object} PushedRequest
@property {import("./socketRequest").RequestEntry} entry
@property {boolean} expectResponse
@property {Function} sendRequest
@property {number} [requestTimeout]

@public
@param {PushedRequest} pushedRequest