import { VariantProps } from "class-variance-authority";
import { PropsWithChildren, ReactNode } from "react";
import { Flex } from "~/flex";
type SidebarRootProps = PropsWithChildren<VariantProps<typeof Flex>> & {
    children?: ReactNode;
};
type SidebarLogoProps = {
    img?: ReactNode;
    name?: string;
    logo?: ReactNode;
    onClick?: () => void;
};
type SidebarNavigationsProps = PropsWithChildren<VariantProps<typeof Flex>>;
type SidebarNavigationsGroupProps = PropsWithChildren<VariantProps<typeof Flex> & {
    icon?: React.ReactNode;
    name: string;
}>;
declare const cell: (props?: ({
    active?: boolean | null | undefined;
    disabled?: boolean | null | undefined;
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
type SidebarNavigationCellProps = PropsWithChildren<VariantProps<typeof cell>> & VariantProps<typeof Flex> & {
    leadingIcon?: React.ReactNode;
    trailingIcon?: React.ReactNode;
    children?: React.ReactNode;
    onClick?: () => void;
    href?: string;
};
type SidebarFooterProps = {
    children?: string;
    action?: ReactNode;
};
export declare const Sidebar: (({ children, ...props }: SidebarRootProps) => import("react/jsx-runtime").JSX.Element) & {
    Logo: ({ name, logo, onClick, ...props }: SidebarLogoProps) => import("react/jsx-runtime").JSX.Element;
    Navigations: ({ children, ...props }: SidebarNavigationsProps) => import("react/jsx-runtime").JSX.Element;
    NavigationGroup: ({ icon, name, children, ...props }: SidebarNavigationsGroupProps) => import("react/jsx-runtime").JSX.Element;
    NavigationCell: ({ leadingIcon, trailingIcon, active, disabled, children, asChild, ...props }: VariantProps<(props?: ({
        active?: boolean | null | undefined;
        disabled?: boolean | null | undefined;
    } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string> & {
        children?: ReactNode;
    } & VariantProps<import("react").ForwardRefExoticComponent<VariantProps<(props?: ({
        direction?: "row" | "column" | "rowReverse" | "columnReverse" | null | undefined;
        align?: "start" | "center" | "end" | "stretch" | "baseline" | null | undefined;
        justify?: "start" | "center" | "end" | "between" | null | undefined;
        wrap?: "wrap" | "noWrap" | "wrapReverse" | null | undefined;
        gap?: "extra-small" | "small" | "medium" | "large" | "extra-large" | null | undefined;
    } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string> & {
        children?: ReactNode;
    } & import("react").HTMLAttributes<HTMLDivElement> & import("react").RefAttributes<HTMLDivElement>>> & {
        leadingIcon?: React.ReactNode;
        trailingIcon?: React.ReactNode;
        children?: React.ReactNode;
        onClick?: (() => void) | undefined;
        href?: string | undefined;
    } & {
        asChild?: boolean | undefined;
    }) => import("react/jsx-runtime").JSX.Element;
    Footer: ({ children, action }: SidebarFooterProps) => import("react/jsx-runtime").JSX.Element;
};
export {};
//# sourceMappingURL=sidebar.d.ts.map