import { type VariantProps } from 'class-variance-authority'; import * as React from 'react'; declare const codeSnippetVariants: (props?: ({ size?: "lg" | "md" | "sm" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; declare const lineNumberVariants: (props?: ({ size?: "lg" | "md" | "sm" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; export interface CodeSnippetProps extends VariantProps { /** Code content to display */ code: string; /** Programming language label shown in the top-right corner */ language?: string; /** File name shown in the file bar */ fileName?: string; /** Whether to show the file bar */ showHeader?: boolean; /** Whether to show line numbers */ showLineNumbers?: boolean; /** Starting line number */ startLineNumber?: number; /** Whether to show a copy-to-clipboard button */ showCopyButton?: boolean; /** Additional class name */ className?: string; /** Responsive breakpoint for compact mode */ breakpoint?: 'desktop' | 'mobile'; /** One-based line numbers to emphasize */ highlightedLines?: readonly number[]; /** Pre-highlighted sugar-high markup */ highlightedCode?: string; /** Additional controls shown in the file bar */ headerActions?: React.ReactNode; /** Optional tabs or selector shown above the file bar */ toolbar?: React.ReactNode; } /** Fixed icon slot: both icons stacked, opacity-only 120 ms crossfade, instant under reduced motion. */ declare const COPY_ICON_SLOT_CLASS = "relative inline-grid size-4 shrink-0 *:col-start-1 *:row-start-1 *:size-4 *:transition-opacity *:duration-(--duration-fast) *:ease-standard motion-reduce:*:transition-none"; declare const CodeSnippet: React.ForwardRefExoticComponent>; export { COPY_ICON_SLOT_CLASS, CodeSnippet, codeSnippetVariants, lineNumberVariants, };