code: func (c *Client) CreateRawTransactionAsync(inputs []btcjson.TransactionInput,
  	amounts map[btcutil.Address]btcutil.Amount, lockTime *int64) FutureCreateRawTransactionResult {
  
  	convertedAmts := make(map[string]float64, len(amounts))
  	for addr, amount := range amounts {
  		convertedAmts[addr.String()] = amount.ToBTC()
  	}
  	cmd := btcjson.NewCreateRawTransactionCmd(inputs, convertedAmts, lockTime)
  	return c.sendCmd(cmd)
  }
docs: // CreateRawTransactionAsync returns an instance of a type that can be used to
  // get the result of the RPC at some future time by invoking the Receive
  // function on the returned instance.
  //
  // See CreateRawTransaction for the blocking version and more details.