{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "DetailsResponse",
  "type": "object",
  "required": [
    "arbiter",
    "cw20_balance",
    "cw20_whitelist",
    "id",
    "native_balance",
    "recipient",
    "source"
  ],
  "properties": {
    "arbiter": {
      "description": "arbiter can decide to approve or refund the escrow",
      "allOf": [
        {
          "$ref": "#/definitions/HumanAddr"
        }
      ]
    },
    "cw20_balance": {
      "description": "Balance in cw20 tokens",
      "type": "array",
      "items": {
        "$ref": "#/definitions/Cw20CoinHuman"
      }
    },
    "cw20_whitelist": {
      "description": "Whitelisted cw20 tokens",
      "type": "array",
      "items": {
        "$ref": "#/definitions/HumanAddr"
      }
    },
    "end_height": {
      "description": "When end height set and block height exceeds this value, the escrow is expired. Once an escrow is expired, it can be returned to the original funder (via \"refund\").",
      "type": [
        "integer",
        "null"
      ],
      "format": "uint64",
      "minimum": 0.0
    },
    "end_time": {
      "description": "When end time (in seconds since epoch 00:00:00 UTC on 1 January 1970) is set and block time exceeds this value, the escrow is expired. Once an escrow is expired, it can be returned to the original funder (via \"refund\").",
      "type": [
        "integer",
        "null"
      ],
      "format": "uint64",
      "minimum": 0.0
    },
    "id": {
      "description": "id of this escrow",
      "type": "string"
    },
    "native_balance": {
      "description": "Balance in native tokens",
      "type": "array",
      "items": {
        "$ref": "#/definitions/Coin"
      }
    },
    "recipient": {
      "description": "if approved, funds go to the recipient",
      "allOf": [
        {
          "$ref": "#/definitions/HumanAddr"
        }
      ]
    },
    "source": {
      "description": "if refunded, funds go to the source",
      "allOf": [
        {
          "$ref": "#/definitions/HumanAddr"
        }
      ]
    }
  },
  "definitions": {
    "Coin": {
      "type": "object",
      "required": [
        "amount",
        "denom"
      ],
      "properties": {
        "amount": {
          "$ref": "#/definitions/Uint128"
        },
        "denom": {
          "type": "string"
        }
      }
    },
    "Cw20CoinHuman": {
      "type": "object",
      "required": [
        "address",
        "amount"
      ],
      "properties": {
        "address": {
          "$ref": "#/definitions/HumanAddr"
        },
        "amount": {
          "$ref": "#/definitions/Uint128"
        }
      }
    },
    "HumanAddr": {
      "type": "string"
    },
    "Uint128": {
      "type": "string"
    }
  }
}
