export interface ICloseable { onClose?: () => void; close(): Promise; } export default class CloseableCollection { private items; add(item: T): void; delete(item: T): void; closeAll(): Promise; }