import * as React from 'react';
import { NavigationItemModel, NavigationItemType, NavigationLinkItem } from "../models/index.js";
import { ItemColumnName } from "./models.js";
type GetItemClickHandlerArgs = {
    column: ItemColumnName;
    index: number;
    activeItemId?: string;
    onActiveItemChange: (id?: string) => void;
};
export declare const getItemClickHandler: ({ column, index, onActiveItemChange, }: GetItemClickHandlerArgs) => React.MouseEventHandler;
export declare function getNavigationItemWithIconSize(iconSize?: number): (item: NavigationItemModel) => {
    type: NavigationItemType.Link;
    url: string;
    urlTitle?: string;
    arrow?: boolean;
    target?: string;
    text: string;
    icon?: import("../index.js").ImageProps | undefined;
    iconSize?: number | undefined;
} | {
    type: NavigationItemType.Button;
    text: string;
    url: string;
    urlTitle?: string;
    primary?: boolean;
    theme?: import("../index.js").ButtonTheme;
    img?: import("../index.js").ButtonImageProps | string;
    target?: string;
    analyticsEvents?: import("../index.js").AnalyticsEventsProp;
    size?: import("@gravity-ui/uikit").ButtonSize | undefined;
    width?: import("@gravity-ui/uikit").ButtonWidth | undefined;
    extraProps?: React.AnchorHTMLAttributes<HTMLAnchorElement> | React.ButtonHTMLAttributes<HTMLButtonElement> | undefined;
} | {
    type: NavigationItemType.Dropdown;
    items: NavigationLinkItem[];
    hidePopup: () => void;
    isActive: boolean;
    text: string;
    icon?: import("../index.js").ImageProps;
    url?: string;
    iconSize?: number;
};
export {};
