{
  "about": {
    "description": "A test fixture for objects",
    "kotlin_about": {
      "class": "MyNimbus",
      "package": "com.example.app"
    },
    "swift_about": {
      "class": "MyNimbus",
      "module": "Megazord"
    }
  },
  "enums": {},
  "objects": {
    "ExampleObject": {
      "name": "ExampleObject",
      "doc": "An example object",
      "props": [
        {
          "name": "a-string",
          "doc": "A string",
          "type": "String",
          "default": "yes"
        },
        {
          "name": "a-number",
          "doc": "A number",
          "type": "Int",
          "default": 42
        },
        {
          "name": "nested",
          "doc": "The nesting of the nested object",
          "type": {
            "Object": "Nested"
          },
          "default": {
            "property-source": "example-object-property-via-constructor"
          }
        }
      ]
    },
    "Nested": {
      "name": "Nested",
      "doc": "An object for nesting in others",
      "props": [
        {
          "name": "property-source",
          "doc": "This property is set by Nimbus, but where?",
          "type": "String",
          "default": "nested-object-property"
        }
      ]
    }
  },
  "features": {
    "with-objects-feature": {
      "name": "with-objects-feature",
      "description": "A feature with objects feature",
      "props": [
        {
          "name": "an-object",
          "doc": "A single object",
          "type": {
            "Object": "ExampleObject"
          },
          "default": {
            "a-string": "yes",
            "a-number": 1,
            "nested": {
              "property-source": "example-object-property-via-constructor"
            }
          }
        },
        {
          "name": "an-object-with-new-defaults",
          "doc": "A single object with defaults from the constructor",
          "type": {
            "Object": "ExampleObject"
          },
          "default": {
            "a-string": "YES: overridden from the CONSTRUCTOR!",
            "a-number": 2,
            "nested": {
              "property-source": "an-object-with-new-defaults-constructor"
            }
          }
        },
        {
          "name": "an-object-with-feature-defaults",
          "doc": "A single object with defaults from the feature",
          "type": {
            "Object": "ExampleObject"
          },
          "default": {
            "a-string": "yes",
            "a-number": 2,
            "nested": {
              "property-source": "example-object-property-via-constructor"
            }
          }
        }
      ],
      "default": {
        "an-object-with-feature-defaults": {
          "a-string": "YES: overridden from the FEATURE"
        }
      },
      "allow_coenrollment": false
    }
  }
}
