18 lines
737 B
TypeScript
18 lines
737 B
TypeScript
import * as React from 'react';
|
|
import { ReactRef } from './types';
|
|
/**
|
|
* Merges two or more refs together providing a single interface to set their value
|
|
* @param {RefObject|Ref} refs
|
|
* @returns {MutableRefObject} - a new ref, which translates all changes to {refs}
|
|
*
|
|
* @see {@link mergeRefs} a version without buit-in memoization
|
|
* @see https://github.com/theKashey/use-callback-ref#usemergerefs
|
|
* @example
|
|
* const Component = React.forwardRef((props, ref) => {
|
|
* const ownRef = useRef();
|
|
* const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together
|
|
* return <div ref={domRef}>...</div>
|
|
* }
|
|
*/
|
|
export declare function useMergeRefs<T>(refs: ReactRef<T>[], defaultValue?: T): React.MutableRefObject<T | null>;
|