UNPKG

softkave-js-utils

Version:

JavaScript & Typescript utility functions, types, and classes

14 lines (13 loc) 496 B
import { AnyFn } from '../types.js'; export type ListenableResourceListener<T> = AnyFn<[T | undefined]>; export declare class ListenableResource<T> { protected data?: T; protected listeners: Map<ListenableResourceListener<T>, ListenableResourceListener<T>>; constructor(data?: T); listen(fn: ListenableResourceListener<T>): void; removeListener(fn: AnyFn): void; clearListeners(): void; get(): T | undefined; set(data: T): void; protected broadcast(): void; }