import { IMutableSignal } from "../internals"; export type Updater = Required | ((v: T) => T); export type Merger = Partial | ((v: T) => Partial); /** * Update a signal with a new value or partial value. * If the updater is a function, it will receive the current value and should return the new value. * If the updater is an object, it will be merged with the current value. * If reportChanges is true, it will return an array of changed keys. * */ export declare function update(state: IMutableSignal, updater: Updater | Merger, reportChanges?: boolean): void | (keyof T)[];