{
  "functions": [
    {
      "name": "test-func-string-ascii-argument",
      "access": "public",
      "args": [
        {
          "name": "currency",
          "type": {
            "string-ascii": {
              "length": 16
            }
          }
        }
      ],
      "outputs": { "type": { "response": { "ok": "bool", "error": "none" } } }
    },
    {
      "name": "test-func-string-utf8-argument",
      "access": "public",
      "args": [
        {
          "name": "msg",
          "type": {
            "string-utf8": {
              "length": 16
            }
          }
        }
      ],
      "outputs": { "type": { "response": { "ok": "bool", "error": "none" } } }
    },
    {
      "name": "test-func-optional-argument",
      "access": "public",
      "args": [
        {
          "name": "optional",
          "type": {
            "optional": {
              "string-utf8": {
                "length": 200
              }
            }
          }
        }
      ],
      "outputs": { "type": { "response": { "ok": "bool", "error": "none" } } }
    },
    {
      "name": "test-func-primitive-argument",
      "access": "public",
      "args": [
        {
          "name": "amount",
          "type": "uint128"
        },
        {
          "name": "address",
          "type": "principal"
        },
        {
          "name": "exists",
          "type": "bool"
        }
      ],
      "outputs": { "type": { "response": { "ok": "bool", "error": "none" } } }
    },
    {
      "name": "test-func-buffer-argument",
      "access": "public",
      "args": [
        { "name": "bufferArg", "type": { "buffer": { "length": 20 } } }
      ],
      "outputs": { "type": { "response": { "ok": "bool", "error": "none" } } }
    }
  ],
  "variables": [],
  "maps": [],
  "fungible_tokens": [],
  "non_fungible_tokens": []
}
