jotai
Version:
👻 Next gen state management that will spook you
18 lines (17 loc) • 736 B
TypeScript
import type { Atom, PrimitiveAtom, WritableAtom } from 'jotai';
declare type SplitAtomAction<Item> = {
type: 'remove';
atom: PrimitiveAtom<Item>;
} | {
type: 'insert';
value: Item;
before?: PrimitiveAtom<Item>;
} | {
type: 'move';
atom: PrimitiveAtom<Item>;
before?: PrimitiveAtom<Item>;
};
declare type DeprecatedAtomToRemove<Item> = PrimitiveAtom<Item>;
export declare function splitAtom<Item, Key>(arrAtom: WritableAtom<Item[], Item[]>, keyExtractor?: (item: Item) => Key): WritableAtom<PrimitiveAtom<Item>[], SplitAtomAction<Item> | DeprecatedAtomToRemove<Item>>;
export declare function splitAtom<Item, Key>(arrAtom: Atom<Item[]>, keyExtractor?: (item: Item) => Key): Atom<Atom<Item>[]>;
export {};