import React, { createContext, useContext, useMemo, useState, // Types ElementType, ReactNode, Ref, } from 'react' import { Props } from '../../types' import { useId } from '../../hooks/use-id' import { forwardRefWithAs, render } from '../../utils/render' import { useIsoMorphicEffect } from '../../hooks/use-iso-morphic-effect' import { useSyncRefs } from '../../hooks/use-sync-refs' import { useEvent } from '../../hooks/use-event' // --- interface SharedData { slot?: {} name?: string props?: {} } let LabelContext = createContext<({ register(value: string): () => void } & SharedData) | null>( null ) function useLabelContext() { let context = useContext(LabelContext) if (context === null) { let err = new Error('You used a