{
  "$id": "https://schemas.sand.binaryedge.io/minion/modules/rpcdump",
  "title": "RPCDump Module Output Body",
  "type": "object",
  "properties": {
    "interfaces": {
      "type": "object",
      "patternProperties": {
        ".*": {
          "$ref": "#/$defs/interface"
        }
      },
      "additionalProperties": false
    }
  },
  "required": [
    "interfaces"
  ],
  "$defs": {
    "interface": {
      "type": "object",
      "properties": {
        "bindings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/binding"
          }
        },
        "exe": {
          "type": "string"
        },
        "annotation": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        }
      },
      "required": [
        "bindings"
      ],
      "additionalProperties": false
    },
    "binding": {
      "type": "object",
      "properties": {
        "binding": {
          "type": "string"
        },
        "mappings": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/mapping"
          }
        }
      },
      "required": [
        "binding"
      ],
      "additionalProperties": false
    },
    "mapping": {
      "type": "object",
      "properties": {
        "protocol": {
          "type": "string"
        },
        "provider": {
          "type": "string"
        },
        "uuid": {
          "type": "string"
        },
        "version": {
          "type": "string"
        }
      },
      "required": [
        "uuid",
        "version"
      ],
      "additionalProperties": false
    }
  }
}
