// Base class for extensions-api registries import { observable } from "mobx"; export class BaseRegistry { protected items = observable([], { deep: false }); getItems(): T[] { return this.items.toJS(); } add(item: T) { this.items.push(item); return () => { this.items.remove(item); // works because of {deep: false}; } } }