UNPKG

vasille

Version:

The same framework which is designed to build bulletproof frontends (core library).

34 lines (33 loc) 903 B
import { Reactive } from "../core/core.js"; import { Listener } from "./listener.js"; import { ListenableModel } from "./model.js"; /** * A `Set` based model * @class SetModel * @extends Set * @implements ListenableModel */ export declare class SetModel<T> extends Set<T> implements ListenableModel<T, T> { listener: Listener<T, T>; /** * Constructs a set model based on a set */ constructor(set?: T[], ctx?: Reactive); /** * Calls `Set.add` and notify abut changes * @param value {*} value * @return {this} a pointer to this */ add(value: T): this; /** * Calls `Set.clear` and notify abut changes */ clear(): void; /** * Calls `Set.delete` and notify abut changes * @param value {*} * @return {boolean} true if a value was deleted, otherwise false */ delete(value: T): boolean; destroy(): void; }