Hooks (1/3)
List all the hooks available in react js and provide brief definition for each
    It is a lightweight in-memory representation of the actual DOM to track changes in the UI and efficiently update the real DOM when necessary.
    • useState: to add and manage state to functional components
    • useReducer: to add and manage complex state
    • useEffect: to execute side effects during rendering and hooking into lifecycle hooks
    • useMemo: to memoise the output of a function
    • useCallback: to memoise a function declaration when a function is passed to children components that are memoised.
    • useContext: to access context object
    • useLayoutEffect: synchronously useEffect
    • useRef: to access and manipulate DOM and store values that do not cause rerender on updates.
    • use
    • useDebugValue
    • useId
    • useDeferredValue
    • useTransition
    • useSyncExternalStore
    • useInsertionEffect
    • useImperativeHandle