/**
 * useResolvedSchema Hook
 *
 * Resolves OrbitalSchema to IR for the OrbitalRuntime.
 * Uses the shared resolver to ensure consistency with the compiler.
 *
 * TRAIT-DRIVEN ARCHITECTURE:
 * - Pages have traits, NOT sections
 * - UI is produced by trait effects (render_ui)
 * - No backwards compatibility with legacy formats
 *
 * @packageDocumentation
 */
import type { OrbitalSchema } from '@almadar/core';
import type { ResolvedIR, ResolvedPage, ResolvedTrait, ResolvedEntity, ResolvedTraitBinding } from './types';
export interface ResolvedSchemaResult {
    /** The resolved page (or undefined if not found) */
    page: ResolvedPage | undefined;
    /** Trait bindings for this page */
    traits: ResolvedTraitBinding[];
    /** Entities used by this page */
    entities: Map<string, ResolvedEntity>;
    /** All entities from schema */
    allEntities: Map<string, ResolvedEntity>;
    /** All resolved traits */
    allTraits: Map<string, ResolvedTrait>;
    /** Loading state */
    loading: boolean;
    /** Error message if resolution failed */
    error: string | null;
    /** Full IR (for debugging) */
    ir: ResolvedIR | null;
}
/**
 * Hook to resolve an OrbitalSchema to IR.
 *
 * @param schema - The OrbitalSchema to resolve
 * @param pageName - Optional page name (defaults to first page or initial page)
 * @returns Resolved schema data including page, traits, and entities
 */
export declare function useResolvedSchema(schema: OrbitalSchema | null | undefined, pageName?: string): ResolvedSchemaResult;
/**
 * Clear the schema resolution cache
 */
export declare function clearSchemaCache(): void;
