func DefaultGenesisState() GenesisState {
	return GenesisState{
		Acknowledgements: []PacketState{},
		Receipts:         []PacketState{},
		Commitments:      []PacketState{},
		SendSequences:    []PacketSequence{},
		RecvSequences:    []PacketSequence{},
		AckSequences:     []PacketSequence{},
	}
}
DefaultGenesisState returns the tibc packet submodule's default genesis state.
package types
import (
	"errors"
	"fmt"
	host "github.com/bianjieai/tibc-go/modules/tibc/core/24-host"
)
func NewPacketState(sourceChain, destinationChain string, seq uint64, data []byte) PacketState {
	return PacketState{
		SourceChain:      sourceChain,
		DestinationChain: destinationChain,
		Sequence:         seq,
		Data:             data,
	}
}
func (pa PacketState) Validate() error {
	if pa.Data == nil {
		return errors.New("data bytes cannot be nil")
	}
	return validateGenFields(pa.SourceChain, pa.DestinationChain, pa.Sequence)
}
func NewPacketSequence(sourceChain, destinationChain string, seq uint64) PacketSequence {
	return PacketSequence{
		SourceChain:      sourceChain,
		DestinationChain: destinationChain,
		Sequence:         seq,
	}
}
func (ps PacketSequence) Validate() error {
	return validateGenFields(ps.SourceChain, ps.DestinationChain, ps.Sequence)
}
func NewGenesisState(
	acks, commitments, receipts []PacketState,
	sendSeqs, recvSeqs, ackSeqs []PacketSequence,
) GenesisState {
	return GenesisState{
		Acknowledgements: acks,
		Commitments:      commitments,
		Receipts:         receipts,
		SendSequences:    sendSeqs,
		RecvSequences:    recvSeqs,
		AckSequences:     ackSeqs,
	}
}