chains

package
v0.0.1-gowrapper-test Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 30, 2025 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DefaultAptosChainID is the default chain ID for mainnet
	DefaultAptosChainID = 1

	// DefaultAptosGasUnitPrice is the default gas unit price
	DefaultAptosGasUnitPrice = 100

	// DefaultAptosMaxGasAmount is the default max gas amount
	DefaultAptosMaxGasAmount = 50000

	// DefaultAptosExpirationTimestampSecs is the default expiration time (1 hour from now)
	DefaultAptosExpirationTimestampSecs = 3600
)

Constants for Aptos configuration

Variables

This section is empty.

Functions

func GetDefaultChainID

func GetDefaultChainID(chainId uint32) uint32

GetDefaultChainID returns the default chain ID if none provided

func GetDefaultExpirationTimestamp

func GetDefaultExpirationTimestamp(expirationTimestampSecs uint64) uint64

GetDefaultExpirationTimestamp returns the default expiration timestamp if none provided

func GetDefaultGasUnitPrice

func GetDefaultGasUnitPrice(gasUnitPrice uint64) uint64

GetDefaultGasUnitPrice returns the default gas unit price if none provided

func GetDefaultMaxGasAmount

func GetDefaultMaxGasAmount(maxGasAmount uint64) uint64

GetDefaultMaxGasAmount returns the default max gas amount if none provided

func HasTransactionPayload

func HasTransactionPayload(input *aptos.SigningInput) bool

HasTransactionPayload checks if the input has at least one transaction payload

func ValidateAndCastInput

func ValidateAndCastInput(input interface{}) (*aptos.SigningInput, error)

ValidateAndCastInput validates and casts input to AptosSigningInput

func ValidateBuildSigningInputParams

func ValidateBuildSigningInputParams(sender, to string, amount uint64) error

ValidateBuildSigningInputParams validates parameters for BuildSigningInput

func ValidateTransactionInput

func ValidateTransactionInput(input *chain_abstraction.TransactionInput, coinType core.CoinType) error

ValidateTransactionInput validates transaction input for external signing

Types

type AptosChain

type AptosChain struct {
	*chain_abstraction.BaseChain
}

AptosChain implements the Chain interface for Aptos

func NewAptosChain

func NewAptosChain() *AptosChain

NewAptosChain creates a new Aptos chain instance

func (*AptosChain) BuildSigningInput

func (a *AptosChain) BuildSigningInput(
	sender string,
	sequenceNumber int64,
	maxGasAmount uint64,
	gasUnitPrice uint64,
	expirationTimestampSecs uint64,
	chainId uint32,
	to string,
	amount uint64,
) (*aptos.SigningInput, error)

BuildSigningInput creates an Aptos signing input for transfer operations

func (*AptosChain) BuildSigningInputFromRequest

func (a *AptosChain) BuildSigningInputFromRequest(request *AptosTransferRequest) (*aptos.SigningInput, error)

BuildSigningInputFromRequest creates an Aptos signing input from a transfer request

func (*AptosChain) BuildTokenTransferSigningInput

func (a *AptosChain) BuildTokenTransferSigningInput(
	sender string,
	sequenceNumber int64,
	maxGasAmount uint64,
	gasUnitPrice uint64,
	expirationTimestampSecs uint64,
	chainId uint32,
	to string,
	amount uint64,
	function *aptos.StructTag,
) (*aptos.SigningInput, error)

BuildTokenTransferSigningInput creates an Aptos signing input for token transfer operations

func (*AptosChain) BuildTokenTransferSigningInputFromRequest

func (a *AptosChain) BuildTokenTransferSigningInputFromRequest(request *AptosTokenTransferRequest) (*aptos.SigningInput, error)

BuildTokenTransferSigningInputFromRequest creates an Aptos signing input from a token transfer request

func (*AptosChain) CompileTransaction

func (a *AptosChain) CompileTransaction(
	input *chain_abstraction.TransactionInput,
	signatures [][]byte,
	publicKeys [][]byte,
) ([]byte, error)

CompileTransaction compiles an Aptos transaction with signatures

func (*AptosChain) CreateAndSignTransaction

func (a *AptosChain) CreateAndSignTransaction(input interface{}, privateKey []byte) ([]byte, error)

CreateAndSignTransaction creates and signs an Aptos transaction

func (*AptosChain) GetPreimageHash

func (a *AptosChain) GetPreimageHash(input *chain_abstraction.TransactionInput) ([]byte, []byte, error)

GetPreimageHash gets the preimage hash for external signing

func (*AptosChain) GetPublicKeyFromPrivateKey

func (a *AptosChain) GetPublicKeyFromPrivateKey(privateKey []byte) ([]byte, error)

GetPublicKeyFromPrivateKey derives the public key from a private key

func (*AptosChain) GetTransactionHash

func (a *AptosChain) GetTransactionHash(encodedTx []byte) (string, error)

GetTransactionHash gets the transaction hash

func (*AptosChain) PrepareTransaction

func (a *AptosChain) PrepareTransaction(input interface{}) (*chain_abstraction.TransactionInput, error)

PrepareTransaction prepares an Aptos transaction for external signing

func (*AptosChain) Sign

func (a *AptosChain) Sign(preimage []byte, privateKey []byte) ([]byte, error)

Sign signs a preimage with a private key

