sg_name_market/lib.rs
1use cosmwasm_schema::cw_serde;
2use cosmwasm_std::Timestamp;
3
4#[cw_serde]
5pub enum SgNameMarketplaceExecuteMsg {
6 /// List name NFT on the marketplace by creating a new ask
7 /// Only the name minter can call this.
8 SetAsk { token_id: String, seller: String },
9 /// Remove name on the marketplace.
10 /// Only the name collection can call this (i.e: when burned).
11 RemoveAsk { token_id: String },
12 /// Update ask when an NFT is transferred
13 /// Only the name collection can call this
14 UpdateAsk { token_id: String, seller: String },
15 /// Place a bid on an existing ask
16 SetBid { token_id: String },
17 /// Remove an existing bid from an ask
18 RemoveBid { token_id: String },
19 /// Accept a bid on an existing ask
20 AcceptBid { token_id: String, bidder: String },
21 /// Fund renewal of a name
22 FundRenewal { token_id: String },
23 /// Refund a renewal of a name
24 RefundRenewal { token_id: String },
25 /// Check if expired names have been paid for, and collect fees.
26 /// If not paid, transfer ownership to the highest bidder.
27 ProcessRenewals { time: Timestamp },
28 /// Setup contract with minter and collection addresses
29 /// Can only be run once
30 Setup { minter: String, collection: String },
31}