fumadocs-ui
Version:
The Radix UI version of Fumadocs UI
44 lines (43 loc) • 1.33 kB
TypeScript
import { BaseLayoutProps, GetLayoutTabsOptions, LayoutTab } from "../shared/index.js";
import { SidebarProps, SidebarProviderProps } from "./slots/sidebar.js";
import { DocsSlots, useDocsLayout } from "./client.js";
import { HTMLAttributes, ReactNode } from "react";
import * as PageTree from "fumadocs-core/page-tree";
//#region src/layouts/docs/index.d.ts
interface DocsLayoutProps extends BaseLayoutProps {
tree: PageTree.Root;
sidebar?: SidebarOptions;
tabMode?: 'top' | 'auto';
tabs?: LayoutTab[] | GetLayoutTabsOptions | false;
containerProps?: HTMLAttributes<HTMLDivElement>;
slots?: Partial<DocsSlots>;
}
interface SidebarOptions extends SidebarProps, SidebarProviderProps {
enabled?: boolean;
/**
* @deprecated use `slots.sidebar` instead.
*/
component?: ReactNode;
/**
* @deprecated use layout-level `tabMode` option instead.
*/
tabMode?: 'auto' | 'top';
/**
* @deprecated use layout-level `tabs` option instead.
*/
tabs?: LayoutTab[] | GetLayoutTabsOptions | false;
}
declare function DocsLayout({
tree,
sidebar: {
tabs: _tabs,
tabMode: _tabMode,
...sidebarProps
},
tabs: layoutTabs,
tabMode,
children,
...props
}: DocsLayoutProps): import("react").JSX.Element;
//#endregion
export { DocsLayout, DocsLayoutProps, type DocsSlots, useDocsLayout };