import type { HTMLAnchorAttributes, HTMLButtonAttributes } from "svelte/elements"; import type { WithoutChildren } from "svelte-toolbelt"; import type { WithChildren } from "../../shared/index.js"; export type ButtonRootPropsWithoutHTML = WithChildren<{ ref?: HTMLElement | null; }>; type AnchorElement = ButtonRootPropsWithoutHTML & WithoutChildren> & { href: HTMLAnchorAttributes["href"]; type?: never; disabled?: HTMLButtonAttributes["disabled"]; }; type ButtonElement = ButtonRootPropsWithoutHTML & WithoutChildren> & { type?: HTMLButtonAttributes["type"]; href?: never; disabled?: HTMLButtonAttributes["disabled"]; }; export type ButtonRootProps = AnchorElement | ButtonElement; export {};