# GENERATED BY KOMAND SDK - DO NOT EDIT
import komand
import json


class Input:
    HOSTNAME = "hostname"
    

class Output:
    RESPONSE = "response"
    

class BlacklistInput(komand.Input):
    schema = json.loads("""
   {
  "type": "object",
  "title": "Variables",
  "properties": {
    "hostname": {
      "type": "string",
      "title": "Hostname",
      "description": "The hostname to look up",
      "order": 1
    }
  },
  "required": [
    "hostname"
  ]
}
    """)

    def __init__(self):
        super(self.__class__, self).__init__(self.schema)


class BlacklistOutput(komand.Output):
    schema = json.loads("""
   {
  "type": "object",
  "title": "Variables",
  "properties": {
    "response": {
      "$ref": "#/definitions/BLACKLIST_Output",
      "title": "Response",
      "description": "Response",
      "order": 1
    }
  },
  "required": [
    "response"
  ],
  "definitions": {
    "BLACKLIST_Output": {
      "type": "object",
      "title": "BLACKLIST_Output",
      "properties": {
        "Command": {
          "type": "string",
          "title": "Command",
          "order": 20
        },
        "CommandArgument": {
          "type": "string",
          "title": "CommandArgument",
          "order": 1
        },
        "DnsServiceProvider": {
          "type": "string",
          "title": "DnsServiceProvider",
          "order": 8
        },
        "EmailServiceProvider": {
          "type": "string",
          "title": "EmailServiceProvider",
          "order": 22
        },
        "Errors": {
          "type": "array",
          "title": "Errors",
          "items": {
            "type": "object"
          },
          "order": 2
        },
        "Failed": {
          "type": "array",
          "title": "Failed",
          "items": {
            "type": "object"
          },
          "order": 6
        },
        "HasSubscriptions": {
          "type": "boolean",
          "title": "HasSubscriptions",
          "order": 14
        },
        "Information": {
          "type": "array",
          "title": "Information",
          "items": {
            "type": "object"
          },
          "order": 3
        },
        "IsBruteForce": {
          "type": "boolean",
          "title": "IsBruteForce",
          "order": 18
        },
        "IsEndpoint": {
          "type": "boolean",
          "title": "IsEndpoint",
          "order": 21
        },
        "IsTransitioned": {
          "type": "boolean",
          "title": "IsTransitioned",
          "order": 13
        },
        "MultiInformation": {
          "type": "array",
          "title": "MultiInformation",
          "items": {
            "type": "object"
          },
          "order": 11
        },
        "MxRep": {
          "type": "integer",
          "title": "MxRep",
          "order": 23
        },
        "Passed": {
          "type": "array",
          "title": "Passed",
          "items": {
            "$ref": "#/definitions/BLACKLIST_Passed"
          },
          "order": 7
        },
        "RelatedIP": {
          "type": "string",
          "title": "RelatedIP",
          "order": 19
        },
        "RelatedLookups": {
          "type": "array",
          "title": "RelatedLookups",
          "items": {
            "$ref": "#/definitions/BLACKLIST_RelatedLookups"
          },
          "order": 4
        },
        "ReportingNameServer": {
          "type": "string",
          "title": "ReportingNameServer",
          "order": 15
        },
        "TimeRecorded": {
          "type": "string",
          "title": "TimeRecorded",
          "order": 5
        },
        "TimeToComplete": {
          "type": "string",
          "title": "TimeToComplete",
          "order": 17
        },
        "Timeouts": {
          "type": "array",
          "title": "Timeouts",
          "items": {
            "type": "object"
          },
          "order": 16
        },
        "Transcript": {
          "type": "array",
          "title": "Transcript",
          "items": {
            "$ref": "#/definitions/BLACKLIST_Transcript"
          },
          "order": 12
        },
        "UID": {
          "type": "string",
          "title": "UID",
          "order": 9
        },
        "Warnings": {
          "type": "array",
          "title": "Warnings",
          "items": {
            "type": "object"
          },
          "order": 10
        }
      },
      "definitions": {
        "BLACKLIST_Passed": {
          "type": "object",
          "title": "BLACKLIST_Passed",
          "properties": {
            "BlacklistResponseTime": {
              "type": "string",
              "title": "BlacklistResponseTime",
              "order": 1
            },
            "ID": {
              "type": "integer",
              "title": "ID",
              "order": 2
            },
            "IsExcludedByUser": {
              "type": "boolean",
              "title": "IsExcludedByUser",
              "order": 3
            },
            "Name": {
              "type": "string",
              "title": "Name",
              "order": 4
            },
            "PublicDescription": {
              "type": "string",
              "title": "PublicDescription",
              "order": 5
            },
            "Url": {
              "type": "string",
              "title": "Url",
              "order": 6
            }
          }
        },
        "BLACKLIST_RelatedLookups": {
          "type": "object",
          "title": "BLACKLIST_RelatedLookups",
          "properties": {
            "Command": {
              "type": "string",
              "title": "Command",
              "order": 1
            },
            "CommandArgument": {
              "type": "string",
              "title": "CommandArgument",
              "order": 2
            },
            "Name": {
              "type": "string",
              "title": "Name",
              "order": 3
            },
            "URL": {
              "type": "string",
              "title": "URL",
              "order": 4
            }
          }
        },
        "BLACKLIST_Transcript": {
          "type": "object",
          "title": "BLACKLIST_Transcript",
          "properties": {
            "Transcript": {
              "type": "string",
              "title": "Transcript",
              "order": 1
            }
          }
        }
      }
    },
    "BLACKLIST_Passed": {
      "type": "object",
      "title": "BLACKLIST_Passed",
      "properties": {
        "BlacklistResponseTime": {
          "type": "string",
          "title": "BlacklistResponseTime",
          "order": 1
        },
        "ID": {
          "type": "integer",
          "title": "ID",
          "order": 2
        },
        "IsExcludedByUser": {
          "type": "boolean",
          "title": "IsExcludedByUser",
          "order": 3
        },
        "Name": {
          "type": "string",
          "title": "Name",
          "order": 4
        },
        "PublicDescription": {
          "type": "string",
          "title": "PublicDescription",
          "order": 5
        },
        "Url": {
          "type": "string",
          "title": "Url",
          "order": 6
        }
      }
    },
    "BLACKLIST_RelatedLookups": {
      "type": "object",
      "title": "BLACKLIST_RelatedLookups",
      "properties": {
        "Command": {
          "type": "string",
          "title": "Command",
          "order": 1
        },
        "CommandArgument": {
          "type": "string",
          "title": "CommandArgument",
          "order": 2
        },
        "Name": {
          "type": "string",
          "title": "Name",
          "order": 3
        },
        "URL": {
          "type": "string",
          "title": "URL",
          "order": 4
        }
      }
    },
    "BLACKLIST_Transcript": {
      "type": "object",
      "title": "BLACKLIST_Transcript",
      "properties": {
        "Transcript": {
          "type": "string",
          "title": "Transcript",
          "order": 1
        }
      }
    }
  }
}
    """)

    def __init__(self):
        super(self.__class__, self).__init__(self.schema)
