import type { HTMLLabelAttributes, HTMLAnchorAttributes, HTMLButtonAttributes, HTMLAttributes } from "svelte/elements"; type MakeRequired = Omit & { [P in K]-?: NonNullable; }; export type NotButton = Omit & { onclick?: undefined; }; export type NotLink = T & { href?: undefined; }; export type ButtonAttrs = MakeRequired, "onclick">; export type LabelAttrs = MakeRequired>, "for">; export type AnchorAttrs = MakeRequired, "href">; export type DivAttrs = NotLink>>; export type OneOf = TKey extends keyof T ? { [P in TKey]-?: T[TKey]; } & Partial, never>> : never; export type LabelledAria = OneOf<{ title: string; "aria-label": string; "aria-labelledby": string; }>; export {};