import { Button } from "./button.js";
import { Separator } from "./separator.js";
import { Input } from "./input.js";
import { TooltipContent } from "./tooltip.js";
import * as React$1 from "react";
import * as react_jsx_runtime230 from "react/jsx-runtime";
import { VariantProps } from "class-variance-authority";
import * as class_variance_authority_types10 from "class-variance-authority/types";

//#region src/react/ui/sidebar.d.ts
type SidebarContextProps = {
  state: "expanded" | "collapsed";
  open: boolean;
  setOpen: (open: boolean) => void;
  openMobile: boolean;
  setOpenMobile: (open: boolean) => void;
  isMobile: boolean;
  toggleSidebar: () => void;
};
/** Hook to access sidebar state and controls */
declare function useSidebar(): SidebarContextProps;
declare function SidebarProvider({
  defaultOpen,
  open: openProp,
  onOpenChange: setOpenProp,
  className,
  style,
  children,
  ...props
}: React$1.ComponentProps<"div"> & {
  defaultOpen?: boolean;
  open?: boolean;
  onOpenChange?: (open: boolean) => void;
}): react_jsx_runtime230.JSX.Element;
/** Collapsible navigation sidebar with mobile support */
declare function Sidebar({
  side,
  variant,
  collapsible,
  className,
  children,
  ...props
}: React$1.ComponentProps<"div"> & {
  side?: "left" | "right";
  variant?: "sidebar" | "floating" | "inset";
  collapsible?: "offcanvas" | "icon" | "none";
}): react_jsx_runtime230.JSX.Element;
/** Button that toggles the sidebar open and closed */
declare function SidebarTrigger({
  className,
  onClick,
  ...props
}: React$1.ComponentProps<typeof Button>): react_jsx_runtime230.JSX.Element;
/** Clickable rail element for toggling sidebar visibility */
declare function SidebarRail({
  className,
  ...props
}: React$1.ComponentProps<"button">): react_jsx_runtime230.JSX.Element;
/** Main content area that adapts to sidebar state */
declare function SidebarInset({
  className,
  ...props
}: React$1.ComponentProps<"main">): react_jsx_runtime230.JSX.Element;
/** Input field styled for use within the sidebar */
declare function SidebarInput({
  className,
  ...props
}: React$1.ComponentProps<typeof Input>): react_jsx_runtime230.JSX.Element;
/** Header section at the top of the sidebar */
declare function SidebarHeader({
  className,
  ...props
}: React$1.ComponentProps<"div">): react_jsx_runtime230.JSX.Element;
/** Footer section at the bottom of the sidebar */
declare function SidebarFooter({
  className,
  ...props
}: React$1.ComponentProps<"div">): react_jsx_runtime230.JSX.Element;
/** Visual separator between sidebar sections */
declare function SidebarSeparator({
  className,
  ...props
}: React$1.ComponentProps<typeof Separator>): react_jsx_runtime230.JSX.Element;
/** Scrollable content area within the sidebar */
declare function SidebarContent({
  className,
  ...props
}: React$1.ComponentProps<"div">): react_jsx_runtime230.JSX.Element;
/** Container for grouping related sidebar items */
declare function SidebarGroup({
  className,
  ...props
}: React$1.ComponentProps<"div">): react_jsx_runtime230.JSX.Element;
/** Label heading for a sidebar group */
declare function SidebarGroupLabel({
  className,
  asChild,
  ...props
}: React$1.ComponentProps<"div"> & {
  asChild?: boolean;
}): react_jsx_runtime230.JSX.Element;
/** Action button displayed next to a sidebar group label */
declare function SidebarGroupAction({
  className,
  asChild,
  ...props
}: React$1.ComponentProps<"button"> & {
  asChild?: boolean;
}): react_jsx_runtime230.JSX.Element;
/** Content container for sidebar group items */
declare function SidebarGroupContent({
  className,
  ...props
}: React$1.ComponentProps<"div">): react_jsx_runtime230.JSX.Element;
/** Navigation menu list within the sidebar */
declare function SidebarMenu({
  className,
  ...props
}: React$1.ComponentProps<"ul">): react_jsx_runtime230.JSX.Element;
/** Individual menu item within the sidebar */
declare function SidebarMenuItem({
  className,
  ...props
}: React$1.ComponentProps<"li">): react_jsx_runtime230.JSX.Element;
declare const sidebarMenuButtonVariants: (props?: ({
  variant?: "default" | "outline" | null | undefined;
  size?: "default" | "sm" | "lg" | null | undefined;
} & class_variance_authority_types10.ClassProp) | undefined) => string;
declare function SidebarMenuButton({
  asChild,
  isActive,
  variant,
  size,
  tooltip,
  className,
  ...props
}: React$1.ComponentProps<"button"> & {
  asChild?: boolean;
  isActive?: boolean;
  tooltip?: string | React$1.ComponentProps<typeof TooltipContent>;
} & VariantProps<typeof sidebarMenuButtonVariants>): react_jsx_runtime230.JSX.Element;
/** Action button displayed alongside a menu item */
declare function SidebarMenuAction({
  className,
  asChild,
  showOnHover,
  ...props
}: React$1.ComponentProps<"button"> & {
  asChild?: boolean;
  showOnHover?: boolean;
}): react_jsx_runtime230.JSX.Element;
/** Badge for displaying counts or status on menu items */
declare function SidebarMenuBadge({
  className,
  ...props
}: React$1.ComponentProps<"div">): react_jsx_runtime230.JSX.Element;
/** Loading skeleton placeholder for menu items */
declare function SidebarMenuSkeleton({
  className,
  showIcon,
  ...props
}: React$1.ComponentProps<"div"> & {
  showIcon?: boolean;
}): react_jsx_runtime230.JSX.Element;
/** Submenu list for nested navigation items */
declare function SidebarMenuSub({
  className,
  ...props
}: React$1.ComponentProps<"ul">): react_jsx_runtime230.JSX.Element;
/** Individual item within a sidebar submenu */
declare function SidebarMenuSubItem({
  className,
  ...props
}: React$1.ComponentProps<"li">): react_jsx_runtime230.JSX.Element;
/** Button for submenu items */
declare function SidebarMenuSubButton({
  asChild,
  size,
  isActive,
  className,
  ...props
}: React$1.ComponentProps<"a"> & {
  asChild?: boolean;
  size?: "sm" | "md";
  isActive?: boolean;
}): react_jsx_runtime230.JSX.Element;
//#endregion
export { Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, useSidebar };
//# sourceMappingURL=sidebar.d.ts.map