/** * Component Code Generator * * Converts Figma components into framework-specific code * (React, Vue, Svelte, HTML). */ import type { FigmaNode } from '../types.js'; export interface ComponentSpec { name: string; originalName: string; props: PropSpec[]; variants: VariantSpec[]; styles: StyleSpec; children: ComponentSpec[]; isVariantSet: boolean; } export interface PropSpec { name: string; type: 'boolean' | 'string' | 'enum'; defaultValue: string | boolean; options?: string[]; } export interface VariantSpec { name: string; properties: Record; } export interface StyleSpec { width?: string; height?: string; display?: string; flexDirection?: string; gap?: string; padding?: string; alignItems?: string; justifyContent?: string; backgroundColor?: string; borderRadius?: string; boxShadow?: string; color?: string; fontFamily?: string; fontSize?: string; fontWeight?: string; lineHeight?: string; letterSpacing?: string; textAlign?: string; } type Framework = 'react' | 'vue' | 'svelte' | 'astro' | 'nextjs' | 'nuxt' | 'html'; /** * Convert Figma node to component code */ export declare function figmaNodeToComponent(node: FigmaNode, framework: Framework): string; /** * Get file extension for framework */ export declare function getFileExtension(framework: Framework): string; export {}; //# sourceMappingURL=component-code.d.ts.map