11 lines
254 B
TypeScript
11 lines
254 B
TypeScript
export interface IEntity<Id = string> {
|
|
readonly id: Id;
|
|
}
|
|
|
|
export abstract class Entity<Id> implements IEntity<Id> {
|
|
protected constructor(readonly id: Id) {}
|
|
|
|
equals(other?: Entity<Id>): boolean {
|
|
return !!other && this.id === other.id;
|
|
}
|
|
} |