Returns a promise which will not resolve until specified transaction hash is mined. If confirmations is 0, this method is non-blocking and if the transaction has not been mined returns null. Otherwise, this method will block until the transaction has confirmed blocks mined on top of the block in which it was mined.