{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "additionalProperties": true,
  "required": [
    "enabled"
  ],
  "properties": {
    "enabled": {
      "type": "boolean",
      "description": "whether invoice autocleaning is active"
    }
  },
  "if": {
    "properties": {
      "enabled": {
        "type": "boolean",
        "enum": [
          true
        ]
      }
    }
  },
  "then": {
    "additionalProperties": false,
    "required": [
      "expired_by",
      "cycle_seconds"
    ],
    "properties": {
      "enabled": {},
      "expired_by": {
        "type": "u64",
        "description": "how long an invoice must be expired (seconds) before we delete it"
      },
      "cycle_seconds": {
        "type": "u64",
        "description": "how long an invoice must be expired (seconds) before we delete it"
      }
    }
  },
  "else": {
    "additionalProperties": false,
    "properties": {
      "enabled": {}
    }
  }
}
