import { Mapping } from "bp/class" ; import type { Design } from ".." ; import type { Disposable } from "bp/class" ; /**
 * 各種的  BaseContainer 類別均繼承自  Mapping 類別，
 * 其中又各自定義了額外的計算屬性或方法，
 * 以分攤  Design 物件的程式碼並達到關注點分離。
  export class BaseContainer < K , V extends Disposable > extends Mapping < K , V > { protected readonly _design : Design ; constructor ( design , source , constructor ) { super ( source , constructor ) ; this . _design = design ; } public $dispose ( ) { super . $dispose ( ) ; delete this . _design ; } }