37 lines
1.3 KiB
Rust
37 lines
1.3 KiB
Rust
|
use schemars::JsonSchema;
|
||
|
use serde::{Deserialize, Serialize};
|
||
|
|
||
|
use cosmwasm_std::Binary;
|
||
|
use cw0::Expiration;
|
||
|
|
||
|
#[derive(Serialize, Deserialize, Clone, PartialEq, JsonSchema, Debug)]
|
||
|
#[serde(rename_all = "snake_case")]
|
||
|
pub enum Cw721ExecuteMsg {
|
||
|
/// Transfer is a base message to move a token to another account without triggering actions
|
||
|
TransferNft { recipient: String, token_id: String },
|
||
|
/// Send is a base message to transfer a token to a contract and trigger an action
|
||
|
/// on the receiving contract.
|
||
|
SendNft {
|
||
|
contract: String,
|
||
|
token_id: String,
|
||
|
msg: Binary,
|
||
|
},
|
||
|
/// Allows operator to transfer / send the token from the owner's account.
|
||
|
/// If expiration is set, then this allowance has a time/height limit
|
||
|
Approve {
|
||
|
spender: String,
|
||
|
token_id: String,
|
||
|
expires: Option<Expiration>,
|
||
|
},
|
||
|
/// Remove previously granted Approval
|
||
|
Revoke { spender: String, token_id: String },
|
||
|
/// Allows operator to transfer / send any token from the owner's account.
|
||
|
/// If expiration is set, then this allowance has a time/height limit
|
||
|
ApproveAll {
|
||
|
operator: String,
|
||
|
expires: Option<Expiration>,
|
||
|
},
|
||
|
/// Remove previously granted ApproveAll permission
|
||
|
RevokeAll { operator: String },
|
||
|
}
|