amb-monitor/entity/erc_to_native_message.go

28 lines
849 B
Go

package entity
import (
"context"
"time"
"github.com/ethereum/go-ethereum/common"
)
type ErcToNativeMessage struct {
ID uint `db:"id"`
BridgeID string `db:"bridge_id"`
MsgHash common.Hash `db:"msg_hash"`
Direction Direction `db:"direction"`
Sender common.Address `db:"sender"`
Receiver common.Address `db:"receiver"`
Value string `db:"value"`
RawMessage []byte `db:"raw_message"`
CreatedAt *time.Time `db:"created_at"`
UpdatedAt *time.Time `db:"updated_at"`
}
type ErcToNativeMessagesRepo interface {
Ensure(ctx context.Context, msg *ErcToNativeMessage) error
GetByMsgHash(ctx context.Context, bridgeID string, msgHash common.Hash) (*ErcToNativeMessage, error)
FindPendingMessages(ctx context.Context, bridgeID string) ([]*ErcToNativeMessage, error)
}