/**
 * Parse IcoMoon selection.json to a mapping of icon name → unicode code point.
 * Used for icon font rendering when consumer provides selection.json.
 */
export interface IcoMoonIcon {
    icon?: {
        paths?: string[];
        attrs?: unknown[];
    };
    properties?: {
        name?: string;
        code?: number;
        order?: number;
        id?: number;
        prevSize?: number;
    };
    setIdx?: number;
    setId?: number;
    iconIdx?: number;
}
export interface IcoMoonSelection {
    IcoMoonType?: string;
    icons?: IcoMoonIcon[];
    height?: number;
    metadata?: {
        name?: string;
    };
    preferences?: {
        showGlyphs?: boolean;
        fontPref?: {
            prefix?: string;
            metadata?: {
                fontFamily?: string;
            };
        };
    };
}
/**
 * Parse IcoMoon selection.json and return a map of icon name → unicode code point.
 * Icons without properties.code fall back to a derived code if possible.
 */
export declare function parseIcoMoonSelection(json: IcoMoonSelection): Record<string, number>;
/**
 * Parse IcoMoon selection.json and return a map of icon name → SVG path d strings.
 * Use this to render custom icons as SVG from selection.json without an icon font.
 */
export declare function parseIcoMoonSelectionToSvgPaths(json: IcoMoonSelection): Record<string, string[]>;
//# sourceMappingURL=parseIcoMoonSelection.d.ts.map