import { DOMContext, TNode, Value } from '@tempots/dom';
import type { NavigationOptions } from '@tempots/ui';
export type UrlAction = {
    href: Value<string>;
    viewTransition?: boolean;
    state?: NavigationOptions['state'];
    scroll?: NavigationOptions['scroll'];
    replace?: NavigationOptions['replace'];
};
export type ClickAction = {
    onClick: () => void;
};
export type LinkAction = UrlAction | ClickAction;
export type SidebarLinkOptions = {
    content: TNode;
    icon?: Value<string>;
    right?: TNode;
    action?: {
        icon: Value<string>;
        label?: Value<string>;
        onClick?: (ctx: DOMContext) => void;
    };
    ariaExpanded?: Value<boolean>;
    ariaControls?: Value<string>;
    ariaLabel?: Value<string>;
} & LinkAction;
export declare function SidebarUrlLink(options: UrlAction, ...children: TNode[]): import("@tempots/dom").Renderable;
export declare function SidebarActiveLink(...children: TNode[]): import("@tempots/dom").Renderable;
export declare function SidebarClickLink(options: ClickAction & Partial<Pick<SidebarLinkOptions, 'ariaExpanded' | 'ariaControls' | 'ariaLabel'>>, ...children: TNode[]): import("@tempots/dom").Renderable;
export declare function SidebarLink(options: SidebarLinkOptions): import("@tempots/dom").Renderable;
