/* Copyright 2024 New Vector Ltd. SPDX-License-Identifier: AGPL-3.0-only Please see LICENSE in the repository root for full details. */ import { RefObject, useRef } from "react"; export interface LatestRef extends RefObject { current: T; } /** * React hook that returns a ref containing the value given on the latest * render. */ export function useLatest(value: T): LatestRef { const ref = useRef(value); ref.current = value; return ref; }