Home / Class/ svelteHTML Class — svelte Architecture

svelteHTML Class — svelte Architecture

Architecture documentation for the svelteHTML class in svelte-html.d.ts from the svelte codebase.

Entity Profile

Dependency Diagram

graph TD
  906fea88_bf9d_f109_883f_58870184a87c["svelteHTML"]
  4db9d6b2_d27d_5e64_13ca_7ed2d60439bd["svelte-html.d.ts"]
  906fea88_bf9d_f109_883f_58870184a87c -->|defined in| 4db9d6b2_d27d_5e64_13ca_7ed2d60439bd
  39951739_acad_4461_9902_237694c4247e["mapElementTag()"]
  906fea88_bf9d_f109_883f_58870184a87c -->|method| 39951739_acad_4461_9902_237694c4247e
  33afb228_cf98_5269_8db9_00ec4a9a6ada["createElement()"]
  906fea88_bf9d_f109_883f_58870184a87c -->|method| 33afb228_cf98_5269_8db9_00ec4a9a6ada

Relationship Graph

Source Code

packages/svelte/svelte-html.d.ts lines 17–245

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>;

Domain

Frequently Asked Questions

What is the svelteHTML class?
svelteHTML is a class in the svelte codebase, defined in packages/svelte/svelte-html.d.ts.
Where is svelteHTML defined?
svelteHTML is defined in packages/svelte/svelte-html.d.ts at line 17.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free