import { FigmaNode } from './types';
import { IntermediateNode } from './intermediate';
/**
 * Parser for Figma nodes to an intermediate representation
 */
export declare class FigmaNodeParser {
    private readonly assetsDir;
    constructor(assetsDir: string);
    /**
     * Parse a Figma node into an intermediate representation
     * @param node Figma node
     * @returns Intermediate node
     */
    parse(node: FigmaNode): IntermediateNode;
    /**
     * Parse a Figma node with parent reference
     * @param node Figma node
     * @param parent Parent node (if any)
     * @returns Intermediate node
     */
    private parseWithParent;
    /**
     * Parse styles from a Figma node
     * @param node Figma node
     * @returns Styles object
     */
    private parseStyles;
    /**
     * Parse effects (shadows, blurs)
     * @param effects Array of Figma effects
     * @returns Parsed effects
     */
    private parseEffects;
    /**
     * Convert RGB color to hex or rgba
     * @param color RGB color
     * @param opacity Additional opacity
     * @returns Hex color string or rgba string
     */
    private rgbToHex;
    /**
     * Get image reference for a node (if applicable)
     * @param node Figma node
     * @returns Image reference path or undefined
     */
    getImageReference(node: FigmaNode): string | undefined;
    /**
     * Check if node contains image content
     * @param node Figma node
     * @returns True if node has image content
     */
    private hasImageContent;
    /**
     * Get sanitized filename for node
     * @param node Figma node
     * @returns Sanitized filename
     */
    private getFileName;
    /**
     * Sanitize file name to remove invalid characters
     * @param fileName Original file name
     * @returns Sanitized file name
     */
    private sanitizeFileName;
}
//# sourceMappingURL=figma-node-parser.d.ts.map