UNPKG

wave-roll

Version:

JavaScript Library for Comparative MIDI Piano-Roll Visualization

27 lines 801 B
/** * Set-based operations for managing collections (e.g., file visibility) */ /** * Generic set manager for handling add/remove/toggle operations */ export declare class SetManager<T> { private set; private onUpdate; constructor(initialSet?: Set<T>, onUpdate?: (set: Set<T>) => void); add(item: T): void; remove(item: T): void; toggle(item: T): boolean; has(item: T): boolean; clear(): void; sync(items: T[]): void; get size(): number; get values(): Set<T>; } /** * Create a set manager with automatic state synchronization */ export declare function createSyncedSetManager<T>(getSet: () => Set<T>, updateState: (updates: { visibleFileIds?: Set<T>; totalFiles?: number; }) => void): SetManager<T>; //# sourceMappingURL=set-operations.d.ts.map