import{_ as o}from"./chunks/PageInfo.vue_vue_type_script_setup_true_lang.65c6b98c.js";import{_ as t,o as r,c as p,k as s,a as l,E as c,O as n}from"./chunks/framework.c989bd33.js";import"./chunks/commonjsHelpers.725317a4.js";const h=JSON.parse('{"title":"Includes","description":"Include re-usable TypeScript blocks in your code examples.","frontmatter":{"description":"Include re-usable TypeScript blocks in your code examples.","title":"Includes"},"headers":[],"relativePath":"application/vitepress-plugin-shiki-twoslash/api/includes.md","filePath":"application/vitepress-plugin-shiki-twoslash/api/includes.md","lastUpdated":1726418178000}'),i={name:"application/vitepress-plugin-shiki-twoslash/api/includes.md"};function y(d,e,m,u,b,A){const a=o;return r(),p("div",null,[e[0]||(e[0]=s("h1",{id:"includes",tabindex:"-1"},[l("Includes "),s("a",{class:"header-anchor",href:"#includes","aria-label":'Permalink to "Includes"'},"​")],-1)),c(a,{readTime:"2",words:"431"}),e[1]||(e[1]=n('

As your documentation grows, you may need a way of re-using code blocks to prevent code duplication. Shiki Twoslash provides a simple includes system.

Defining a re-usable block

Re-usable code blocks are defined by the twoslash language, followed by the include keyword and the reference name of your choice.

md
```twoslash include myBlock\ntype SomeString = string\n```
```twoslash include myBlock\ntype SomeString = string\n```

Incremental steps

Shiki Twoslash also provide the ability to define incremental steps through the definition of re-usable blocks. This means whenever a new step is delimited down the code, it will also include previous steps. These are not groups.

md
```twoslash include myBlockWithSteps\ntype SomeString = string\n// - base\ntype SomeUser = { name: string; mail?: SomeUserMail }\ntype SomeUserMail = { content: string; verified: boolean }\n// - afterUserDefinitions\ntype SomeGroup = { name: string; members: SomeUser[] }\n// - afterGroupDefinitions\n```
```twoslash include myBlockWithSteps\ntype SomeString = string\n// - base\ntype SomeUser = { name: string; mail?: SomeUserMail }\ntype SomeUserMail = { content: string; verified: boolean }\n// - afterUserDefinitions\ntype SomeGroup = { name: string; members: SomeUser[] }\n// - afterGroupDefinitions\n```

Including a whole block

To include a re-usable block, add // @include: [block name] in your code block.

twoslash
',11)),e[2]||(e[2]=s("div",{class:"vp-code-group vp-adaptive-theme"},[s("div",{class:"tabs"},[s("input",{type:"radio",name:"group-acG3C",id:"tab-i0bb-gK",checked:"checked"}),s("label",{for:"tab-i0bb-gK"},"output"),s("input",{type:"radio",name:"group-acG3C",id:"tab-kjjx1de"}),s("label",{for:"tab-kjjx1de"},"markdown")]),s("div",{class:"blocks"},[s("div",{class:"language-ts vp-adaptive-theme active line-numbers-mode"},[s("button",{title:"Copy Code",class:"copy"}),s("span",{class:"lang"},"ts"),s("pre",{class:"shiki github-dark-dimmed twoslash lsp",style:{"background-color":"#22272e",color:"#adbac7"}},[s("div",{class:"language-id"},"ts"),s("div",{class:"code-container"},[s("code",null,[s("div",{class:"line"},[s("span",{style:{color:"#F47067"}},"type"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:"type SomeString = string"},"SomeString")]),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},"string")]),s("div",{class:"line"},[s("span",{style:{color:"#F47067"}},"const"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},[s("data-lsp",{lsp:"const a: string"},"a")]),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:"type SomeString = string"},"SomeString")]),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#96D0FF"}},"'string'")])])])]),s("pre",{class:"shiki github-light twoslash lsp",style:{"background-color":"#fff",color:"#24292e"}},[s("div",{class:"language-id"},"ts"),s("div",{class:"code-container"},[s("code",null,[s("div",{class:"line"},[s("span",{style:{color:"#D73A49"}},"type"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},[s("data-lsp",{lsp:"type SomeString = string"},"SomeString")]),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},"string")]),s("div",{class:"line"},[s("span",{style:{color:"#D73A49"}},"const"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},[s("data-lsp",{lsp:"const a: string"},"a")]),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},[s("data-lsp",{lsp:"type SomeString = string"},"SomeString")]),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#032F62"}},"'string'")])])])]),s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br")])]),s("div",{class:"language-md vp-adaptive-theme line-numbers-mode"},[s("button",{title:"Copy Code",class:"copy"}),s("span",{class:"lang"},"md"),s("pre",{class:"shiki github-dark-dimmed vp-code-dark"},[s("code",null,[s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```twoslash include myBlock")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeString = string")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```")]),l(` `),s("span",{class:"line"}),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```ts twoslash")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#768390"}},"// @include: myBlock")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#F47067"}},"const"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},"a"),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},"SomeString"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#96D0FF"}},"'string'")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```")])])]),s("pre",{class:"shiki github-light vp-code-light"},[s("code",null,[s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```twoslash include myBlock")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeString = string")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```")]),l(` `),s("span",{class:"line"}),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```ts twoslash")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#6A737D"}},"// @include: myBlock")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#D73A49"}},"const"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},"a"),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},"SomeString"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#032F62"}},"'string'")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```")])])]),s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br"),s("span",{class:"line-number"},"2"),s("br"),s("span",{class:"line-number"},"3"),s("br"),s("span",{class:"line-number"},"4"),s("br"),s("span",{class:"line-number"},"5"),s("br"),s("span",{class:"line-number"},"6"),s("br"),s("span",{class:"line-number"},"7"),s("br"),s("span",{class:"line-number"},"8"),s("br")])])])],-1)),e[3]||(e[3]=n('

Including a block step

To include a re-usable block at a specific step, add // @include: [block name]-[step name] in your code block.

twoslash
',3)),e[4]||(e[4]=s("div",{class:"vp-code-group vp-adaptive-theme"},[s("div",{class:"tabs"},[s("input",{type:"radio",name:"group-I6Ikt",id:"tab-BEsrkLj",checked:"checked"}),s("label",{for:"tab-BEsrkLj"},"output"),s("input",{type:"radio",name:"group-I6Ikt",id:"tab-XcakgAE"}),s("label",{for:"tab-XcakgAE"},"markdown")]),s("div",{class:"blocks"},[s("div",{class:"language-ts vp-adaptive-theme active line-numbers-mode"},[s("button",{title:"Copy Code",class:"copy"}),s("span",{class:"lang"},"ts"),s("pre",{class:"shiki github-dark-dimmed twoslash lsp",style:{"background-color":"#22272e",color:"#adbac7"}},[s("div",{class:"language-id"},"ts"),s("div",{class:"code-container"},[s("code",null,[s("div",{class:"line"},[s("span",{style:{color:"#F47067"}},"type"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:"type SomeString = string"},"SomeString")]),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},"string")]),s("div",{class:"line"},[s("span",{style:{color:"#F47067"}},"type"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:`type SomeUser = { name: string; mail?: SomeUserMail; }`},"SomeUser")]),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}}," { "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:"(property) name: string"},"name")]),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},"string"),s("span",{style:{color:"#ADBAC7"}},"; "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:"(property) mail?: SomeUserMail | undefined"},"mail")]),s("span",{style:{color:"#F47067"}},"?:"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:`type SomeUserMail = { content: string; verified: boolean; }`},"SomeUserMail")]),s("span",{style:{color:"#ADBAC7"}}," }")]),s("div",{class:"line"},[s("span",{style:{color:"#F47067"}},"type"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:`type SomeUserMail = { content: string; verified: boolean; }`},"SomeUserMail")]),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}}," { "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:"(property) content: string"},"content")]),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},"string"),s("span",{style:{color:"#ADBAC7"}},"; "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:"(property) verified: boolean"},"verified")]),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},"boolean"),s("span",{style:{color:"#ADBAC7"}}," }")]),s("div",{class:"line"},[s("span",{style:{color:"#F47067"}},"const"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},[s("data-lsp",{lsp:"const mail: SomeUserMail"},"mail")]),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:`type SomeUserMail = { content: string; verified: boolean; }`},"SomeUserMail")]),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}},[l(" { "),s("data-lsp",{lsp:"(property) content: string"},"content"),l(": ")]),s("span",{style:{color:"#96D0FF"}},"'some-email'"),s("span",{style:{color:"#ADBAC7"}},[l(", "),s("data-lsp",{lsp:"(property) verified: boolean"},"verified"),l(": ")]),s("span",{style:{color:"#6CB6FF"}},"true"),s("span",{style:{color:"#ADBAC7"}}," }")])])])]),s("pre",{class:"shiki github-light twoslash lsp",style:{"background-color":"#fff",color:"#24292e"}},[s("div",{class:"language-id"},"ts"),s("div",{class:"code-container"},[s("code",null,[s("div",{class:"line"},[s("span",{style:{color:"#D73A49"}},"type"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},[s("data-lsp",{lsp:"type SomeString = string"},"SomeString")]),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},"string")]),s("div",{class:"line"},[s("span",{style:{color:"#D73A49"}},"type"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},[s("data-lsp",{lsp:`type SomeUser = { name: string; mail?: SomeUserMail; }`},"SomeUser")]),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}}," { "),s("span",{style:{color:"#E36209"}},[s("data-lsp",{lsp:"(property) name: string"},"name")]),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},"string"),s("span",{style:{color:"#24292E"}},"; "),s("span",{style:{color:"#E36209"}},[s("data-lsp",{lsp:"(property) mail?: SomeUserMail | undefined"},"mail")]),s("span",{style:{color:"#D73A49"}},"?:"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},[s("data-lsp",{lsp:`type SomeUserMail = { content: string; verified: boolean; }`},"SomeUserMail")]),s("span",{style:{color:"#24292E"}}," }")]),s("div",{class:"line"},[s("span",{style:{color:"#D73A49"}},"type"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},[s("data-lsp",{lsp:`type SomeUserMail = { content: string; verified: boolean; }`},"SomeUserMail")]),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}}," { "),s("span",{style:{color:"#E36209"}},[s("data-lsp",{lsp:"(property) content: string"},"content")]),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},"string"),s("span",{style:{color:"#24292E"}},"; "),s("span",{style:{color:"#E36209"}},[s("data-lsp",{lsp:"(property) verified: boolean"},"verified")]),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},"boolean"),s("span",{style:{color:"#24292E"}}," }")]),s("div",{class:"line"},[s("span",{style:{color:"#D73A49"}},"const"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},[s("data-lsp",{lsp:"const mail: SomeUserMail"},"mail")]),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},[s("data-lsp",{lsp:`type SomeUserMail = { content: string; verified: boolean; }`},"SomeUserMail")]),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}},[l(" { "),s("data-lsp",{lsp:"(property) content: string"},"content"),l(": ")]),s("span",{style:{color:"#032F62"}},"'some-email'"),s("span",{style:{color:"#24292E"}},[l(", "),s("data-lsp",{lsp:"(property) verified: boolean"},"verified"),l(": ")]),s("span",{style:{color:"#005CC5"}},"true"),s("span",{style:{color:"#24292E"}}," }")])])])]),s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br")])]),s("div",{class:"language-md vp-adaptive-theme line-numbers-mode"},[s("button",{title:"Copy Code",class:"copy"}),s("span",{class:"lang"},"md"),s("pre",{class:"shiki github-dark-dimmed vp-code-dark"},[s("code",null,[s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```twoslash include myBlockWithSteps")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeString = string")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"// - base")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeUser = { name: string; mail?: SomeUserMail }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeUserMail = { content: string; verified: boolean }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"// - afterUserDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeGroup = { name: string; members: SomeUser[] }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"// - afterGroupDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```")]),l(` `),s("span",{class:"line"}),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```ts twoslash")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#768390"}},"// @include: myBlockWithSteps-afterUserDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#F47067"}},"const"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},"mail"),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},"SomeUserMail"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}}," { content: "),s("span",{style:{color:"#96D0FF"}},"'some-email'"),s("span",{style:{color:"#ADBAC7"}},", verified: "),s("span",{style:{color:"#6CB6FF"}},"true"),s("span",{style:{color:"#ADBAC7"}}," }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```")])])]),s("pre",{class:"shiki github-light vp-code-light"},[s("code",null,[s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```twoslash include myBlockWithSteps")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeString = string")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"// - base")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeUser = { name: string; mail?: SomeUserMail }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeUserMail = { content: string; verified: boolean }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"// - afterUserDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeGroup = { name: string; members: SomeUser[] }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"// - afterGroupDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```")]),l(` `),s("span",{class:"line"}),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```ts twoslash")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#6A737D"}},"// @include: myBlockWithSteps-afterUserDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#D73A49"}},"const"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},"mail"),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},"SomeUserMail"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}}," { content: "),s("span",{style:{color:"#032F62"}},"'some-email'"),s("span",{style:{color:"#24292E"}},", verified: "),s("span",{style:{color:"#005CC5"}},"true"),s("span",{style:{color:"#24292E"}}," }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```")])])]),s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br"),s("span",{class:"line-number"},"2"),s("br"),s("span",{class:"line-number"},"3"),s("br"),s("span",{class:"line-number"},"4"),s("br"),s("span",{class:"line-number"},"5"),s("br"),s("span",{class:"line-number"},"6"),s("br"),s("span",{class:"line-number"},"7"),s("br"),s("span",{class:"line-number"},"8"),s("br"),s("span",{class:"line-number"},"9"),s("br"),s("span",{class:"line-number"},"10"),s("br"),s("span",{class:"line-number"},"11"),s("br"),s("span",{class:"line-number"},"12"),s("br"),s("span",{class:"line-number"},"13"),s("br"),s("span",{class:"line-number"},"14"),s("br")])])])],-1)),e[5]||(e[5]=s("h2",{id:"hiding-re-used-code",tabindex:"-1"},[l("Hiding re-used code "),s("a",{class:"header-anchor",href:"#hiding-re-used-code","aria-label":'Permalink to "Hiding re-used code"'},"​")],-1)),e[6]||(e[6]=s("p",null,[l("Re-using a lot of TypeScript code can easily bloat your documentation and obstruct the main point of your code block. You can hide re-used code to keep your code blocks clean and concise by "),s("a",{href:"./cutting"},"cutting"),l(" right after the "),s("code",null,"@include"),l(" statement.")],-1)),e[7]||(e[7]=s("div",{class:"vp-code-group vp-adaptive-theme"},[s("div",{class:"tabs"},[s("input",{type:"radio",name:"group-gBYHR",id:"tab-GXBRv6w",checked:"checked"}),s("label",{for:"tab-GXBRv6w"},"output"),s("input",{type:"radio",name:"group-gBYHR",id:"tab-9K92Znv"}),s("label",{for:"tab-9K92Znv"},"markdown")]),s("div",{class:"blocks"},[s("div",{class:"language-ts vp-adaptive-theme active line-numbers-mode"},[s("button",{title:"Copy Code",class:"copy"}),s("span",{class:"lang"},"ts"),s("pre",{class:"shiki github-dark-dimmed twoslash lsp",style:{"background-color":"#22272e",color:"#adbac7"}},[s("div",{class:"language-id"},"ts"),s("div",{class:"code-container"},[s("code",null,[s("div",{class:"line"},[s("span",{style:{color:"#F47067"}},"const"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},[s("data-lsp",{lsp:"const mail: SomeUserMail"},"mail")]),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},[s("data-lsp",{lsp:`type SomeUserMail = { content: string; verified: boolean; }`},"SomeUserMail")]),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}},[l(" { "),s("data-lsp",{lsp:"(property) content: string"},"content"),l(": ")]),s("span",{style:{color:"#96D0FF"}},"'some-email'"),s("span",{style:{color:"#ADBAC7"}},[l(", "),s("data-lsp",{lsp:"(property) verified: boolean"},"verified"),l(": ")]),s("span",{style:{color:"#6CB6FF"}},"true"),s("span",{style:{color:"#ADBAC7"}}," }")])])])]),s("pre",{class:"shiki github-light twoslash lsp",style:{"background-color":"#fff",color:"#24292e"}},[s("div",{class:"language-id"},"ts"),s("div",{class:"code-container"},[s("code",null,[s("div",{class:"line"},[s("span",{style:{color:"#D73A49"}},"const"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},[s("data-lsp",{lsp:"const mail: SomeUserMail"},"mail")]),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},[s("data-lsp",{lsp:`type SomeUserMail = { content: string; verified: boolean; }`},"SomeUserMail")]),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}},[l(" { "),s("data-lsp",{lsp:"(property) content: string"},"content"),l(": ")]),s("span",{style:{color:"#032F62"}},"'some-email'"),s("span",{style:{color:"#24292E"}},[l(", "),s("data-lsp",{lsp:"(property) verified: boolean"},"verified"),l(": ")]),s("span",{style:{color:"#005CC5"}},"true"),s("span",{style:{color:"#24292E"}}," }")])])])]),s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br")])]),s("div",{class:"language-md vp-adaptive-theme line-numbers-mode"},[s("button",{title:"Copy Code",class:"copy"}),s("span",{class:"lang"},"md"),s("pre",{class:"shiki github-dark-dimmed vp-code-dark"},[s("code",null,[s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```twoslash include myBlockWithSteps")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeString = string")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"// - base")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeUser = { name: string; mail?: SomeUserMail }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeUserMail = { content: string; verified: boolean }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"// - afterUserDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"type SomeGroup = { name: string; members: SomeUser[] }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"// - afterGroupDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```")]),l(` `),s("span",{class:"line"}),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```ts twoslash")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#768390"}},"// @include: myBlockWithSteps-afterUserDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#768390"}},"// ---cut---")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#F47067"}},"const"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#6CB6FF"}},"mail"),s("span",{style:{color:"#F47067"}},":"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F69D50"}},"SomeUserMail"),s("span",{style:{color:"#ADBAC7"}}," "),s("span",{style:{color:"#F47067"}},"="),s("span",{style:{color:"#ADBAC7"}}," { content: "),s("span",{style:{color:"#96D0FF"}},"'some-email'"),s("span",{style:{color:"#ADBAC7"}},", verified: "),s("span",{style:{color:"#6CB6FF"}},"true"),s("span",{style:{color:"#ADBAC7"}}," }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#ADBAC7"}},"```")])])]),s("pre",{class:"shiki github-light vp-code-light"},[s("code",null,[s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```twoslash include myBlockWithSteps")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeString = string")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"// - base")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeUser = { name: string; mail?: SomeUserMail }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeUserMail = { content: string; verified: boolean }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"// - afterUserDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"type SomeGroup = { name: string; members: SomeUser[] }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"// - afterGroupDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```")]),l(` `),s("span",{class:"line"}),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```ts twoslash")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#6A737D"}},"// @include: myBlockWithSteps-afterUserDefinitions")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#6A737D"}},"// ---cut---")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#D73A49"}},"const"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#005CC5"}},"mail"),s("span",{style:{color:"#D73A49"}},":"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#6F42C1"}},"SomeUserMail"),s("span",{style:{color:"#24292E"}}," "),s("span",{style:{color:"#D73A49"}},"="),s("span",{style:{color:"#24292E"}}," { content: "),s("span",{style:{color:"#032F62"}},"'some-email'"),s("span",{style:{color:"#24292E"}},", verified: "),s("span",{style:{color:"#005CC5"}},"true"),s("span",{style:{color:"#24292E"}}," }")]),l(` `),s("span",{class:"line"},[s("span",{style:{color:"#24292E"}},"```")])])]),s("div",{class:"line-numbers-wrapper","aria-hidden":"true"},[s("span",{class:"line-number"},"1"),s("br"),s("span",{class:"line-number"},"2"),s("br"),s("span",{class:"line-number"},"3"),s("br"),s("span",{class:"line-number"},"4"),s("br"),s("span",{class:"line-number"},"5"),s("br"),s("span",{class:"line-number"},"6"),s("br"),s("span",{class:"line-number"},"7"),s("br"),s("span",{class:"line-number"},"8"),s("br"),s("span",{class:"line-number"},"9"),s("br"),s("span",{class:"line-number"},"10"),s("br"),s("span",{class:"line-number"},"11"),s("br"),s("span",{class:"line-number"},"12"),s("br"),s("span",{class:"line-number"},"13"),s("br"),s("span",{class:"line-number"},"14"),s("br"),s("span",{class:"line-number"},"15"),s("br")])])])],-1))])}const v=t(i,[["render",y]]);export{h as __pageData,v as default};