// TODO: add remaining Disposable method export abstract class Disposable { public static create<T extends new (...args: any[]) => any>( this: T, ...args: ConstructorParameters<T>): InstanceType<T>; constructor(...args: any[]); public dispose(): void; public isDisposed(): boolean; public autoDispose<T>(obj: T): T; public autoDisposeCallback(callback: () => void): void; public disposeRelease<T>(obj: T): T; public disposeDiscard(obj: any): void; public makeDisposable(obj: any): void; } export function emptyNode(node: Node): void;