func (*AptosChain) ValidateTransactionInput

func (a *AptosChain) ValidateTransactionInput(input interface{}) error

ValidateTransactionInput validates Aptos transaction input

type AptosConfig

type AptosConfig struct {
	// Chain ID (1 for mainnet, 32 for devnet, etc.)
	ChainId uint32

	// Gas unit price
	GasUnitPrice uint64

	// Max gas amount
	MaxGasAmount uint64

	// Expiration timestamp in seconds
	ExpirationTimestampSecs uint64
}

AptosConfig holds configuration for Aptos operations

func NewAptosConfig

func NewAptosConfig() *AptosConfig

NewAptosConfig creates a new Aptos configuration with defaults

func (*AptosConfig) WithChainID

func (c *AptosConfig) WithChainID(chainId uint32) *AptosConfig

WithChainID sets the chain ID

func (*AptosConfig) WithExpirationTimestamp

func (c *AptosConfig) WithExpirationTimestamp(expirationTimestampSecs uint64) *AptosConfig

WithExpirationTimestamp sets the expiration timestamp

func (*AptosConfig) WithGasUnitPrice

func (c *AptosConfig) WithGasUnitPrice(gasUnitPrice uint64) *AptosConfig

WithGasUnitPrice sets the gas unit price

func (*AptosConfig) WithMaxGasAmount

func (c *AptosConfig) WithMaxGasAmount(maxGasAmount uint64) *AptosConfig

WithMaxGasAmount sets the max gas amount

type AptosStructTag

type AptosStructTag struct {
	AccountAddress string
	Module         string
	Name           string
}

AptosStructTag represents an Aptos struct tag

func NewAptosStructTag

func NewAptosStructTag(accountAddress, module, name string) *AptosStructTag

NewAptosStructTag creates a new Aptos struct tag

func (*AptosStructTag) ToProtoStructTag

func (s *AptosStructTag) ToProtoStructTag() *aptos.StructTag

ToProtoStructTag converts AptosStructTag to protobuf StructTag

type AptosTokenTransferRequest

type AptosTokenTransferRequest struct {
	Sender                  string
	To                      string
	Amount                  uint64
	Function                *aptos.StructTag
	SequenceNumber          int64
	MaxGasAmount            uint64
	GasUnitPrice            uint64
	ExpirationTimestampSecs uint64
	ChainId                 uint32
}

AptosTokenTransferRequest represents a token transfer operation request

func NewAptosTokenTransferRequest

func NewAptosTokenTransferRequest(sender, to string, amount uint64, function *aptos.StructTag) *AptosTokenTransferRequest

NewAptosTokenTransferRequest creates a new token transfer request

func (*AptosTokenTransferRequest) WithChainID

WithChainID sets the chain ID

func (*AptosTokenTransferRequest) WithExpirationTimestamp

func (r *AptosTokenTransferRequest) WithExpirationTimestamp(expirationTimestampSecs uint64) *AptosTokenTransferRequest

WithExpirationTimestamp sets the expiration timestamp

func (*AptosTokenTransferRequest) WithGasUnitPrice

func (r *AptosTokenTransferRequest) WithGasUnitPrice(gasUnitPrice uint64) *AptosTokenTransferRequest

WithGasUnitPrice sets the gas unit price

func (*AptosTokenTransferRequest) WithMaxGasAmount

func (r *AptosTokenTransferRequest) WithMaxGasAmount(maxGasAmount uint64) *AptosTokenTransferRequest

WithMaxGasAmount sets the max gas amount

func (*AptosTokenTransferRequest) WithSequenceNumber

func (r *AptosTokenTransferRequest) WithSequenceNumber(sequenceNumber int64) *AptosTokenTransferRequest

WithSequenceNumber sets the sequence number

type AptosTransferRequest

type AptosTransferRequest struct {
	Sender                  string
	To                      string
	Amount                  uint64
	SequenceNumber          int64
	MaxGasAmount            uint64
	GasUnitPrice            uint64
	ExpirationTimestampSecs uint64
	ChainId                 uint32
}

AptosTransferRequest represents a transfer operation request

func NewAptosTransferRequest

func NewAptosTransferRequest(sender, to string, amount uint64) *AptosTransferRequest

NewAptosTransferRequest creates a new transfer request

func (*AptosTransferRequest) WithChainID

func (r *AptosTransferRequest) WithChainID(chainId uint32) *AptosTransferRequest

WithChainID sets the chain ID

func (*AptosTransferRequest) WithExpirationTimestamp

func (r *AptosTransferRequest) WithExpirationTimestamp(expirationTimestampSecs uint64) *AptosTransferRequest

WithExpirationTimestamp sets the expiration timestamp

func (*AptosTransferRequest) WithGasUnitPrice

func (r *AptosTransferRequest) WithGasUnitPrice(gasUnitPrice uint64) *AptosTransferRequest

WithGasUnitPrice sets the gas unit price

func (*AptosTransferRequest) WithMaxGasAmount

func (r *AptosTransferRequest) WithMaxGasAmount(maxGasAmount uint64) *AptosTransferRequest

WithMaxGasAmount sets the max gas amount

func (*AptosTransferRequest) WithSequenceNumber

func (r *AptosTransferRequest) WithSequenceNumber(sequenceNumber int64) *AptosTransferRequest

WithSequenceNumber sets the sequence number

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL