/**
* 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