Withdraw
type WithdrawBuilder
type WithdrawBuilder struct {
	AccountId        AccountId
	SubAccountId     SubAccountId
	ToChainId        ChainId
	ToAddress        ZkLinkAddress
	L2SourceToken    TokenId
	L1TargetToken    TokenId
	Amount           BigUint
	Fee              BigUint
	Nonce            Nonce
	WithdrawFeeRatio uint16
	WithdrawToL1     bool
	Timestamp        TimeStamp
}The builder is used to build the Withdraw transaction.
type Withdraw
Withdraw transaction type, it's a opaque data type.
func NewWithdraw(builder WithdrawBuilder)
func NewWithdraw(builder WithdrawBuilder) *WithdrawCreate a new Withdraw transaction.
input: builder: WithdrawBuilder
func (*Withdraw) GetBytes
func (_self *Withdraw) GetBytes() []uint8Get the encoded bytes used to create the L3 signature.
func (*Withdraw) TxHash
func (*Withdraw) TxHash() []uint8Get the transaction hash of Withdraw transaction
func (*Withdraw) IsValid
func (*Withdraw) IsValid() boolCheck if all the fields in Withdraw are valid. For example, if the ChainId is exceeded the maximum ChainId, it will return false.
func (*Withdraw) CreateSignedTx
func (*Withdraw) CreateSignedTx(signer *ZkLinkSigner) (*Withdraw, error)The ZkLinkSigner will sign the [Withdraw] transaction, replace the default signature in the transaction.
input:
- signer: ZkLinkSigner 
func (*Withdraw) GetSignature
func (_self *Withdraw) GetSignature() ZkLinkSignatureGet L3 signature inside the transaction.
func (*Withdraw) IsSignatureValid
func (*Withdraw) IsSignatureValid() boolCheck if the L3 signature in the Withdraw transaction is valid or not.
func (*Withdraw) EthSignature
func (*Withdraw) EthSignature(ethSigner *EthSigner, l2SourceTokenSymbol string) (PackedEthSignature, error)Create the Ethereum signature. input::
- ethSigner: the Ethereum signer 
- l2SourceTokenSymbol: the symbol string of l2 token, for example: "USD" 
func (*Withdraw) SubmitterSignature
func (_self *Withdraw) SubmitterSignature(signer *ZkLinkSigner) (ZkLinkSignature, error)Create a submitter signature.
input:
- signer: ZkLinkSigner 
func (*Withdraw) ToZklinkTx
func (*Withdraw) ToZklinkTx() ZkLinkTxChange the Withdraw transaction to the ZkLinkTx
Last updated
Was this helpful?