import TinyHtmlTemplate from './TinyHtmlTemplate.mjs'; /** * TinyHtmlLink is a lightweight helper class for managing elements. * It provides a strict API for configuring preload, stylesheets, icons, * and other external resource references. * * @example * const link = new TinyHtmlLink({ * rel: 'stylesheet', * href: '/styles/main.css', * media: 'screen', * blocking: 'render', * }); * * document.head.appendChild(link.el); * * @extends TinyHtmlTemplate */ declare class TinyHtmlLink extends TinyHtmlTemplate { /** * Creates a new TinyHtmlLink instance. * @param {Object} config - Configuration object. * @param {string} [config.as] - Type of content being loaded (valid only for preload/modulepreload). * @param {'render'} [config.blocking] - Blocking behavior (only "render"). * @param {'anonymous'|'use-credentials'} [config.crossorigin] - CORS mode ("anonymous" or "use-credentials"). * @param {boolean} [config.disabled=false] - Whether the stylesheet is disabled (rel=stylesheet only). * @param {'auto'|'high'|'low'} [config.fetchpriority="auto"] - Fetch priority ("high", "low", "auto"). * @param {string} [config.href] - URL of the linked resource. * @param {string} [config.hreflang] - Language of the linked resource (RFC 5646). * @param {string} [config.imagesizes] - Sizes attribute for preload images. * @param {string} [config.imagesrcset] - Srcset attribute for preload images. * @param {string} [config.integrity] - Subresource Integrity metadata. * @param {string} [config.media="all"] - Media query (mainly for stylesheets). * @param {string} [config.referrerpolicy] - Referrer policy ("no-referrer", etc.). * @param {string} [config.rel] - Relationship (stylesheet, preload, icon, etc.). * @param {string} [config.sizes] - Icon sizes. * @param {string} [config.title] - Title (alternate stylesheet sets). * @param {string} [config.type] - MIME type of the resource (e.g., "text/css"). * @param {string|string[]|Set} [config.tags=[]] - Initial CSS classes. * @param {string} [config.mainClass=""] - Main CSS class. */ constructor({ as, blocking, crossorigin, disabled, fetchpriority, href, hreflang, imagesizes, imagesrcset, integrity, media, referrerpolicy, rel, sizes, title, type, tags, mainClass, }?: { as?: string; blocking?: 'render'; crossorigin?: 'anonymous' | 'use-credentials'; disabled?: boolean; fetchpriority?: 'auto' | 'high' | 'low'; href?: string; hreflang?: string; imagesizes?: string; imagesrcset?: string; integrity?: string; media?: string; referrerpolicy?: string; rel?: string; sizes?: string; title?: string; type?: string; tags?: string | string[] | Set; mainClass?: string; }); /** @param {string} rel */ set rel(rel: string); /** @returns {string|null} */ get rel(): string | null; /** @param {string} as */ set as(as: string); /** @returns {string|null} */ get as(): string | null; /** @param {'render'} blocking */ set blocking(blocking: 'render'); /** @returns {string|null} */ get blocking(): string | null; /** @param {'anonymous'|'use-credentials'} crossorigin */ set crossorigin(crossorigin: 'anonymous' | 'use-credentials'); /** @returns {string|null} */ get crossorigin(): string | null; /** @param {boolean} disabled */ set disabled(disabled: boolean); /** @returns {boolean} */ get disabled(): boolean; /** @param {'auto'|'high'|'low'} fetchpriority */ set fetchpriority(fetchpriority: 'auto' | 'high' | 'low'); /** @returns {string|null} */ get fetchpriority(): string | null; /** @param {string} href */ set href(href: string); /** @returns {string|null} */ get href(): string | null; /** @param {string} hreflang */ set hreflang(hreflang: string); /** @returns {string|null} */ get hreflang(): string | null; /** @param {string} imagesizes */ set imagesizes(imagesizes: string); /** @returns {string|null} */ get imagesizes(): string | null; /** @param {string} imagesrcset */ set imagesrcset(imagesrcset: string); /** @returns {string|null} */ get imagesrcset(): string | null; /** @param {string} integrity */ set integrity(integrity: string); /** @returns {string|null} */ get integrity(): string | null; /** @param {string} media */ set media(media: string); /** @returns {string|null} */ get media(): string | null; /** @param {string} referrerpolicy */ set referrerpolicy(referrerpolicy: string); /** @returns {string|null} */ get referrerpolicy(): string | null; /** @param {string} sizes */ set sizes(sizes: string); /** @returns {string|null} */ get sizes(): string | null; /** @param {string} title */ set title(title: string); /** @returns {string|null} */ get title(): string | null; /** @param {string} type */ set type(type: string); /** @returns {string|null} */ get type(): string | null; } export default TinyHtmlLink; //# sourceMappingURL=TinyHtmlLink.d.mts.map