/// <reference types="react" />
import './Icon.scss';
import { IconSizes, type IconProps } from './IconTypes';
declare const _default: {
    title: string;
    component: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<(Omit<import("react").SVGProps<SVGSVGElement> & import("./IconTypes").IconEnumeratedSize & {
        Path: import("react").ComponentType;
        PathProps?: import("./IconTypes").PathProps | undefined;
        size?: IconSizes | undefined;
        fill?: import("index").AllColors | undefined;
    }, "ref"> | Omit<import("react").SVGProps<SVGSVGElement> & import("./IconTypes").IconDimensionalSize & {
        Path: import("react").ComponentType;
        PathProps?: import("./IconTypes").PathProps | undefined;
        size?: IconSizes | undefined;
        fill?: import("index").AllColors | undefined;
    }, "ref">) & import("react").RefAttributes<SVGSVGElement>>>;
    tags: string[];
};
export default _default;
export declare const IconStory: {
    (args: IconProps): import("react/jsx-runtime").JSX.Element;
    /** When using a custom size, `height` and `width` must be specified. */
    args: {
        size: number;
        Path: ({ stroke }: import("./IconTypes").PathProps) => import("react/jsx-runtime").JSX.Element;
        PathProps: {
            stroke: string;
        };
    };
    argTypes: {
        id: {
            control: string;
        };
        size: {
            control: {
                type: string;
                options: IconSizes[];
            };
        };
        width: {
            control: string;
        };
        height: {
            control: string;
        };
        Path: {
            control: {
                type: string;
                options: string[];
            };
        };
        PathProps: {
            control: {
                type: string;
            };
        };
        className: {
            control: string;
        };
        style: {
            control: string;
        };
    };
    storyName: string;
};
/** The Icon's child Path component accepts any color from the palette. Below are a few examples. #000 is default. */
export declare const StrokeColor: (args: IconProps) => import("react/jsx-runtime").JSX.Element;
export declare const SuccessColor: (args: IconProps) => import("react/jsx-runtime").JSX.Element;
export declare const WarningColor: (args: IconProps) => import("react/jsx-runtime").JSX.Element;
export declare const ErrorColor: (args: IconProps) => import("react/jsx-runtime").JSX.Element;
export declare const PrimaryColor: (args: IconProps) => import("react/jsx-runtime").JSX.Element;
/** Icon accepts three standardized sizes out-of-the-box, or you can set a custom width and height. A helper enum called `IconSizes` is exported from the library. When using an enumerated size, When using a custom size, `height` and `width` must not be specified. */
export declare const SizesSmall: {
    (args: IconProps): import("react/jsx-runtime").JSX.Element;
    args: {
        Path: ({ stroke }: import("./IconTypes").PathProps) => import("react/jsx-runtime").JSX.Element;
        size: IconSizes;
    };
    argTypes: {
        Path: {
            control: {
                type: string;
                options: string[];
            };
        };
        size: {
            control: string;
            options: IconSizes[];
        };
    };
};
export declare const SizesMedium: {
    (args: IconProps): import("react/jsx-runtime").JSX.Element;
    args: {
        Path: ({ stroke }: import("./IconTypes").PathProps) => import("react/jsx-runtime").JSX.Element;
        size: IconSizes;
    };
    argTypes: {
        Path: {
            control: {
                type: string;
                options: string[];
            };
        };
        size: {
            control: string;
            options: IconSizes[];
        };
    };
};
export declare const SizesLarge: {
    (args: IconProps): import("react/jsx-runtime").JSX.Element;
    args: {
        Path: ({ stroke }: import("./IconTypes").PathProps) => import("react/jsx-runtime").JSX.Element;
        size: IconSizes;
    };
    argTypes: {
        Path: {
            control: {
                type: string;
                options: string[];
            };
        };
        size: {
            control: string;
            options: IconSizes[];
        };
    };
};
export declare const SizesCustom: {
    (args: IconProps): import("react/jsx-runtime").JSX.Element;
    args: {
        width: number;
        height: number;
        size: undefined;
        Path: ({ stroke }: import("./IconTypes").PathProps) => import("react/jsx-runtime").JSX.Element;
    };
    argTypes: {
        Path: {
            control: {
                type: string;
                options: string[];
            };
        };
        width: {
            control: string;
        };
        height: {
            control: string;
        };
        size: {
            control: null;
        };
    };
};
