import { STATUS_STOPPED, isStatus } from '../const/status.ts' export default abstract class LifecycleUnit { private _status = STATUS_STOPPED public get status() { return this._status } public set status(status) { if ( !isStatus(status) ) throw new TypeError('Invalid unit status: '+status.description) this._status = status } public async up(): Promise {}; public async down(): Promise {}; }