/** * Constants used throughout the compiler */ import type { BuildOptions } from "esbuild"; /** * External packages that should not be bundled */ export declare const EXTERNAL_PACKAGES: readonly ["preact", "preact/hooks", "preact-render-to-string", "@preliquify/core", "@preliquify/preact"]; /** * Default build concurrency - number of files to process in parallel */ export declare const DEFAULT_CONCURRENCY = 4; /** * Watch mode debounce delay in milliseconds */ export declare const WATCH_DEBOUNCE_MS = 300; /** * Common browser API error patterns */ export declare const BROWSER_API_ERRORS: readonly ["window is not defined", "document is not defined", "localStorage is not defined", "HTMLElement is not defined", "Cannot read property", "Cannot access"]; /** * Liquid expression error patterns with suggested fixes */ export declare const LIQUID_EXPRESSION_ERRORS: readonly [{ readonly pattern: RegExp; readonly fix: "Use primitive instead of .map() for Liquid collections"; }, { readonly pattern: RegExp; readonly fix: "Use or with Liquid expressions instead of .filter()"; }, { readonly pattern: RegExp; readonly fix: "Use Liquid filters or with accumulation instead of .reduce()"; }, { readonly pattern: RegExp; readonly fix: "Use primitive instead of .forEach() for Liquid collections"; }, { readonly pattern: RegExp; readonly fix: "Use Liquid's 'size' filter or render conditionally with "; }]; /** * esbuild configuration for component bundling */ export declare const ESBUILD_COMPONENT_CONFIG: { format: "esm"; platform: "node"; jsx: "automatic"; jsxImportSource: string; treeShaking: boolean; minifySyntax: boolean; minifyIdentifiers: boolean; target: "node14"; legalComments: "none"; }; /** * esbuild configuration for client runtime */ export declare const ESBUILD_RUNTIME_CONFIG: BuildOptions; /** * Fallback runtime for when enhanced runtime build fails */ export declare const FALLBACK_RUNTIME = "\n(function(){\n window.__PRELIQUIFY__||(window.__PRELIQUIFY__={});\n window.__PRELIQUIFY__.register=function(name,comp){\n window.__PRELIQUIFY__[name]=comp;\n // Trigger hydration when component registers (handles defer script timing)\n if(document.body&&window.__PRELIQUIFY__.hydrate)window.__PRELIQUIFY__.hydrate();\n };\n window.__PRELIQUIFY__.hydrate=function(){\n var nodes=document.querySelectorAll('[data-preliq-island]');\n for(var i=0;i