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;
    analyticsEvents?: import("../../index.js").AnalyticsEventsProp;
} | {
    type: NavigationItemType.Button;
    text: string;
    url: string;
    urlTitle?: string;
    primary?: boolean;
    theme?: import("../../index.js").ButtonTheme;
    img?: import("../../index.js").ButtonImageProps | string;
    target?: string;
    size?: import("@gravity-ui/uikit").ButtonProps["size"];
    width?: import("@gravity-ui/uikit").ButtonProps["width"];
    extraProps?: import("@gravity-ui/uikit").ButtonProps["extraProps"];
    analyticsEvents?: import("../../index.js").AnalyticsEventsProp;
} | {
    type: NavigationItemType.Dropdown;
    items: NavigationLinkItem[];
    hidePopup: () => void;
    isActive: boolean;
    text: string;
    icon?: import("../../index.js").ImageProps;
    url?: string;
    iconSize?: number;
};
export {};
