import "./file_badge.css"; import type * as React from "react"; import { useRender } from "@base-ui/react/use-render"; import { type StyleProps } from "./style_props"; export declare function resolveMime(mimeType: string): { label: string; color: string; }; /** The ramp's smallest rung. Type under it is not small type, it is a smear. */ export declare const LEGIBLE_TYPE = 12; export interface FileBadgeProps extends StyleProps { /** Omit only with `placeholder` — a ghost slot has no resolved type yet. */ mimeType?: string; /** Base WIDTH in pixels. Height, radii, font, and padding scale proportionally — the * badge is TALLER than it is wide (26 × 32 at the default), so a SQUARE slot takes the * fitted width, not the slot side — `fileBadgeWidthForBox` converts. Default: 26 */ size?: number; /** Show a "TMPL" overlay to distinguish templates from regular files. */ isTemplate?: boolean; /** Render a same-footprint dashed ghost for a not-yet-uploaded slot, so a * pending row lines up pixel-for-pixel with a real badge. */ placeholder?: boolean; /** Makes the drawing a press target — a row-sized document face, where a card * would have nowhere to put a filename. */ onPress?: () => void; /** What the mark stands for — the filename, on a pressable badge. Without a * press it names the drawing to a screen reader (`role="img"`); omit it and * the mark is decoration beside a filename that is already printed. */ accessibilityLabel?: string; testID?: string; ref?: React.Ref; render?: useRender.RenderProp; } export declare function FileBadge(props: FileBadgeProps): React.ReactElement>;