import type { ILabel } from "../IShrimpType" export class RootShrimpPower { children: ShrimpPower[] = [] constructor(public powerKey: string, public label: ILabel) { } get key(): string { return this.powerKey } } export class ShrimpPower extends RootShrimpPower { constructor(public parent: RootShrimpPower, public powerKey: string, public label: ILabel) { super(powerKey, label) parent.children.push(this) } get key(): string { return this.parent.key + "." + this.powerKey } }