mirror of https://github.com/sveltejs/svelte
				
				
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							246 lines
						
					
					
						
							11 KiB
						
					
					
				
			
		
		
	
	
							246 lines
						
					
					
						
							11 KiB
						
					
					
				/// <reference lib="dom" />
 | 
						|
// This file is deliberately not exposed through the exports map.
 | 
						|
// It's meant to be loaded directly by the Svelte language server
 | 
						|
/* eslint-disable @typescript-eslint/no-empty-interface */
 | 
						|
 | 
						|
import * as svelteElements from './elements.js';
 | 
						|
 | 
						|
/**
 | 
						|
 * @internal do not use
 | 
						|
 */
 | 
						|
type HTMLProps<Property extends string, Override> = Omit<
 | 
						|
	import('./elements.js').SvelteHTMLElements[Property],
 | 
						|
	keyof Override
 | 
						|
> &
 | 
						|
	Override;
 | 
						|
 | 
						|
declare global {
 | 
						|
	/**
 | 
						|
	 * This namespace does not exist in the runtime, it is only used for typings
 | 
						|
	 */
 | 
						|
	namespace svelteHTML {
 | 
						|
		// Every namespace eligible for use needs to implement the following two functions
 | 
						|
		/**
 | 
						|
		 * @internal do not use
 | 
						|
		 */
 | 
						|
		function mapElementTag<K extends keyof ElementTagNameMap>(tag: K): ElementTagNameMap[K];
 | 
						|
		function mapElementTag<K extends keyof SVGElementTagNameMap>(tag: K): SVGElementTagNameMap[K];
 | 
						|
		function mapElementTag(tag: any): any; // needs to be any because used in context of <svelte:element>
 | 
						|
 | 
						|
		/**
 | 
						|
		 * @internal do not use
 | 
						|
		 */
 | 
						|
		function createElement<Elements extends IntrinsicElements, Key extends keyof Elements>(
 | 
						|
			// "undefined | null" because of <svelte:element>
 | 
						|
			element: Key | undefined | null,
 | 
						|
			attrs: string extends Key ? svelteElements.HTMLAttributes<any> : Elements[Key]
 | 
						|
		): Key extends keyof ElementTagNameMap
 | 
						|
			? ElementTagNameMap[Key]
 | 
						|
			: Key extends keyof SVGElementTagNameMap
 | 
						|
				? SVGElementTagNameMap[Key]
 | 
						|
				: any;
 | 
						|
		function createElement<Elements extends IntrinsicElements, Key extends keyof Elements, T>(
 | 
						|
			// "undefined | null" because of <svelte:element>
 | 
						|
			element: Key | undefined | null,
 | 
						|
			attrsEnhancers: T,
 | 
						|
			attrs: (string extends Key ? svelteElements.HTMLAttributes<any> : Elements[Key]) & T
 | 
						|
		): Key extends keyof ElementTagNameMap
 | 
						|
			? ElementTagNameMap[Key]
 | 
						|
			: Key extends keyof SVGElementTagNameMap
 | 
						|
				? SVGElementTagNameMap[Key]
 | 
						|
				: any;
 | 
						|
 | 
						|
		// TODO remove HTMLAttributes/SVGAttributes/IntrinsicElements in Svelte 6
 | 
						|
		// For backwards-compatibility and ease-of-use, in case someone enhanced the typings from import('svelte/elements').HTMLAttributes/SVGAttributes
 | 
						|
		// eslint-disable-next-line @typescript-eslint/no-unused-vars
 | 
						|
		interface HTMLAttributes<T extends EventTarget = any> {}
 | 
						|
		// eslint-disable-next-line @typescript-eslint/no-unused-vars
 | 
						|
		interface SVGAttributes<T extends EventTarget = any> {}
 | 
						|
 | 
						|
		/**
 | 
						|
		 * Avoid using this interface directly. Instead use the `SvelteHTMLElements` interface exported by `svelte/elements`
 | 
						|
		 * This should only be used if you need to extend the interface with custom elements
 | 
						|
		 */
 | 
						|
		interface IntrinsicElements extends svelteElements.SvelteHTMLElements {
 | 
						|
			a: HTMLProps<'a', HTMLAttributes>;
 | 
						|
			abbr: HTMLProps<'abbr', HTMLAttributes>;
 | 
						|
			address: HTMLProps<'address', HTMLAttributes>;
 | 
						|
			area: HTMLProps<'area', HTMLAttributes>;
 | 
						|
			article: HTMLProps<'article', HTMLAttributes>;
 | 
						|
			aside: HTMLProps<'aside', HTMLAttributes>;
 | 
						|
			audio: HTMLProps<'audio', HTMLAttributes>;
 | 
						|
			b: HTMLProps<'b', HTMLAttributes>;
 | 
						|
			base: HTMLProps<'base', HTMLAttributes>;
 | 
						|
			bdi: HTMLProps<'bdi', HTMLAttributes>;
 | 
						|
			bdo: HTMLProps<'bdo', HTMLAttributes>;
 | 
						|
			big: HTMLProps<'big', HTMLAttributes>;
 | 
						|
			blockquote: HTMLProps<'blockquote', HTMLAttributes>;
 | 
						|
			body: HTMLProps<'body', HTMLAttributes>;
 | 
						|
			br: HTMLProps<'br', HTMLAttributes>;
 | 
						|
			button: HTMLProps<'button', HTMLAttributes>;
 | 
						|
			canvas: HTMLProps<'canvas', HTMLAttributes>;
 | 
						|
			caption: HTMLProps<'caption', HTMLAttributes>;
 | 
						|
			cite: HTMLProps<'cite', HTMLAttributes>;
 | 
						|
			code: HTMLProps<'code', HTMLAttributes>;
 | 
						|
			col: HTMLProps<'col', HTMLAttributes>;
 | 
						|
			colgroup: HTMLProps<'colgroup', HTMLAttributes>;
 | 
						|
			data: HTMLProps<'data', HTMLAttributes>;
 | 
						|
			datalist: HTMLProps<'datalist', HTMLAttributes>;
 | 
						|
			dd: HTMLProps<'dd', HTMLAttributes>;
 | 
						|
			del: HTMLProps<'del', HTMLAttributes>;
 | 
						|
			details: HTMLProps<'details', HTMLAttributes>;
 | 
						|
			dfn: HTMLProps<'dfn', HTMLAttributes>;
 | 
						|
			dialog: HTMLProps<'dialog', HTMLAttributes>;
 | 
						|
			div: HTMLProps<'div', HTMLAttributes>;
 | 
						|
			dl: HTMLProps<'dl', HTMLAttributes>;
 | 
						|
			dt: HTMLProps<'dt', HTMLAttributes>;
 | 
						|
			em: HTMLProps<'em', HTMLAttributes>;
 | 
						|
			embed: HTMLProps<'embed', HTMLAttributes>;
 | 
						|
			fieldset: HTMLProps<'fieldset', HTMLAttributes>;
 | 
						|
			figcaption: HTMLProps<'figcaption', HTMLAttributes>;
 | 
						|
			figure: HTMLProps<'figure', HTMLAttributes>;
 | 
						|
			footer: HTMLProps<'footer', HTMLAttributes>;
 | 
						|
			form: HTMLProps<'form', HTMLAttributes>;
 | 
						|
			h1: HTMLProps<'h1', HTMLAttributes>;
 | 
						|
			h2: HTMLProps<'h2', HTMLAttributes>;
 | 
						|
			h3: HTMLProps<'h3', HTMLAttributes>;
 | 
						|
			h4: HTMLProps<'h4', HTMLAttributes>;
 | 
						|
			h5: HTMLProps<'h5', HTMLAttributes>;
 | 
						|
			h6: HTMLProps<'h6', HTMLAttributes>;
 | 
						|
			head: HTMLProps<'head', HTMLAttributes>;
 | 
						|
			header: HTMLProps<'header', HTMLAttributes>;
 | 
						|
			hgroup: HTMLProps<'hgroup', HTMLAttributes>;
 | 
						|
			hr: HTMLProps<'hr', HTMLAttributes>;
 | 
						|
			html: HTMLProps<'html', HTMLAttributes>;
 | 
						|
			i: HTMLProps<'i', HTMLAttributes>;
 | 
						|
			iframe: HTMLProps<'iframe', HTMLAttributes>;
 | 
						|
			img: HTMLProps<'img', HTMLAttributes>;
 | 
						|
			input: HTMLProps<'input', HTMLAttributes>;
 | 
						|
			ins: HTMLProps<'ins', HTMLAttributes>;
 | 
						|
			kbd: HTMLProps<'kbd', HTMLAttributes>;
 | 
						|
			keygen: HTMLProps<'keygen', HTMLAttributes>;
 | 
						|
			label: HTMLProps<'label', HTMLAttributes>;
 | 
						|
			legend: HTMLProps<'legend', HTMLAttributes>;
 | 
						|
			li: HTMLProps<'li', HTMLAttributes>;
 | 
						|
			link: HTMLProps<'link', HTMLAttributes>;
 | 
						|
			main: HTMLProps<'main', HTMLAttributes>;
 | 
						|
			map: HTMLProps<'map', HTMLAttributes>;
 | 
						|
			mark: HTMLProps<'mark', HTMLAttributes>;
 | 
						|
			menu: HTMLProps<'menu', HTMLAttributes>;
 | 
						|
			menuitem: HTMLProps<'menuitem', HTMLAttributes>;
 | 
						|
			meta: HTMLProps<'meta', HTMLAttributes>;
 | 
						|
			meter: HTMLProps<'meter', HTMLAttributes>;
 | 
						|
			nav: HTMLProps<'nav', HTMLAttributes>;
 | 
						|
			noscript: HTMLProps<'noscript', HTMLAttributes>;
 | 
						|
			object: HTMLProps<'object', HTMLAttributes>;
 | 
						|
			ol: HTMLProps<'ol', HTMLAttributes>;
 | 
						|
			optgroup: HTMLProps<'optgroup', HTMLAttributes>;
 | 
						|
			option: HTMLProps<'option', HTMLAttributes>;
 | 
						|
			output: HTMLProps<'output', HTMLAttributes>;
 | 
						|
			p: HTMLProps<'p', HTMLAttributes>;
 | 
						|
			param: HTMLProps<'param', HTMLAttributes>;
 | 
						|
			picture: HTMLProps<'picture', HTMLAttributes>;
 | 
						|
			pre: HTMLProps<'pre', HTMLAttributes>;
 | 
						|
			progress: HTMLProps<'progress', HTMLAttributes>;
 | 
						|
			q: HTMLProps<'q', HTMLAttributes>;
 | 
						|
			rp: HTMLProps<'rp', HTMLAttributes>;
 | 
						|
			rt: HTMLProps<'rt', HTMLAttributes>;
 | 
						|
			ruby: HTMLProps<'ruby', HTMLAttributes>;
 | 
						|
			s: HTMLProps<'s', HTMLAttributes>;
 | 
						|
			samp: HTMLProps<'samp', HTMLAttributes>;
 | 
						|
			slot: HTMLProps<'slot', HTMLAttributes>;
 | 
						|
			script: HTMLProps<'script', HTMLAttributes>;
 | 
						|
			section: HTMLProps<'section', HTMLAttributes>;
 | 
						|
			select: HTMLProps<'select', HTMLAttributes>;
 | 
						|
			small: HTMLProps<'small', HTMLAttributes>;
 | 
						|
			source: HTMLProps<'source', HTMLAttributes>;
 | 
						|
			span: HTMLProps<'span', HTMLAttributes>;
 | 
						|
			strong: HTMLProps<'strong', HTMLAttributes>;
 | 
						|
			style: HTMLProps<'style', HTMLAttributes>;
 | 
						|
			sub: HTMLProps<'sub', HTMLAttributes>;
 | 
						|
			summary: HTMLProps<'summary', HTMLAttributes>;
 | 
						|
			sup: HTMLProps<'sup', HTMLAttributes>;
 | 
						|
			table: HTMLProps<'table', HTMLAttributes>;
 | 
						|
			template: HTMLProps<'template', HTMLAttributes>;
 | 
						|
			tbody: HTMLProps<'tbody', HTMLAttributes>;
 | 
						|
			td: HTMLProps<'td', HTMLAttributes>;
 | 
						|
			textarea: HTMLProps<'textarea', HTMLAttributes>;
 | 
						|
			tfoot: HTMLProps<'tfoot', HTMLAttributes>;
 | 
						|
			th: HTMLProps<'th', HTMLAttributes>;
 | 
						|
			thead: HTMLProps<'thead', HTMLAttributes>;
 | 
						|
			time: HTMLProps<'time', HTMLAttributes>;
 | 
						|
			title: HTMLProps<'title', HTMLAttributes>;
 | 
						|
			tr: HTMLProps<'tr', HTMLAttributes>;
 | 
						|
			track: HTMLProps<'track', HTMLAttributes>;
 | 
						|
			u: HTMLProps<'u', HTMLAttributes>;
 | 
						|
			ul: HTMLProps<'ul', HTMLAttributes>;
 | 
						|
			var: HTMLProps<'var', HTMLAttributes>;
 | 
						|
			video: HTMLProps<'video', HTMLAttributes>;
 | 
						|
			wbr: HTMLProps<'wbr', HTMLAttributes>;
 | 
						|
			webview: HTMLProps<'webview', HTMLAttributes>;
 | 
						|
			// SVG
 | 
						|
			svg: HTMLProps<'svg', SVGAttributes>;
 | 
						|
 | 
						|
			animate: HTMLProps<'animate', SVGAttributes>;
 | 
						|
			animateMotion: HTMLProps<'animateMotion', SVGAttributes>;
 | 
						|
			animateTransform: HTMLProps<'animateTransform', SVGAttributes>;
 | 
						|
			circle: HTMLProps<'circle', SVGAttributes>;
 | 
						|
			clipPath: HTMLProps<'clipPath', SVGAttributes>;
 | 
						|
			defs: HTMLProps<'defs', SVGAttributes>;
 | 
						|
			desc: HTMLProps<'desc', SVGAttributes>;
 | 
						|
			ellipse: HTMLProps<'ellipse', SVGAttributes>;
 | 
						|
			feBlend: HTMLProps<'feBlend', SVGAttributes>;
 | 
						|
			feColorMatrix: HTMLProps<'feColorMatrix', SVGAttributes>;
 | 
						|
			feComponentTransfer: HTMLProps<'feComponentTransfer', SVGAttributes>;
 | 
						|
			feComposite: HTMLProps<'feComposite', SVGAttributes>;
 | 
						|
			feConvolveMatrix: HTMLProps<'feConvolveMatrix', SVGAttributes>;
 | 
						|
			feDiffuseLighting: HTMLProps<'feDiffuseLighting', SVGAttributes>;
 | 
						|
			feDisplacementMap: HTMLProps<'feDisplacementMap', SVGAttributes>;
 | 
						|
			feDistantLight: HTMLProps<'feDistantLight', SVGAttributes>;
 | 
						|
			feDropShadow: HTMLProps<'feDropShadow', SVGAttributes>;
 | 
						|
			feFlood: HTMLProps<'feFlood', SVGAttributes>;
 | 
						|
			feFuncA: HTMLProps<'feFuncA', SVGAttributes>;
 | 
						|
			feFuncB: HTMLProps<'feFuncB', SVGAttributes>;
 | 
						|
			feFuncG: HTMLProps<'feFuncG', SVGAttributes>;
 | 
						|
			feFuncR: HTMLProps<'feFuncR', SVGAttributes>;
 | 
						|
			feGaussianBlur: HTMLProps<'feGaussianBlur', SVGAttributes>;
 | 
						|
			feImage: HTMLProps<'feImage', SVGAttributes>;
 | 
						|
			feMerge: HTMLProps<'feMerge', SVGAttributes>;
 | 
						|
			feMergeNode: HTMLProps<'feMergeNode', SVGAttributes>;
 | 
						|
			feMorphology: HTMLProps<'feMorphology', SVGAttributes>;
 | 
						|
			feOffset: HTMLProps<'feOffset', SVGAttributes>;
 | 
						|
			fePointLight: HTMLProps<'fePointLight', SVGAttributes>;
 | 
						|
			feSpecularLighting: HTMLProps<'feSpecularLighting', SVGAttributes>;
 | 
						|
			feSpotLight: HTMLProps<'feSpotLight', SVGAttributes>;
 | 
						|
			feTile: HTMLProps<'feTile', SVGAttributes>;
 | 
						|
			feTurbulence: HTMLProps<'feTurbulence', SVGAttributes>;
 | 
						|
			filter: HTMLProps<'filter', SVGAttributes>;
 | 
						|
			foreignObject: HTMLProps<'foreignObject', SVGAttributes>;
 | 
						|
			g: HTMLProps<'g', SVGAttributes>;
 | 
						|
			image: HTMLProps<'image', SVGAttributes>;
 | 
						|
			line: HTMLProps<'line', SVGAttributes>;
 | 
						|
			linearGradient: HTMLProps<'linearGradient', SVGAttributes>;
 | 
						|
			marker: HTMLProps<'marker', SVGAttributes>;
 | 
						|
			mask: HTMLProps<'mask', SVGAttributes>;
 | 
						|
			metadata: HTMLProps<'metadata', SVGAttributes>;
 | 
						|
			mpath: HTMLProps<'mpath', SVGAttributes>;
 | 
						|
			path: HTMLProps<'path', SVGAttributes>;
 | 
						|
			pattern: HTMLProps<'pattern', SVGAttributes>;
 | 
						|
			polygon: HTMLProps<'polygon', SVGAttributes>;
 | 
						|
			polyline: HTMLProps<'polyline', SVGAttributes>;
 | 
						|
			radialGradient: HTMLProps<'radialGradient', SVGAttributes>;
 | 
						|
			rect: HTMLProps<'rect', SVGAttributes>;
 | 
						|
			stop: HTMLProps<'stop', SVGAttributes>;
 | 
						|
			switch: HTMLProps<'switch', SVGAttributes>;
 | 
						|
			symbol: HTMLProps<'symbol', SVGAttributes>;
 | 
						|
			text: HTMLProps<'text', SVGAttributes>;
 | 
						|
			textPath: HTMLProps<'textPath', SVGAttributes>;
 | 
						|
			tspan: HTMLProps<'tspan', SVGAttributes>;
 | 
						|
			use: HTMLProps<'use', SVGAttributes>;
 | 
						|
			view: HTMLProps<'view', SVGAttributes>;
 | 
						|
 | 
						|
			[name: string]: { [name: string]: any };
 | 
						|
		}
 | 
						|
	}
 | 
						|
}
 |