7 export default class Person {
9 private _relation: Relation;
11 static joint = Symbol('Joint') as unknown as Person;
13 constructor(name: string, relation: Relation) {
15 this._relation = relation;
22 get relation(): Relation {
23 return this._relation;
26 static self(name: string): Person {
27 return new Person(name, Relation.Self);
30 static spouse(name: string): Person {
31 return new Person(name, Relation.Spouse);
34 static dependent(name: string): Person {
35 return new Person(name, Relation.Dependent);