/** * FileIcon / FolderIcon — Material Icon Theme-powered file/folder glyphs. * * Thin React wrapper over a configurable icon resolver. By default it * consumes `vscode-material-icon-theme-js` (optional peer) to map a * filename to an SVG basename, then renders an `` pointing at * `${basePath}${basename}`. Consumers are responsible for hosting the * SVGs under `basePath` (defaults to `/file-icons/`). * * Ported from mks-mission-control with MC-specific plumbing stripped. * * @module @mks2508/mks-ui/react/ui/FileIcon */ import type { IFileIconProps, IFolderIconProps } from './FileIcon.types'; /** * FileIcon — renders an icon for a given filename. * * @param filename - Filename used to resolve the icon asset * @param slots - Override Tailwind classes per visual slot * * @example * ```tsx * // react_ts.svg * // json.svg * * ``` */ export declare const FileIcon: import("react").MemoExoticComponent<({ filename, size, className, isSubmodule, basePath, resolve, slots, }: IFileIconProps) => import("react/jsx-runtime").JSX.Element>; /** * FolderIcon — renders an icon for a given folder (supports open/closed state). * * @param name - Folder name used to resolve the icon asset * @param open - Whether the folder is visually open * @param slots - Override Tailwind classes per visual slot * * @example * ```tsx * // folder-src.svg * // folder-src-open.svg * ``` */ export declare const FolderIcon: import("react").MemoExoticComponent<({ name, open, size, className, basePath, resolve, slots, }: IFolderIconProps) => import("react/jsx-runtime").JSX.Element>; export { FileIconStyles, fileIconVariants, FolderIconStyles, folderIconVariants, } from './FileIcon.styles'; export type { FileIconSlot, FolderIconSlot } from './FileIcon.styles'; export type { IFileIconProps, IFolderIconProps, FileIconResolver, FolderIconResolver, } from './FileIcon.types'; //# sourceMappingURL=index.d.ts.map