candle_auction 0.1.0

CosmWasm implementing candle auction
Documentation
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "ExecuteMsg",
  "oneOf": [
    {
      "type": "object",
      "required": [
        "auction"
      ],
      "properties": {
        "auction": {
          "type": "object",
          "required": [
            "duration",
            "name",
            "payment",
            "payment_type",
            "start_timestamp"
          ],
          "properties": {
            "duration": {
              "type": "integer",
              "format": "uint64",
              "minimum": 0.0
            },
            "min_price": {
              "type": [
                "integer",
                "null"
              ],
              "format": "uint128",
              "minimum": 0.0
            },
            "name": {
              "type": "string"
            },
            "payment": {
              "type": "string"
            },
            "payment_type": {
              "$ref": "#/definitions/PaymentType"
            },
            "start_timestamp": {
              "type": "integer",
              "format": "uint64",
              "minimum": 0.0
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    {
      "description": "Winner claim the reward",
      "type": "object",
      "required": [
        "winner_claim"
      ],
      "properties": {
        "winner_claim": {
          "type": "object",
          "required": [
            "auction_id"
          ],
          "properties": {
            "auction_id": {
              "type": "integer",
              "format": "uint64",
              "minimum": 0.0
            },
            "winner": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    {
      "description": "Update Config",
      "type": "object",
      "required": [
        "update_config"
      ],
      "properties": {
        "update_config": {
          "type": "object",
          "properties": {
            "default_denom": {
              "type": [
                "string",
                "null"
              ]
            },
            "enable_auction": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "fee_rate": {
              "type": [
                "integer",
                "null"
              ],
              "format": "uint64",
              "minimum": 0.0
            },
            "max_auction_duration": {
              "type": [
                "integer",
                "null"
              ],
              "format": "uint64",
              "minimum": 0.0
            },
            "min_auction_duration": {
              "type": [
                "integer",
                "null"
              ],
              "format": "uint64",
              "minimum": 0.0
            },
            "support_contract": {
              "type": [
                "array",
                "null"
              ],
              "items": {
                "type": "string"
              }
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    {
      "description": "Candle blow",
      "type": "object",
      "required": [
        "blow_candle"
      ],
      "properties": {
        "blow_candle": {
          "type": "object",
          "required": [
            "auction_id"
          ],
          "properties": {
            "auction_id": {
              "type": "integer",
              "format": "uint64",
              "minimum": 0.0
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    {
      "description": "Receive cw20 interface",
      "type": "object",
      "required": [
        "receive"
      ],
      "properties": {
        "receive": {
          "$ref": "#/definitions/Cw20ReceiveMsg"
        }
      },
      "additionalProperties": false
    },
    {
      "description": "auction flow refund",
      "type": "object",
      "required": [
        "flow_refund"
      ],
      "properties": {
        "flow_refund": {
          "type": "object",
          "required": [
            "auction_id"
          ],
          "properties": {
            "auction_id": {
              "type": "integer",
              "format": "uint64",
              "minimum": 0.0
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    {
      "description": "Bid for denom payment",
      "type": "object",
      "required": [
        "bid_for_denom"
      ],
      "properties": {
        "bid_for_denom": {
          "type": "object",
          "required": [
            "auction_id"
          ],
          "properties": {
            "auction_id": {
              "type": "integer",
              "format": "uint64",
              "minimum": 0.0
            },
            "bidder": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    {
      "description": "cw721 recive",
      "type": "object",
      "required": [
        "receive_nft"
      ],
      "properties": {
        "receive_nft": {
          "$ref": "#/definitions/Cw721ReceiveMsg"
        }
      },
      "additionalProperties": false
    }
  ],
  "definitions": {
    "Binary": {
      "description": "Binary is a wrapper around Vec<u8> to add base64 de/serialization with serde. It also adds some helper methods to help encode inline.\n\nThis is only needed as serde-json-{core,wasm} has a horrible encoding for Vec<u8>. See also <https://github.com/CosmWasm/cosmwasm/blob/main/docs/MESSAGE_TYPES.md>.",
      "type": "string"
    },
    "Cw20ReceiveMsg": {
      "description": "Cw20ReceiveMsg should be de/serialized under `Receive()` variant in a ExecuteMsg",
      "type": "object",
      "required": [
        "amount",
        "msg",
        "sender"
      ],
      "properties": {
        "amount": {
          "$ref": "#/definitions/Uint128"
        },
        "msg": {
          "$ref": "#/definitions/Binary"
        },
        "sender": {
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "Cw721ReceiveMsg": {
      "description": "Cw721ReceiveMsg should be de/serialized under `Receive()` variant in a ExecuteMsg",
      "type": "object",
      "required": [
        "msg",
        "sender",
        "token_id"
      ],
      "properties": {
        "msg": {
          "$ref": "#/definitions/Binary"
        },
        "sender": {
          "type": "string"
        },
        "token_id": {
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "PaymentType": {
      "type": "string",
      "enum": [
        "coin",
        "cw20"
      ]
    },
    "Uint128": {
      "description": "A thin wrapper around u128 that is using strings for JSON encoding/decoding, such that the full u128 range can be used for clients that convert JSON numbers to floats, like JavaScript and jq.\n\n# Examples\n\nUse `from` to create instances of this and `u128` to get the value out:\n\n``` # use cosmwasm_std::Uint128; let a = Uint128::from(123u128); assert_eq!(a.u128(), 123);\n\nlet b = Uint128::from(42u64); assert_eq!(b.u128(), 42);\n\nlet c = Uint128::from(70u32); assert_eq!(c.u128(), 70); ```",
      "type": "string"
    }
  }
}