import { PropsValidator } from './props-validator'; import type { LayoutDefinition, RenderContext, PropSchema, ValidationResult } from './types'; export { PropsValidationError } from './types'; export type { LayoutDefinition, RenderContext, PropSchema, ValidationResult as PropsValidationResult, } from './types'; export interface RenderOptions { validationMode?: 'strict' | 'lenient'; skipValidation?: boolean; } export declare class LayoutRenderer { private readonly handlebars; private readonly propsValidator; constructor(propsValidator?: PropsValidator); render(layout: LayoutDefinition, context: RenderContext, options?: RenderOptions): string; validate(props: Record | undefined, propsSchema: Record, mode?: 'strict' | 'lenient'): ValidationResult; resolveProps(layout: LayoutDefinition, props: Record | undefined, mode?: 'strict' | 'lenient'): ValidationResult; private prepareRenderContext; private registerHelpers; private executeValidation; private mergeProps; private deepMerge; private cloneDeep; private isPlainObject; private sanitizeVars; }