import type { StxOptions } from './types';
/**
 * Render a .stx template file to an HTML string.
 *
 * This is the primary rendering API. It:
 * 1. Reads the template file
 * 2. Extracts and executes server-side scripts
 * 3. Processes all stx directives (conditionals, loops, expressions, etc.)
 * 4. Injects client-side scripts
 * 5. Returns the final HTML string
 *
 * @param filePath - Path to the .stx template file
 * @param renderOptions - Additional rendering options
 * @returns The rendered HTML string
 */
export declare function renderTemplate(filePath: string, renderOptions?: RenderOptions): Promise<string>;
/**
 * Render an inline stx template string to HTML.
 *
 * Useful when you have template content in memory rather than a file.
 *
 * @param template - The stx template string
 * @param context - Variables to make available in the template
 * @returns The rendered HTML string
 */
export declare function renderString(template: string, context?: Record<string, unknown>, options?: { templateOnly?: boolean }): Promise<string>;
// ============================================================================
// Types
// ============================================================================
export declare interface RenderOptions {
  context?: Record<string, unknown>
  options?: Partial<StxOptions>
  processClientScripts?: boolean
  wrapInDocument?: boolean
  title?: string
  injectCSS?: boolean
  layout?: string
  templateOnly?: boolean
}
