@@ -16,6 +16,7 @@ export type SvelteHTMLNode =
1616 | SvelteMustacheTag
1717 | SvelteDebugTag
1818 | SvelteConstTag
19+ | SvelteRenderTag
1920 | SvelteIfBlock
2021 | SvelteElseBlock
2122 | SvelteEachBlock
@@ -24,6 +25,7 @@ export type SvelteHTMLNode =
2425 | SvelteAwaitThenBlock
2526 | SvelteAwaitCatchBlock
2627 | SvelteKeyBlock
28+ | SvelteSnippetBlock
2729 | SvelteAttribute
2830 | SvelteShorthandAttribute
2931 | SvelteSpreadAttribute
@@ -87,7 +89,8 @@ export interface SvelteHTMLElement extends BaseSvelteElement {
8789 | SvelteAwaitPendingBlock
8890 | SvelteAwaitThenBlock
8991 | SvelteAwaitCatchBlock
90- | SvelteKeyBlock ;
92+ | SvelteKeyBlock
93+ | SvelteSnippetBlock ;
9194}
9295/** Node of Svelte component element. */
9396export interface SvelteComponentElement extends BaseSvelteElement {
@@ -106,7 +109,8 @@ export interface SvelteComponentElement extends BaseSvelteElement {
106109 | SvelteAwaitPendingBlock
107110 | SvelteAwaitThenBlock
108111 | SvelteAwaitCatchBlock
109- | SvelteKeyBlock ;
112+ | SvelteKeyBlock
113+ | SvelteSnippetBlock ;
110114}
111115/** Node of Svelte special component element. e.g. `<svelte:window>` */
112116export interface SvelteSpecialElement extends BaseSvelteElement {
@@ -125,7 +129,8 @@ export interface SvelteSpecialElement extends BaseSvelteElement {
125129 | SvelteAwaitPendingBlock
126130 | SvelteAwaitThenBlock
127131 | SvelteAwaitCatchBlock
128- | SvelteKeyBlock ;
132+ | SvelteKeyBlock
133+ | SvelteSnippetBlock ;
129134}
130135/** Node of start tag. */
131136export interface SvelteStartTag extends BaseNode {
@@ -174,10 +179,12 @@ type Child =
174179 | SvelteMustacheTag
175180 | SvelteDebugTag
176181 | SvelteConstTag
182+ | SvelteRenderTag
177183 | SvelteIfBlockAlone
178184 | SvelteEachBlock
179185 | SvelteAwaitBlock
180186 | SvelteKeyBlock
187+ | SvelteSnippetBlock
181188 | SvelteHTMLComment ;
182189
183190/** Node of text. like HTML text. */
@@ -194,7 +201,8 @@ export interface SvelteText extends BaseNode {
194201 | SvelteAwaitPendingBlock
195202 | SvelteAwaitThenBlock
196203 | SvelteAwaitCatchBlock
197- | SvelteKeyBlock ;
204+ | SvelteKeyBlock
205+ | SvelteSnippetBlock ;
198206}
199207/** Node of literal. */
200208export interface SvelteLiteral extends BaseNode {
@@ -219,6 +227,7 @@ interface BaseSvelteMustacheTag extends BaseNode {
219227 | SvelteAwaitThenBlock
220228 | SvelteAwaitCatchBlock
221229 | SvelteKeyBlock
230+ | SvelteSnippetBlock
222231 | SvelteAttribute
223232 | SvelteStyleDirective ;
224233}
@@ -244,6 +253,7 @@ export interface SvelteDebugTag extends BaseNode {
244253 | SvelteAwaitThenBlock
245254 | SvelteAwaitCatchBlock
246255 | SvelteKeyBlock
256+ | SvelteSnippetBlock
247257 | SvelteAttribute ;
248258}
249259/** Node of const tag. e.g. `{@const }` */
@@ -260,8 +270,26 @@ export interface SvelteConstTag extends BaseNode {
260270 | SvelteAwaitThenBlock
261271 | SvelteAwaitCatchBlock
262272 | SvelteKeyBlock
273+ | SvelteSnippetBlock
263274 | SvelteAttribute ;
264275}
276+ /** Node of render tag. e.g. `{@render }` */
277+ export interface SvelteRenderTag extends BaseNode {
278+ type : "SvelteRenderTag" ;
279+ callee : ESTree . Identifier ;
280+ argument : ESTree . Expression | null ;
281+ parent :
282+ | SvelteProgram
283+ | SvelteElement
284+ | SvelteIfBlock
285+ | SvelteElseBlockAlone
286+ | SvelteEachBlock
287+ | SvelteAwaitPendingBlock
288+ | SvelteAwaitThenBlock
289+ | SvelteAwaitCatchBlock
290+ | SvelteKeyBlock
291+ | SvelteSnippetBlock ;
292+ }
265293/** Node of if block. e.g. `{#if}` */
266294export type SvelteIfBlock = SvelteIfBlockAlone | SvelteIfBlockElseIf ;
267295interface BaseSvelteIfBlock extends BaseNode {
@@ -279,7 +307,8 @@ interface BaseSvelteIfBlock extends BaseNode {
279307 | SvelteAwaitPendingBlock
280308 | SvelteAwaitThenBlock
281309 | SvelteAwaitCatchBlock
282- | SvelteKeyBlock ;
310+ | SvelteKeyBlock
311+ | SvelteSnippetBlock ;
283312}
284313/** Node of if block. e.g. `{#if}` */
285314export interface SvelteIfBlockAlone extends BaseSvelteIfBlock {
@@ -328,7 +357,8 @@ export interface SvelteEachBlock extends BaseNode {
328357 | SvelteAwaitPendingBlock
329358 | SvelteAwaitThenBlock
330359 | SvelteAwaitCatchBlock
331- | SvelteKeyBlock ;
360+ | SvelteKeyBlock
361+ | SvelteSnippetBlock ;
332362}
333363/** Node of await block. e.g. `{#await}`, `{#await ... then ... }`, `{#await ... catch ... }` */
334364export type SvelteAwaitBlock =
@@ -351,7 +381,8 @@ interface BaseSvelteAwaitBlock extends BaseNode {
351381 | SvelteAwaitPendingBlock
352382 | SvelteAwaitThenBlock
353383 | SvelteAwaitCatchBlock
354- | SvelteKeyBlock ;
384+ | SvelteKeyBlock
385+ | SvelteSnippetBlock ;
355386}
356387/** Node of await block. e.g. `{#await}` */
357388export interface SvelteAwaitBlockAwaitPending extends BaseSvelteAwaitBlock {
@@ -442,7 +473,26 @@ export interface SvelteKeyBlock extends BaseNode {
442473 | SvelteAwaitPendingBlock
443474 | SvelteAwaitThenBlock
444475 | SvelteAwaitCatchBlock
445- | SvelteKeyBlock ;
476+ | SvelteKeyBlock
477+ | SvelteSnippetBlock ;
478+ }
479+ /** Node of snippet block. e.g. `{#snippet}` */
480+ export interface SvelteSnippetBlock extends BaseNode {
481+ type : "SvelteSnippetBlock" ;
482+ id : ESTree . Identifier ;
483+ context : null | ESTree . Pattern ;
484+ children : Child [ ] ;
485+ parent :
486+ | SvelteProgram
487+ | SvelteElement
488+ | SvelteIfBlock
489+ | SvelteElseBlockAlone
490+ | SvelteEachBlock
491+ | SvelteAwaitPendingBlock
492+ | SvelteAwaitThenBlock
493+ | SvelteAwaitCatchBlock
494+ | SvelteKeyBlock
495+ | SvelteSnippetBlock ;
446496}
447497/** Node of HTML comment. */
448498export interface SvelteHTMLComment extends BaseNode {
@@ -457,7 +507,8 @@ export interface SvelteHTMLComment extends BaseNode {
457507 | SvelteAwaitPendingBlock
458508 | SvelteAwaitThenBlock
459509 | SvelteAwaitCatchBlock
460- | SvelteKeyBlock ;
510+ | SvelteKeyBlock
511+ | SvelteSnippetBlock ;
461512}
462513/** Node of HTML attribute. */
463514export interface SvelteAttribute extends BaseNode {
0 commit comments