import { SeoMeta } from './runtime.router.types';
/**
 * React hook to access business data from the current route's loader.
 * Extracts and returns only the business property from RuntimeLoaderResult.
 *
 * This hook should be called within a route component that has a loader.
 * It provides type-safe access to data loaded by runtimeAsync retrievers.
 *
 * @template T - The expected type of the business data (defaults to Record<string, unknown>)
 * @returns {T} The business data from the current route's loader
 * @throws {Error} If called outside a route context or if loader data is missing
 *
 * @example
 * // In a route component
 * function ProductPage() {
 *   const { product, reviews } = useRuntimeData<{ product: Product; reviews: Review[] }>();
 *   return <div>{product.name}</div>;
 * }
 *
 * @example
 * // Without type parameter (inferred as Record<string, unknown>)
 * function HomePage() {
 *   const data = useRuntimeData();
 *   return <div>{JSON.stringify(data)}</div>;
 * }
 */
export declare function useRuntimeData<T = Record<string, unknown>>(): T;
/**
 * React hook to access SEO metadata from the current route's loader.
 * Extracts and returns the seoMeta from the internal property of RuntimeLoaderResult.
 *
 * This hook is primarily used by the RuntimeHeadManager component to update
 * document.title and meta tags during client-side navigation. It can also be
 * used by user components that need access to SEO metadata.
 *
 * @returns {SeoMeta | undefined} The SEO metadata from the current route's loader, or undefined if not available
 *
 * @example
 * // In the head manager component
 * function RuntimeHeadManager() {
 *   const seoMeta = useRuntimeSeoMeta();
 *
 *   useEffect(() => {
 *     if (seoMeta?.title) {
 *       document.title = seoMeta.title;
 *     }
 *   }, [seoMeta]);
 *
 *   return null;
 * }
 *
 * @example
 * // In a user component that needs SEO data
 * function PageHeader() {
 *   const seoMeta = useRuntimeSeoMeta();
 *   return <h1>{seoMeta?.title || 'Default Title'}</h1>;
 * }
 */
export declare function useRuntimeSeoMeta(): SeoMeta | undefined;
