Your result variable is out of scope.
Define var result; outside of your response.on then set result = reply.getAuthjwt().
Otherwise, I believe that you should be able to return response.on and just return reply.getAuthjwt() within your function.
const signIn = async (password) => {
  var request = new DeviceAuthQuery();
  request.setPassword(password);
  var response = client.authenticate(request, {}, (err, response) => {
      console.log("Request Sent 1111");
  });
  return response.on('data', function(reply) {
      console.log("Data Received 2222");
      console.log('Data: 22222'+ reply.getAuthjwt());
      return reply.getAuthjwt()
  });
}
export {
    signIn
};
or
const signIn = async (password) => {
  var result;
  var request = new DeviceAuthQuery();
  request.setPassword(password);
  var response = client.authenticate(request, {}, (err, response) => {
      console.log("Request Sent 1111");
  });
  response.on('data', function(reply) {
      console.log("Data Received 2222");
      console.log('Data: 22222'+ reply.getAuthjwt());
      result = reply.getAuthjwt()
  });
  return result;
}
export {
    signIn
};
I also wonder if you can use
const signIn = async (password) => {
  var result;
  var request = new DeviceAuthQuery();
  request.setPassword(password);
  client.authenticate(request, {}, (err, response) => {
      response.on('data', function(reply) {
        console.log("Data Received 2222");
        console.log('Data: 22222'+ reply.getAuthjwt());
        result = reply.getAuthjwt()
     });
  });
  return result;  
}
export {
    signIn
};