import { DetachedValue } from "../../../detached/index.ts"; import type { AtomImpl } from "../../implementation.ts"; import { AtomInternal } from "../base/index.ts"; export declare abstract class AtomInternalCollection extends AtomInternal { abstract get size(): number; abstract remove(key: keyof Value): AtomImpl; abstract forEach(callback: AtomInternalCollection.Callback): void; abstract map(callback: AtomInternalCollection.Callback): Result[]; abstract find(predicate: AtomInternalCollection.Predicate): AtomImpl | undefined; abstract filter(predicate: AtomInternalCollection.Predicate): AtomImpl[]; } export declare namespace AtomInternalCollection { interface Callback { (item: AtomImpl, index: keyof Value): Result; } interface Predicate { (item: AtomImpl, index: keyof Value): boolean; } } //# sourceMappingURL=index.d.ts.map