import type Svg from '../svg';
import type { PropsOf } from '../utils';
import type { BaseIcon } from './baseIcons/types';
/** Object defining a custom icon. */
export type IconDefinition = {
    /** Icon details including height, width and 'd' attribute. */
    details: IconDetails;
    /** Name of the icon used internally. */
    name: string;
    /** Props object or array of objects passed to the path elements. */
    pathProps?: React.SVGProps<SVGPathElement> | React.SVGProps<SVGPathElement>[];
    /** Props object passed to the svg element. */
    svgProps?: PropsOf<typeof Svg>;
};
/** Icon definition following Font Awesome standard. */
export type IconDetails = [
    number,
    number,
    string[],
    string,
    // unicode
    string | string[]
];
/** Base icons collection, which can be extended by the consumer. */
export interface VuiIcons extends Record<BaseIcon, IconDefinition> {
}
export type VuiIcon = keyof VuiIcons;
//# sourceMappingURL=types.d.ts.map