import { default as React } from 'react';
export interface NavigationRailScreenProps {
    name: string;
    label: React.ReactNode;
    icon: (props: {
        isActive: boolean;
    }) => React.ReactNode;
    shape?: "full" | "minimal" | "sharp";
}
interface NavigationRailContextProps {
    activeTab: string;
    onTabPress: (name: string) => void;
    isExpanded: boolean;
    navigatorShape: "full" | "minimal" | "sharp";
    indicatorId: string;
    variant: "primary" | "secondary" | "tertiary" | "ghost" | "surface";
    itemVariant: "primary" | "secondary" | "tertiary" | "ghost";
    itemLayout: "stacked" | "inline";
    isRtl: boolean;
    pillStyle: "full" | "icon";
    disableRipple: boolean;
    indicatorAnimation: "slide" | "bloom";
}
export declare const useNavigationRail: () => NavigationRailContextProps;
export interface NavigationRailHeaderProps extends React.HTMLAttributes<HTMLDivElement> {
    children?: React.ReactNode;
}
export interface NavigationRailLabelProps extends React.HTMLAttributes<HTMLLIElement> {
    children?: React.ReactNode;
}
export interface NavigationRailFABProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
    icon: React.ReactNode;
    label?: React.ReactNode;
    variant?: "primary" | "secondary" | "tertiary" | "ghost";
}
interface NavigatorProps extends React.HTMLAttributes<HTMLElement> {
    shape?: "full" | "minimal" | "sharp";
    bordered?: boolean;
    children: React.ReactNode;
    activeTab: string;
    onTabPress: (name: string) => void;
    variant?: "primary" | "secondary" | "tertiary" | "ghost" | "surface";
    itemVariant?: "primary" | "secondary" | "tertiary" | "ghost";
    itemLayout?: "stacked" | "inline";
    width?: string | number;
    expandedWidth?: string | number;
    forceExpanded?: boolean;
    expandOnHover?: boolean;
    overlay?: boolean;
    expandable?: boolean;
    pillStyle?: "full" | "icon";
    disableRipple?: boolean;
    indicatorAnimation?: "slide" | "bloom";
    /** Hides the menu/toggle button at the top of the rail */
    hideMenuButton?: boolean;
}
export declare const NavigationRail: {
    Navigator: React.FC<NavigatorProps>;
    Screen: React.FC<NavigationRailScreenProps>;
    FAB: React.ForwardRefExoticComponent<NavigationRailFABProps & React.RefAttributes<HTMLButtonElement>>;
    Header: React.FC<NavigationRailHeaderProps>;
    Label: React.FC<NavigationRailLabelProps>;
};
export {};
