import type { LooseAutocomplete } from '../../utils/types'; import { Component } from '../component'; export type LinkTarget = LooseAutocomplete<'_self' | '_blank' | '_parent' | '_top'>; export type LinkReferrerPolicy = 'no-referrer' | 'no-referrer-when-downgrade' | 'origin' | 'origin-when-cross-origin' | 'same-origin' | 'strict-origin' | 'strict-origin-when-cross-origin' | 'unsafe-url'; export type LinkSize = 'small' | 'default' | 'large'; export declare const UNSAFE_URL: RegExp; export declare class Link extends Component { #private; static styles: import("lit").CSSResult[]; static get properties(): { href: { type: StringConstructor; reflect: boolean; }; target: { type: StringConstructor; reflect: boolean; }; rel: { type: StringConstructor; reflect: boolean; }; download: { type: StringConstructor; reflect: boolean; }; ping: { type: StringConstructor; reflect: boolean; }; referrerpolicy: { type: StringConstructor; reflect: boolean; }; size: { type: StringConstructor; reflect: boolean; }; disabled: { type: BooleanConstructor; reflect: boolean; }; }; /** * The URL that the hyperlink points to. Links are not restricted to * HTTP-based URLs — they can use any URL scheme supported by browsers: * - Sections of a page with document fragments * - Specific text portions with [text fragments](https://developer.mozilla.org/en-US/docs/Web/Text_fragments) * - Pieces of media files with media fragments * - Telephone numbers with `tel:` URLs * - Email addresses with `mailto:` URLs * - While web browsers may not support other URL schemes, websites can with [`registerProtocolHandler()`](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/registerProtocolHandler) * * If not provided or, for security reasons, the URL starts with the * `javascript:` scheme, the link will be disabled. */ href?: string; /** * Where to display the linked URL, as the name for a browsing context (a * tab, window, or [`