/**
 * Zenith Build Analyzer
 *
 * Analyzes .zen page source to determine build strategy:
 * - Static: Pure HTML+CSS, no JS needed
 * - Hydration: Has state/events/hooks, needs page-specific JS
 * - SSR: Uses useFetchServer, needs server rendering
 * - SPA: Uses ZenLink with passHref, needs client router
 */
export interface PageAnalysis {
    /** Page has state declarations that need hydration */
    hasState: boolean;
    /** Page has event handlers (onclick, etc.) */
    hasEventHandlers: boolean;
    /** Page uses lifecycle hooks (zenOnMount, zenOnUnmount) */
    hasLifecycleHooks: boolean;
    /** Page uses useFetchServer (requires SSR) */
    usesServerFetch: boolean;
    /** Page uses useFetchClient (client-side data) */
    usesClientFetch: boolean;
    /** Page uses ZenLink with passHref (SPA navigation) */
    usesZenLink: boolean;
    /** Page uses reactive expressions in templates */
    hasReactiveExpressions: boolean;
    /** Computed: page needs any JavaScript */
    needsHydration: boolean;
    /** Computed: page is purely static (no JS) */
    isStatic: boolean;
    /** Computed: page needs SSR */
    needsSSR: boolean;
}
/**
 * Analyze a .zen page source to determine build requirements
 */
export declare function analyzePageSource(source: string): PageAnalysis;
/**
 * Get a human-readable summary of the page analysis
 */
export declare function getAnalysisSummary(analysis: PageAnalysis): string;
/**
 * Determine build output type for a page
 */
export type BuildOutputType = 'static' | 'hydrated' | 'ssr';
export declare function getBuildOutputType(analysis: PageAnalysis): BuildOutputType;
