/** * Shared codegen helpers — IR node accessors, string utilities, and annotations. * * Extracted from codegen-core.ts for independent reuse by React/Vue/Python codegens. * These are pure utility functions with no generator dependencies. */ import type { IRNode } from '../types.js'; export declare function getProps(node: IRNode): Record; export declare function getChildren(node: IRNode, type?: string): IRNode[]; export declare function getFirstChild(node: IRNode, type: string): IRNode | undefined; export declare function getStyles(node: IRNode): Record; export declare function getPseudoStyles(node: IRNode): Record>; export declare function getThemeRefs(node: IRNode): string[]; export declare function emitDocBlock(text: string): string[]; export declare function emitDocComment(node: IRNode): string[]; export declare function dedent(code: string): string; export declare function cssPropertyName(camel: string): string; export declare function handlerCode(node: IRNode): string; export declare function exportPrefix(node: IRNode): string; export declare function capitalize(s: string): string; /** Parse "name:Type,name2:Type2,spread:number=8" → "name: Type, name2: Type2, spread: number = 8" */ export declare function parseParamList(params: string, options?: { stripDefaults?: boolean; }): string; /** Emit a @kern-source comment for tracing generated code back to .kern source. */ export declare function sourceComment(node: IRNode, sourceFile?: string): string; export declare function emitReasonAnnotations(node: IRNode): string[]; export declare function emitLowConfidenceTodo(node: IRNode, confidence: string | undefined): string[];