class TestType(BASE):
            arr = defs.Array(mutable=False)
            dict = defs.Dict(mutable=False)
            activated = defs.Boolean()

            def __is_mutable__(self):
                return not self.activated
 class TestType(BASE):
     props = defs.Dict(properties={
         "foo": defs.String(),
         "bar": defs.Boolean()
     })
     fixed = defs.Dict(
         properties={
             "name": defs.String(min_length=2),
             "age": defs.Integer(min_value=0, max_value=99)
         })
 class TestType(BASE):
     simple = defs.Array()
     unique = defs.Array(unique=True)
     simple_with_allowed_values = defs.Array(
         defs.String(allowed_values=["Foo", "Bar"]))
     defaulted = defs.Array(defs.Boolean(), default=[True, False])
     constrained = defs.Array(item_type=defs.Numeric(min_value=0),
                              min_size=3,
                              max_size=5,
                              unique=True)
class SerTestType(defs.ArtifactType):
    some_string = defs.String()
    some_text = defs.Text()
    some_version = defs.SemVerString()
    some_int = defs.Integer()
    some_numeric = defs.Numeric()
    some_bool = defs.Boolean()
    some_array = defs.Array()
    another_array = defs.Array(
        item_type=[defs.Integer(
        ), defs.Numeric(), defs.Boolean()])
    some_dict = defs.Dict()
    another_dict = defs.Dict(properties={
        'foo': defs.Integer(),
        'bar': defs.Boolean()
    })
    some_ref = defs.ArtifactReference()
    some_ref_list = defs.ArtifactReferenceList()
    some_blob = defs.BinaryObject()
    some_blob_list = defs.BinaryObjectList()
        class TestType(BASE):
            activated = defs.Boolean(required=True, default=False)
            name = defs.String(mutable=False)

            def __is_mutable__(self):
                return not self.activated
 class TestType(BASE):
     address = defs.Array(item_type=[
         defs.String(20),
         defs.Integer(min_value=1),
         defs.Boolean()
     ])