How do I rotate the hook?

I have a character which throws a hook. I want the hook to rotate in the direction I’m adding velocity/specific target. I’v tried using this:

transform.TransformDirection(hookDirection);

hookDirection is the direction of target or the velocity I’m throwing. I’m calling it when I’m pressing the input. It’s not working as I expected. What am I missing here? Any help?

Edit: I’m looking for immediate rotation. It’s a 3d game and the z-axis negative in forward direction.

You can use:

transform.rotation = Quaternion.LookRotation(-hookDirection);

If you are Instantiating the object, you can use the the Quaternion call in the Instantiate() call. The negative sign is because you say the ‘forward’ is facing negative ‘z’.