import { Events } from '../event' import type { EventArgs } from '../event/types' import { ObjectExt } from '../object' import { Disposable, disposable } from './disposable' export class Basecoat extends Events implements Disposable { @disposable() dispose() { this.off() } } export interface Basecoat extends Disposable {} ObjectExt.applyMixins(Basecoat, Disposable)