import { type ReactNode } from 'react';
import type { RoutableContentItem } from '@riverbankcms/api/navigation';
import type { LinkWidgetAdapters } from './types';
/**
 * Context value for LinkWidget
 *
 * Provides siteId, adapters, and initial items to LinkField components
 * without prop drilling through FormRenderer
 */
export type LinkWidgetContextValue = {
    siteId?: string;
    adapters?: LinkWidgetAdapters;
    initialItems?: RoutableContentItem[];
};
/**
 * Provider for LinkWidget context
 *
 * Wrap FormRenderer or form components with this provider to make
 * siteId and adapters available to all LinkField instances
 *
 * @example
 * ```tsx
 * <LinkWidgetProvider siteId={siteId} adapters={adapters}>
 *   <FormRenderer fields={fields} />
 * </LinkWidgetProvider>
 * ```
 */
export declare function LinkWidgetProvider({ children, siteId, adapters, initialItems, }: LinkWidgetContextValue & {
    children: ReactNode;
}): import("react/jsx-runtime").JSX.Element;
/**
 * Hook to access LinkWidget context
 *
 * Returns context value with siteId, adapters, and initialItems.
 * Returns empty object if no provider exists (graceful degradation)
 */
export declare function useLinkWidgetContext(): LinkWidgetContextValue;
