UNPKG

@react-symbols/icons

Version:

Symbols icons by Miguel Solorio for React

90 lines (89 loc) 3.19 kB
import * as react from "react"; import { FC, JSX, SVGProps } from "react"; //#region src/utils/extensions/types.d.ts interface ExtensionType { [extension: string]: FC<SVGProps<SVGSVGElement>>; } //#endregion //#region src/utils/index.d.ts interface GetIconForFileOptions extends SVGProps<SVGSVGElement> { fileName: string; autoAssign?: boolean | undefined; editFileNameData?: ExtensionType | undefined; editFileExtensionData?: ExtensionType | undefined; } interface GetIconForFolderOptions extends SVGProps<SVGSVGElement> { folderName: string; editFolderNameData?: ExtensionType | undefined; } /** * Default icon for unknown files. * @constant */ declare const DefaultFileIcon: react.FC<SVGProps<SVGSVGElement>>; /** * Default icon for unknown folders. * @constant */ declare const DefaultFolderIcon: react.FC<SVGProps<SVGSVGElement>>; /** * Default icon for opened folders. * @constant */ declare const DefaultFolderOpenedIcon: react.FC<SVGProps<SVGSVGElement>>; /** * Gets the icon for a file based on its extension. * @param fileName File name (e.g., "example.ts", "example.css"). * @param autoAssign Auto-assign icons based on file name (e.g., "vite.config.js" -> Vite icon). * @param editFileNameData Optional additional file name-to-icon mappings (activate `autoAssign` first). * @param editFileExtensionData Optional additional extension-to-icon mappings. * @param props Optional SVG properties for the icon. * @returns JSX element of the corresponding icon. */ declare const getIconForFile: ({ fileName, autoAssign, editFileNameData, editFileExtensionData, ...props }: GetIconForFileOptions) => JSX.Element; /** * React component to render a file icon based on its extension. * @param fileName File name (e.g., "example.ts"). * @param autoAssign Auto-assign icons based on file name (e.g., "vite.config.js" -> Vite icon). * @param editFileNameData Optional additional file name-to-icon mappings (activate `autoAssign` first). * @param editFileExtensionData Optional additional extension-to-icon mappings. * @param props Optional SVG properties for the icon. * @returns JSX element of the corresponding icon. */ declare const FileIcon: ({ fileName, autoAssign, editFileNameData, ...props }: GetIconForFileOptions) => JSX.Element; /** * Gets the icon for a folder based on its name. * @param folderName Folder name. * @param props Optional SVG properties for the icon. * @returns JSX element of the corresponding icon. */ declare const getIconForFolder: ({ folderName, editFolderNameData, ...props }: GetIconForFolderOptions) => JSX.Element; /** * React component to render a folder icon based on its name. * @param folderName Folder name. * @param editFolderNameData Optional additional folder name-to-icon mappings. * @param props Optional SVG properties for the icon. * @returns JSX element of the corresponding icon. */ declare const FolderIcon: ({ folderName, editFolderNameData, ...props }: GetIconForFolderOptions) => JSX.Element; //#endregion export { DefaultFileIcon, DefaultFolderIcon, DefaultFolderOpenedIcon, type ExtensionType, FileIcon, FolderIcon, getIconForFile, getIconForFolder };