/**
* 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