By injecting the decorators at the vue-class-components, the vue-property-decorator helps the TypeScript compiler check for the types and static analysis of your Vue code.
We used two of the decorators available, the @Watch and @Prop decorators.
As we took apart the common parts of our code in the form of mixins, the process implementation became easier.
The parent component passed down a property to the child component, passing the initial value and the subsequently updated value.
This value is checked and updated inside the child component, which is used to update a local variable used by the calculation functions. When the calculation is done and the value is changed, the watcher emits an event that is passed to the parent component, which updates the main variable, and the loop goes on.