sorare/tokens/token_offer.go

50 lines
1.5 KiB
Go

package tokens
import (
"time"
"git.lehouerou.net/laurent/sorare/graphql"
"git.lehouerou.net/laurent/sorare/types"
)
type TokenOfferNft struct {
AssetId string `graphql:"assetId"`
Collection string `graphql:"collection"`
Metadata struct {
TokenCardMetadataInterface TokenCardMetadata `graphql:"... on TokenCardMetadataInterface"`
} `graphql:"metadata"`
}
type TokenOfferUser struct {
Id graphql.Id `graphql:"id"`
Nickname string `graphql:"nickname"`
Slug string `graphql:"slug"`
EthVaultId int `graphql:"ethVaultId"`
}
type TokenOfferSide struct {
Amounts MonetaryAmount `graphql:"amounts"`
Nfts []TokenOfferNft `graphql:"nfts"`
}
type TokenOffer struct {
Id graphql.Id `graphql:"id"`
BlockchainId string `graphql:"blockchainId"`
AcceptedAt time.Time `graphql:"acceptedAt"`
CreatedAt time.Time `graphql:"createdAt"`
CancelledAt time.Time `graphql:"cancelledAt"`
EndDate time.Time `graphql:"endDate"`
StartDate time.Time `graphql:"startDate"`
Status string
MarketFeeAmounts MonetaryAmount `graphql:"marketFeeAmounts"`
Receiver struct {
User TokenOfferUser `graphql:"... on User"`
} `graphql:"actualReceiver"`
ReceiverSide TokenOfferSide `graphql:"receiverSide"`
Sender struct {
User TokenOfferUser `graphql:"... on User"`
}
SenderSide TokenOfferSide `graphql:"senderSide"`
SettlementCurrencies []types.SupportedCurrency `graphql:"settlementCurrencies"`
}