/* istanbul ignore file */ import { ValueObjectProps } from './ValueObjectProps' export abstract class ValueObject { public readonly props: T constructor(props: T) { this.props = Object.freeze(props) } public equals(vo?: ValueObject): boolean { if (vo === null || vo === undefined) { return false } return JSON.stringify(this.props) === JSON.stringify(vo.props) } }