wormhole-explorer/tx-tracker/queue/types.go

36 lines
665 B
Go

package queue
import (
"context"
"time"
sdk "github.com/wormhole-foundation/wormhole/sdk/vaa"
)
type sqsEvent struct {
MessageID string `json:"MessageId"`
Message string `json:"Message"`
}
// Event represents a event data to be handle.
type Event struct {
TrackID string
ID string
ChainID sdk.ChainID
EmitterAddress string
Sequence string
Timestamp *time.Time
TxHash string
}
// ConsumerMessage defition.
type ConsumerMessage interface {
Data() *Event
Done()
Failed()
IsExpired() bool
}
// ConsumeFunc is a function to consume Event.
type ConsumeFunc func(context.Context) <-chan ConsumerMessage