import type { Snippet } from "svelte";
import type { HTMLAttributes } from "svelte/elements";
export declare const defaultAttributes: {
    xmlns: string;
    width: number;
    height: number;
    viewBox: string;
};
export declare const defaultSolidAttributes: {
    fill: string;
    xmlns: string;
    width: number;
    height: number;
    viewBox: string;
};
export declare const defaultOutlineAttributes: {
    fill: string;
    stroke: string;
    "stroke-width": number;
    "stroke-linecap": string;
    "stroke-linejoin": string;
    xmlns: string;
    width: number;
    height: number;
    viewBox: string;
};
export interface IconProps extends HTMLAttributes<SVGElement> {
    name: string;
    color?: string;
    size?: number;
    iconNode?: SVGRenderData;
    children?: Snippet;
    viewBox?: string;
    type: "outline" | "solid";
    strokeWidth?: number;
    absoluteStrokeWidth?: boolean;
}
export interface SVGAttribute {
    [key: string]: string | number;
}
export type SVGElementNode = [string, SVGAttribute];
export type SVGRenderData = SVGElementNode[];
