import * as Collapsible from '@radix-ui/react-collapsible';
import { ComponentPropsWithoutRef, ComponentRef, ReactNode } from "react";
interface SidebarProps extends ComponentPropsWithoutRef<typeof Collapsible.Root> {
    position?: 'left' | 'right';
    profile?: {
        icon: ReactNode;
        label: string;
        href?: string;
        onIconClick?: () => void;
    };
    ref?: ComponentRef<typeof Collapsible.Root>;
}
interface SidebarHeaderProps extends ComponentPropsWithoutRef<"div"> {
    logo: ReactNode;
    title: string;
    onLogoClick?: () => void;
    ref?: ComponentRef<"div">;
}
interface SidebarItemProps extends ComponentPropsWithoutRef<"a"> {
    icon: ReactNode;
    active?: boolean;
    disabled?: boolean;
    ref?: ComponentRef<"a">;
}
interface SidebarFooterProps extends ComponentPropsWithoutRef<"div"> {
    ref?: ComponentRef<"div">;
}
interface SidebarNavigationGroupProps extends ComponentPropsWithoutRef<"div"> {
    name: string;
    icon?: ReactNode;
    ref?: ComponentRef<"div">;
}
export declare const Sidebar: {
    ({ className, position, open, onOpenChange, children, profile, ref, ...props }: SidebarProps): import("react/jsx-runtime").JSX.Element;
    displayName: string;
} & {
    Header: {
        ({ className, logo, title, onLogoClick, ref, ...props }: SidebarHeaderProps): import("react/jsx-runtime").JSX.Element;
        displayName: string;
    };
    Main: {
        ({ className, children, ref, ...props }: Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
            ref?: HTMLDivElement | undefined;
        }): import("react/jsx-runtime").JSX.Element;
        displayName: string;
    };
    Footer: {
        ({ className, children, ref, ...props }: SidebarFooterProps): import("react/jsx-runtime").JSX.Element;
        displayName: string;
    };
    Item: {
        ({ className, icon, children, active, disabled, ref, ...props }: SidebarItemProps): import("react/jsx-runtime").JSX.Element;
        displayName: string;
    };
    Group: {
        ({ className, name, icon, children, ref, ...props }: SidebarNavigationGroupProps): import("react/jsx-runtime").JSX.Element;
        displayName: string;
    };
};
export {};
//# sourceMappingURL=sidebar.d.ts.map