fumadocs-ui
Version:
The Radix UI version of Fumadocs UI
45 lines • 1.77 kB
TypeScript
import { Tabs, TabsContent, TabsList, TabsTrigger } from "./ui/tabs.js";
import { ComponentProps, HTMLAttributes, ReactNode } from "react";
//#region src/components/codeblock.d.ts
interface CodeBlockProps extends Omit<ComponentProps<'figure'>, 'title'> {
title?: ReactNode;
/**
* Icon of code block
*
* When passed as a string, it assumes the value is the HTML of icon
*/
icon?: ReactNode;
/**
* Allow to copy code with copy button
*
* @defaultValue true
*/
allowCopy?: boolean | 'true' | 'false';
/**
* Keep original background color generated by Shiki or Rehype Code
*
* @defaultValue false
*/
keepBackground?: boolean;
viewportProps?: HTMLAttributes<HTMLElement>;
/**
* show line numbers
*/
'data-line-numbers'?: boolean;
/**
* @defaultValue 1
*/
'data-line-numbers-start'?: number;
Actions?: (props: {
className?: string;
children?: ReactNode;
}) => ReactNode;
}
declare function Pre(props: ComponentProps<'pre'>): import("react").JSX.Element;
declare function CodeBlock({ ref, title, allowCopy, keepBackground, icon, viewportProps, children, Actions, ...props }: CodeBlockProps): import("react").JSX.Element;
declare function CodeBlockTabs({ ref, ...props }: ComponentProps<typeof Tabs>): import("react").JSX.Element;
declare function CodeBlockTabsList(props: ComponentProps<typeof TabsList>): import("react").JSX.Element;
declare function CodeBlockTabsTrigger({ children, ...props }: ComponentProps<typeof TabsTrigger>): import("react").JSX.Element;
declare function CodeBlockTab(props: ComponentProps<typeof TabsContent>): import("react").JSX.Element;
//#endregion
export { CodeBlock, CodeBlockProps, CodeBlockTab, CodeBlockTabs, CodeBlockTabsList, CodeBlockTabsTrigger, Pre };