For each attribute on your schema, a getter and a setter will be created into the given class. It'll also auto-assign those attributes passed to the constructor.
1
const{ attributes }=require('structure');
2
3
const User =attributes({
4
name: String,
5
age:{
6
type: Number,
7
default:18,
8
},
9
birthday: Date,
10
})(
11
classUser{
12
greet(){
13
return`Hello ${this.name}`;
14
}
15
}
16
);
17
18
/* The attributes "wraps" the Class, still providing access to its methods: */