abstract class View<T> {
private _element: Element;
constructor(selector: string) {
this._element = document.querySelector(selector);
}
update(model: T): void {
this._element.innerHTML = this._template(model);
}
protected abstract _template(model: T): string;
}