shelving
Version:
Toolkit for using data in JavaScript.
13 lines (12 loc) • 465 B
TypeScript
import { BooleanStore } from "./BooleanStore.js";
import { Store, type StoreInput } from "./Store.js";
/**
* Store that tracks its busy status via a separate `this.busy` store.
* - "busy" means the store is awaiting a new value.
*/
export declare class BusyStore<T, TT = T> extends Store<T, TT> {
readonly busy: BooleanStore;
await(pending: PromiseLike<StoreInput<TT>>): Promise<boolean>;
abort(): void;
[Symbol.asyncDispose](): Promise<void>;
}