@@ -0,0 +1,1179 @@
+package seedu.address.model.person;%0A%0Aimport seedu.address.commons.exceptions.IllegalValueException;%0A%0Apublic class Type %7B%0A%0A    public static final String TASK_WORD = %22task%22;%0A    public static final String DEADLINE_WORD = %22deadline%22;%0A    public static final String EVENT_WORD = %22event%22;%0A    %0A    public static final String MESSAGE_TYPE_CONSTRAINTS = %22Entry types should only be 'task', 'deadline' or 'event'.%22;%0A    public static final String TYPE_VALIDATION_REGEX = %22%5Cb(task%7Cdeadline%7Cevent)%5Cb%22;%0A%0A    public final String value;%0A%0A    /**%0A     * Validates given type.%0A     *%0A     * @throws IllegalValueException if given type string is invalid.%0A     */%0A    public Type(String type) throws IllegalValueException %7B%0A        assert type != null;%0A        type = type.trim();%0A        if (!isValidType(type)) %7B%0A            throw new IllegalValueException(MESSAGE_TYPE_CONSTRAINTS);%0A        %7D%0A        this.value = type;%0A    %7D%0A%0A    /**%0A     * Returns true if a given string is a valid entry type.%0A     */%0A    public static boolean isValidType(String test) %7B%0A        return test.matches(TYPE_VALIDATION_REGEX);%0A    %7D%0A%0A    @Override%0A    public String toString() %7B%0A        return value;%0A    %7D%0A%0A%7D%0A

Add class Type to model package