carbon-components-svelte/types/Link/Link.svelte.d.ts
metonym ea38cd2568
feat(types): support sveltekit:prefetch, sveltekit:noscroll attributes in type definitions (#1234)
* chore(deps-dev): upgrade sveld to 0.14.0

* Run "yarn build:docs"
2022-04-09 14:13:56 -07:00

76 lines
1.7 KiB
TypeScript

/// <reference types="svelte" />
import type { SvelteComponentTyped } from "svelte";
export interface LinkProps
extends svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["p"]>,
svelte.JSX.HTMLAttributes<HTMLElementTagNameMap["a"]> {
/**
* Specify the size of the link
* @default undefined
*/
size?: "sm" | "lg";
/**
* Specify the href value
* @default undefined
*/
href?: string;
/**
* Set to `true` to use the inline variant
* @default false
*/
inline?: boolean;
/**
* Specify the icon to render
* `inline` must be `false`
* @default undefined
*/
icon?: typeof import("svelte").SvelteComponent;
/**
* Set to `true` to disable the checkbox
* @default false
*/
disabled?: boolean;
/**
* Set to `true` to allow visited styles
* @default false
*/
visited?: boolean;
/**
* Obtain a reference to the top-level HTML element
* @default null
*/
ref?: null | HTMLAnchorElement | HTMLParagraphElement;
/**
* SvelteKit attribute to enable data prefetching
* if a link is hovered over or touched on mobile.
* @see https://kit.svelte.dev/docs/a-options#sveltekit-prefetch
* @default false
*/
"sveltekit:prefetch"?: boolean;
/**
* SvelteKit attribute to prevent scrolling
* after the link is clicked.
* @see https://kit.svelte.dev/docs/a-options#sveltekit-prefetch
* @default false
*/
"sveltekit:noscroll"?: boolean;
}
export default class Link extends SvelteComponentTyped<
LinkProps,
{
click: WindowEventMap["click"];
mouseover: WindowEventMap["mouseover"];
mouseenter: WindowEventMap["mouseenter"];
mouseleave: WindowEventMap["mouseleave"];
},
{ default: {}; icon: {} }
> {}