import { TNode, Value } from '@tempots/dom';
import type { NavigationOptions } from '@tempots/ui';
import { ControlSize, ButtonVariant } from '../../theme';
import { ThemeColorName } from '../../../tokens';
import { RadiusName } from '../../../tokens/radius';
import { UrlMatchMode } from './navigation-link';
export interface ButtonLinkOptions {
    href: Value<string>;
    viewTransition?: boolean;
    state?: NavigationOptions['state'];
    scroll?: NavigationOptions['scroll'];
    replace?: NavigationOptions['replace'];
    target?: Value<string>;
    rel?: Value<string>;
    matchMode?: UrlMatchMode;
    disableWhenActive?: Value<boolean>;
    variant?: Value<ButtonVariant>;
    size?: Value<ControlSize>;
    color?: Value<ThemeColorName>;
    roundedness?: Value<RadiusName>;
    disabled?: Value<boolean>;
    fullWidth?: Value<boolean>;
    loading?: Value<boolean>;
}
export declare function ButtonLink({ href, viewTransition, state, scroll, replace, target, rel, matchMode, disableWhenActive, variant, size, color, roundedness, disabled, }: ButtonLinkOptions, ...children: TNode[]): import("@tempots/dom").Renderable;
