import { type ElementType, type FocusEvent, type KeyboardEvent, type MouseEvent, type ReactNode } from "react"; import type { PaletteProps } from "../../Theme/tokens/types"; import type { AppOption } from "../AppSwitcher/AppSwitcherProps"; import { type HighlightOptions } from "./match"; import type { LauncherLabels, LauncherModule, LauncherScreen } from "./NavLauncherProps"; export declare const ITEM_SELECTOR = "[data-launcher-item]"; export declare const TouchDensity: import("react").Provider; export declare const useTouchDensity: () => boolean; type RulePlane = "raised" | "recess"; export declare const RulePlaneProvider: import("react").Provider; export declare const copyHint: (base: string, copied: string, isCopied: boolean) => { text: string; reserve: string; isAccent: boolean; }; export declare function HintLabel({ text, reserve, isAccent, }: { text: string; reserve: string; isAccent?: boolean; }): import("react/jsx-runtime").JSX.Element; export declare const isPlainClick: (event: MouseEvent) => boolean; export type LinkCtx = { linkAs: ElementType; onPlainClick: (event: MouseEvent) => void; }; export declare const WIDE_ROW = "@container launcher-row (min-width: 300px)"; export declare const ROW_CONTAINER: { containerType: string; containerName: string; }; export declare const activeRowStyle: (colors: PaletteProps) => { edge: string; fill: string; }; export declare const activeRowSurface: (colors: PaletteProps) => { backgroundColor: string; boxShadow: string; outline: string; outlineOffset: string; }; export declare const titleInset: (base: number, open: number, chip?: number) => { "@container launcher-row (max-width: 219px)": { "[data-group]:hover &, [data-group]:focus-within &, [data-group][data-reveal=true] &": { "--row-pr": string; }; }; "@container launcher-row (min-width: 300px)"?: { "[data-group][data-reveal=true] &": { "--row-pr": string; }; } | undefined; paddingRight: string; "--row-pr": string; "[data-group]:hover &, [data-group]:focus-within &, [data-group][data-reveal=true] &": { "--row-pr": string; }; }; export declare const useRowFocus: (isBordered?: boolean) => { sx: { "&[data-row-focus]": { backgroundColor: string; boxShadow: string; outline: string; outlineOffset: string; } | { backgroundColor: string; borderColor: string; }; }; primary: { onFocus: (event: FocusEvent) => boolean | undefined; onBlur: (event: FocusEvent) => boolean | undefined; }; }; export declare const stretchedLink: (radius: string) => { outline: string; _after: { content: string; position: string; inset: number; borderRadius: string; }; }; export declare const useRowHover: () => { bg: string; _hover: { bg: string; }; _focusWithin: { bg: string; }; }; type BadgeProps = { value?: number | string; size?: "row" | "tile"; }; export declare function CountBadge({ value, size }: BadgeProps): import("react/jsx-runtime").JSX.Element | null; export declare function NewTag({ label }: { label: string; }): import("react/jsx-runtime").JSX.Element; type SectionHeaderProps = { label: string; meta?: string; isDecorative?: boolean; isRail?: boolean; hasCount?: boolean; }; export declare function SectionHeader({ label, meta, isDecorative, isRail, hasCount, }: SectionHeaderProps): import("react/jsx-runtime").JSX.Element; type RowIconProps = { icon?: ElementType; size: number; stroke?: number; mt?: string; }; export declare function RowIcon({ icon: Icon, size, stroke, mt }: RowIconProps): import("react/jsx-runtime").JSX.Element | null; export declare const HighlightOptionsProvider: import("react").Provider; export declare function Highlight({ text, query }: { text: string; query: string; }): import("react/jsx-runtime").JSX.Element; export declare function RowActions({ children }: { children: ReactNode; }): import("react/jsx-runtime").JSX.Element; export declare function RowTip({ text }: { text: string; }): import("react/jsx-runtime").JSX.Element; type ModuleRowProps = { module: LauncherModule; keyScreens: LauncherScreen[]; isPinned: boolean; onTogglePin?: () => void; pinId: string; labels: LauncherLabels; link: LinkCtx; }; export declare function ModuleRow({ module, keyScreens, isPinned, onTogglePin, pinId, labels, link, }: ModuleRowProps): import("react/jsx-runtime").JSX.Element; type RailRowProps = { screen: LauncherScreen; module: LauncherModule; link: LinkCtx; isStrong?: boolean; trailing?: ReactNode; pinId?: string; }; export declare function RailRow({ screen, module, link, isStrong, trailing, pinId, }: RailRowProps): import("react/jsx-runtime").JSX.Element; type PinTextButtonProps = { label: string; text: string; onToggle: () => void; }; export declare function PinTextButton({ label, text, onToggle }: PinTextButtonProps): import("react/jsx-runtime").JSX.Element; type PinnedTileProps = { screen: LauncherScreen; module: LauncherModule; link: LinkCtx; labels: LauncherLabels; onTogglePin?: () => void; }; export declare function PinnedTile({ screen, module, link, labels, onTogglePin, }: PinnedTileProps): import("react/jsx-runtime").JSX.Element; type AppsSectionProps = { apps: readonly AppOption[]; hues: readonly string[]; currentAppId?: string; heading: string; hideHeading?: boolean; onSelect: (app: AppOption, event: MouseEvent | KeyboardEvent) => void; }; export declare function AppsSection({ apps, hues, currentAppId, heading, hideHeading, onSelect, }: AppsSectionProps): import("react/jsx-runtime").JSX.Element; export {};