{
  "iface": "futoin.cache",
  "version": "1.0",
  "ftn3rev": "1.1",
  "funcs": {
    "get": {
      "params": {
        "key": {
          "type": "string",
          "desc": "Unique cache key"
        }
      },
      "result": {
        "value": {
          "type": "any",
          "desc": "Any previously cached value"
        }
      },
      "throws": [
        "CacheMiss"
      ],
      "desc": "Trivial cached value retrieval"
    },
    "set": {
      "params": {
        "key": {
          "type": "string",
          "desc": "Unique cache key"
        },
        "value": {
          "type": "any",
          "desc": "arbitrary value to cache"
        },
        "ttl": {
          "type": "integer",
          "desc": "Time to live in milliseconds"
        }
      },
      "desc": "Trivial cached value storing"
    },
    "custom": {
      "params": {
        "cmd": {
          "type": "string",
          "desc": "Implementation-defined custom command"
        },
        "prm": {
          "type": "any",
          "desc": "Implementation-defined custom command parameters"
        }
      }
    }
  },
  "requires": [
    "SecureChannel"
  ],
  "desc": "Audit Log interface"
}