core / type

BaseArraySignal

Array mutation methods for array signals.

Source: src/_core/signal/types.ts

Array mutation methods for array signals.

These methods provide mutating-style APIs that internally create new immutable arrays and trigger effects.

Signature

export type BaseArraySignal<T extends any[]> = {
  copyWithin: (...args: Parameters<Array<T[number]>["copyWithin"]>) => void;
  fill: (...args: Parameters<Array<T[number]>["fill"]>) => void;
  pop: (...args: Parameters<Array<T[number]>["pop"]>) => void;
  push: (...args: Parameters<Array<T[number]>["push"]>) => void;
  /** Removes items where the predicate returns true (inverse of filter) */
  remove: (...args: Parameters<Array<T[number]>["filter"]>) => void;
  reverse: (...args: Parameters<Array<T[number]>["reverse"]>) => void;
  shift: (...args: Parameters<Array<T[number]>["shift"]>) => void;
  sort: (...args: Parameters<Array<T[number]>["sort"]>) => void;
  splice: (...args: Parameters<Array<T[number]>["splice"]>) => void;
  unshift: (...args: Parameters<Array<T[number]>["unshift"]>) => void;
};

Type Parameters

  • The array type

Remarks

  • The remove() method is a custom method (inverse of filter)
  • All methods trigger effects synchronously
  • Methods create new arrays internally but feel mutable