There are two ways to use this package.

If you know which specific AST node from Svelte syntax you want to print. For example SV.SnippetBlock.

import type { AST } from "svelte/compiler";
import { printSvelteSnippet } from "svelte-ast-print";

// How you obtain the node is up to you.
// Either by building programmatically or from parsing
let node: AST.SnippetBlock;

const stringified = printSvelteSnippet(node);

If you don't know which AST node from Svelte syntax you want to print.

import type { AST } from "svelte/compiler";
import { print } from "svelte-ast-print";

// How you obtain the node is up to you.
// Either by building programmatically or from parsing
let node: AST.BaseNode;

const stringified = print(node);

Every print* function accepts a second argument for options. Is optional and has some sensible defaults.

Functions

print

References

FixedSvelteOptions → FixedSvelteOptions
printAnimateDirective → printAnimateDirective
printAttribute → printAttribute
printAttributeLike → printAttributeLike
printAwaitBlock → printAwaitBlock
printBindDirective → printBindDirective
printBlock → printBlock
printClassDirective → printClassDirective
printComment → printComment
printComponent → printComponent
printConstTag → printConstTag
printCSS → printCSS
printCSSAtrule → printCSSAtrule
printCSSAttributeSelector → printCSSAttributeSelector
printCSSBlock → printCSSBlock
printCSSClassSelector → printCSSClassSelector
printCSSCombinator → printCSSCombinator
printCSSComplexSelector → printCSSComplexSelector
printCSSDeclaration → printCSSDeclaration
printCSSIdSelector → printCSSIdSelector
printCSSNestingSelector → printCSSNestingSelector
printCSSNth → printCSSNth
printCSSPercentage → printCSSPercentage
printCSSPseudoClassSelector → printCSSPseudoClassSelector
printCSSPseudoElementSelector → printCSSPseudoElementSelector
printCSSRelativeSelector → printCSSRelativeSelector
printCSSRule → printCSSRule
printCSSSelectorList → printCSSSelectorList
printCSSSimpleSelector → printCSSSimpleSelector
printCSSStyleSheet → printCSSStyleSheet
printCSSTypeSelector → printCSSTypeSelector
printDebugTag → printDebugTag
printEachBlock → printEachBlock
printElementLike → printElementLike
printExpressionTag → printExpressionTag
printFragment → printFragment
printHTML → printHTML
printHtmlTag → printHtmlTag
printIfBlock → printIfBlock
printKeyBlock → printKeyBlock
printLetDirective → printLetDirective
printOnDirective → printOnDirective
printRegularElement → printRegularElement
printRenderTag → printRenderTag
printRoot → printRoot
printScript → printScript
printSlotElement → printSlotElement
printSnippetBlock → printSnippetBlock
printSpreadAttribute → printSpreadAttribute
printStyleDirective → printStyleDirective
printSvelteBody → printSvelteBody
printSvelteBoundary → printSvelteBoundary
printSvelteComponent → printSvelteComponent
printSvelteDocument → printSvelteDocument
printSvelteElement → printSvelteElement
printSvelteFragment → printSvelteFragment
printSvelteHead → printSvelteHead
printSvelteOptions → printSvelteOptions
printSvelteSelf → printSvelteSelf
printSvelteWindow → printSvelteWindow
printTag → printTag
printTemplate → printTemplate
printText → printText
printTitleElement → printTitleElement
printTransitionDirective → printTransitionDirective
printUseDirective → printUseDirective