docs: function(jidOrUserId, callback) {
  
          /**
           * Callback for QB.chat.roster.remove(). Run without parameters.
           * @callback removeRosterCallback
           * */
          var self = this,
              userJid = this.helpers.jidOrUserId(jidOrUserId),
              userId = this.helpers.getIdFromNode(userJid);
  
          var iqParams = {
              'type': 'set',
              'from': self.connection ? self.connection.jid : self.Client.jid.user,
              'id': chatUtils.getUniqueId('getRoster')
          };
  
          var builder = Utils.getEnv().browser ? $iq : XMPP.Stanza,
              iq = chatUtils.createStanza(builder, iqParams, 'iq');
  
          function _callbackWrap() {
              delete self.contacts[userId];
  
              if (typeof callback === 'function') {
                  callback();
              }
          }
  
          iq.c('query', {
              xmlns: chatUtils.MARKERS.ROSTER
          }).c('item', {
              jid: userJid,
              subscription: 'remove'
          });
  
          if(Utils.getEnv().browser) {
              self.connection.sendIQ(iq, _callbackWrap);
          } else {
              self.nodeStanzasCallbacks[iqParams.id] = _callbackWrap;
              self.Client.send(iq);
          }
      }