{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://vibebase.me/contracts/edition/0.1.0",
  "title": "EditionDescriptor",
  "type": "object",
  "additionalProperties": false,
  "required": ["tenancy", "billing", "model", "provisioning", "templates", "licensing", "telemetry"],
  "properties": {
    "tenancy": { "enum": ["single", "multi"] },
    "billing": { "type": "boolean" },
    "model": {
      "type": "object",
      "additionalProperties": false,
      "required": ["isolation"],
      "properties": { "isolation": { "enum": ["connected", "hybrid", "airgap"] } }
    },
    "provisioning": { "enum": ["local", "central"] },
    "templates": {
      "type": "object",
      "additionalProperties": false,
      "required": ["source"],
      "properties": { "source": { "enum": ["offline", "central-sync"] } }
    },
    "licensing": { "enum": ["none", "gate"] },
    "telemetry": { "enum": ["local", "central"] }
  }
}
