[{"data":1,"prerenderedAt":1128},["ShallowReactive",2],{"page:\u002Fdocs\u002F5.x\u002Freference\u002Fkit\u002Fmanifest":3},{"id":4,"title":5,"body":6,"description":1110,"extension":1111,"frontmatter":1112,"heading":5,"meta":1119,"navigation":1121,"order":1115,"path":1122,"seo":1123,"sitemap":1124,"source":1125,"stem":1126,"__hash__":1127},"docs\u002Fdocs\u002F5.x\u002Freference\u002Fkit\u002Fmanifest.md","Extension manifest",{"type":7,"value":8,"toc":1082},"minimark",[9,54,67,423,428,431,763,766,769,864,873,885,1063],[10,11,12,16,17,22,23,22,29,22,35,41,42,46,47,53],"p",{},[13,14,15],"code",{},"kubb-extension.json"," describes an extension package. It sits at the package root and ships on npm. The ",[18,19,21],"a",{"href":20},"\u002Fdocs\u002F5.x\u002Freference\u002Fregistry","Kubb registry",", ",[18,24,26],{"href":25},"\u002Fdocs\u002F5.x\u002Freference\u002Fcommands\u002Fadd",[13,27,28],{},"kubb add",[18,30,32],{"href":31},"\u002Fdocs\u002F5.x\u002Freference\u002Fcommands\u002Finit",[13,33,34],{},"kubb init",[18,36,38],{"href":37},"\u002Fdocs\u002F5.x\u002Freference\u002Fcommands\u002Flist",[13,39,40],{},"kubb list",", and the ",[18,43,45],{"href":44},"\u002Fdocs\u002F5.x\u002Freference\u002Fcommands\u002Fstudio#plugins-in-studio","Studio"," agent read it. Generation does not: at runtime Kubb reads the extension's ",[18,48,50],{"href":49},".\u002Fextensions#meta",[13,51,52],{},"meta",".",[10,55,56,57,62,63,66],{},"The JSON Schema is ",[18,58,60],{"href":59},"https:\u002F\u002Fkubb.dev\u002Fschemas\u002Fkubb-extension.json",[13,61,59],{},". Set it as ",[13,64,65],{},"$schema"," to get validation and completion in your editor.",[68,69,73],"pre",{"language":70,"filename":15,"code":71,"class":72},"json","{\n  \"$schema\": \"https:\u002F\u002Fkubb.dev\u002Fschemas\u002Fkubb-extension.json\",\n  \"kind\": \"plugin\",\n  \"name\": \"plugin-example\",\n  \"export\": \"pluginExample\",\n  \"displayName\": \"Example\",\n  \"description\": \"Writes a comment with the HTTP method and path of every operation.\",\n  \"category\": \"documentation\",\n  \"icon\": { \"light\": \"https:\u002F\u002Fexample.com\u002Ficon.svg\" },\n  \"tags\": [\"comments\", \"operations\"],\n  \"docs\": \"https:\u002F\u002Fgithub.com\u002Facme\u002Fkubb-plugin-example#readme\",\n  \"maintainers\": [{ \"name\": \"Acme\", \"github\": \"acme\" }],\n  \"compatibility\": { \"kubb\": \">=5.8.3\", \"node\": \">=22\" },\n  \"options\": [\n    {\n      \"key\": \"prefix\",\n      \"path\": [\"prefix\"],\n      \"label\": \"Prefix\",\n      \"description\": \"Text written at the start of every comment.\",\n      \"type\": \"text\"\n    }\n  ]\n}","highlights",[13,74,76,85,86,85,105,85,119,85,133,85,147,85,161,85,175,85,189,85,214,85,239,85,253,85,287,85,320,85,331,85,336,85,351,85,368,85,382,85,395,85,407,85,414,85,419],{"class":75},"language-json",[77,78,81],"span",{"class":79,"style":80},"line","display: inline",[77,82,84],{"style":83},"color:#005cc5;--hls-dark:#79b8ff","{","\n",[77,87,88,91,94,98,102],{"class":79,"style":80},[77,89,90],{"style":83},"  ",[77,92,93],{"style":83},"\"$schema\"",[77,95,97],{"style":96},"color:#d73a49;--hls-dark:#f97583",": ",[77,99,101],{"style":100},"color:#032f62;--hls-dark:#9ecbff","\"https:\u002F\u002Fkubb.dev\u002Fschemas\u002Fkubb-extension.json\"",[77,103,104],{"style":96},",",[77,106,107,109,112,114,117],{"class":79,"style":80},[77,108,90],{"style":96},[77,110,111],{"style":83},"\"kind\"",[77,113,97],{"style":96},[77,115,116],{"style":100},"\"plugin\"",[77,118,104],{"style":96},[77,120,121,123,126,128,131],{"class":79,"style":80},[77,122,90],{"style":96},[77,124,125],{"style":83},"\"name\"",[77,127,97],{"style":96},[77,129,130],{"style":100},"\"plugin-example\"",[77,132,104],{"style":96},[77,134,135,137,140,142,145],{"class":79,"style":80},[77,136,90],{"style":96},[77,138,139],{"style":83},"\"export\"",[77,141,97],{"style":96},[77,143,144],{"style":100},"\"pluginExample\"",[77,146,104],{"style":96},[77,148,149,151,154,156,159],{"class":79,"style":80},[77,150,90],{"style":96},[77,152,153],{"style":83},"\"displayName\"",[77,155,97],{"style":96},[77,157,158],{"style":100},"\"Example\"",[77,160,104],{"style":96},[77,162,163,165,168,170,173],{"class":79,"style":80},[77,164,90],{"style":96},[77,166,167],{"style":83},"\"description\"",[77,169,97],{"style":96},[77,171,172],{"style":100},"\"Writes a comment with the HTTP method and path of every operation.\"",[77,174,104],{"style":96},[77,176,177,179,182,184,187],{"class":79,"style":80},[77,178,90],{"style":96},[77,180,181],{"style":83},"\"category\"",[77,183,97],{"style":96},[77,185,186],{"style":100},"\"documentation\"",[77,188,104],{"style":96},[77,190,191,193,196,198,201,204,206,209,212],{"class":79,"style":80},[77,192,90],{"style":96},[77,194,195],{"style":83},"\"icon\"",[77,197,97],{"style":96},[77,199,200],{"style":83},"{ ",[77,202,203],{"style":83},"\"light\"",[77,205,97],{"style":96},[77,207,208],{"style":100},"\"https:\u002F\u002Fexample.com\u002Ficon.svg\" ",[77,210,211],{"style":83},"}",[77,213,104],{"style":96},[77,215,216,218,221,223,226,229,231,234,237],{"class":79,"style":80},[77,217,90],{"style":96},[77,219,220],{"style":83},"\"tags\"",[77,222,97],{"style":96},[77,224,225],{"style":83},"[",[77,227,228],{"style":100},"\"comments\"",[77,230,22],{"style":96},[77,232,233],{"style":100},"\"operations\"",[77,235,236],{"style":83},"]",[77,238,104],{"style":96},[77,240,241,243,246,248,251],{"class":79,"style":80},[77,242,90],{"style":96},[77,244,245],{"style":83},"\"docs\"",[77,247,97],{"style":96},[77,249,250],{"style":100},"\"https:\u002F\u002Fgithub.com\u002Facme\u002Fkubb-plugin-example#readme\"",[77,252,104],{"style":96},[77,254,255,257,260,262,265,267,269,272,274,277,279,282,285],{"class":79,"style":80},[77,256,90],{"style":96},[77,258,259],{"style":83},"\"maintainers\"",[77,261,97],{"style":96},[77,263,264],{"style":83},"[{ ",[77,266,125],{"style":83},[77,268,97],{"style":96},[77,270,271],{"style":100},"\"Acme\"",[77,273,22],{"style":96},[77,275,276],{"style":83},"\"github\"",[77,278,97],{"style":96},[77,280,281],{"style":100},"\"acme\" ",[77,283,284],{"style":83},"}]",[77,286,104],{"style":96},[77,288,289,291,294,296,298,301,303,306,308,311,313,316,318],{"class":79,"style":80},[77,290,90],{"style":96},[77,292,293],{"style":83},"\"compatibility\"",[77,295,97],{"style":96},[77,297,200],{"style":83},[77,299,300],{"style":83},"\"kubb\"",[77,302,97],{"style":96},[77,304,305],{"style":100},"\">=5.8.3\"",[77,307,22],{"style":96},[77,309,310],{"style":83},"\"node\"",[77,312,97],{"style":96},[77,314,315],{"style":100},"\">=22\" ",[77,317,211],{"style":83},[77,319,104],{"style":96},[77,321,322,324,327,329],{"class":79,"style":80},[77,323,90],{"style":96},[77,325,326],{"style":83},"\"options\"",[77,328,97],{"style":96},[77,330,225],{"style":83},[77,332,333],{"class":79,"style":80},[77,334,335],{"style":83},"    {",[77,337,338,341,344,346,349],{"class":79,"style":80},[77,339,340],{"style":83},"      ",[77,342,343],{"style":83},"\"key\"",[77,345,97],{"style":96},[77,347,348],{"style":100},"\"prefix\"",[77,350,104],{"style":96},[77,352,353,355,358,360,362,364,366],{"class":79,"style":80},[77,354,340],{"style":96},[77,356,357],{"style":83},"\"path\"",[77,359,97],{"style":96},[77,361,225],{"style":83},[77,363,348],{"style":100},[77,365,236],{"style":83},[77,367,104],{"style":96},[77,369,370,372,375,377,380],{"class":79,"style":80},[77,371,340],{"style":96},[77,373,374],{"style":83},"\"label\"",[77,376,97],{"style":96},[77,378,379],{"style":100},"\"Prefix\"",[77,381,104],{"style":96},[77,383,384,386,388,390,393],{"class":79,"style":80},[77,385,340],{"style":96},[77,387,167],{"style":83},[77,389,97],{"style":96},[77,391,392],{"style":100},"\"Text written at the start of every comment.\"",[77,394,104],{"style":96},[77,396,397,399,402,404],{"class":79,"style":80},[77,398,340],{"style":96},[77,400,401],{"style":83},"\"type\"",[77,403,97],{"style":96},[77,405,406],{"style":100},"\"text\"",[77,408,409,412],{"class":79,"style":80},[77,410,411],{"style":100},"    ",[77,413,211],{"style":83},[77,415,416],{"class":79,"style":80},[77,417,418],{"style":83},"  ]",[77,420,421],{"class":79,"style":80},[77,422,211],{"style":83},[424,425,427],"h2",{"id":426},"fields","Fields",[10,429,430],{},"Readers ignore unknown top-level keys.",[432,433,434,440,448,453,473,478,515,520,533,539,545,550,553,558,569,574,578,583,587,592,595,600,603,608,625,630,645,651,682,687,722,727,750,755],"field-group",{},[435,436,438],"h3",{"id":437},"schema",[13,439,65],{},[441,442,444,445,447],"field",{"type":443},"string","The JSON Schema URL, ",[13,446,59],{},". Only editors read it.",[435,449,451],{"id":450},"kind",[13,452,450],{},[441,454,457,458,460,461,464,465,468,469,472],{"type":455,":required":456},"'plugin' | 'adapter' | 'parser'","true","What the package extends. ",[13,459,28],{}," adds a ",[13,462,463],{},"plugin"," or ",[13,466,467],{},"parser"," to the config and prints the code for an ",[13,470,471],{},"adapter",". Studio builds a form for every kind: plugins can be switched on and off, while the adapter and the parsers are the ones the config registers.",[435,474,476],{"id":475},"name",[13,477,475],{},[441,479,480,481,484,485,22,488,491,492,495,496,498,499,22,501,22,504,507,508,511,512,53],{"type":443,":required":456},"The extension's ",[13,482,483],{},"meta.name",", such as ",[13,486,487],{},"plugin-zod",[13,489,490],{},"oas",", or ",[13,493,494],{},"typescript",". Kubb skips a manifest whose ",[13,497,475],{}," is not shaped like an npm package name: lowercase letters, digits, ",[13,500,53],{},[13,502,503],{},"_",[13,505,506],{},"~",", and ",[13,509,510],{},"-",", with an optional ",[13,513,514],{},"@scope\u002F",[435,516,518],{"id":517},"export",[13,519,517],{},[441,521,522,523,484,526,529,530,532],{"type":443,":required":456},"The factory export users call in ",[13,524,525],{},"kubb.config.ts",[13,527,528],{},"pluginZod",". It must be a JavaScript identifier. ",[13,531,28],{}," imports this name, and the Studio agent calls it.",[435,534,536],{"id":535},"displayname",[13,537,538],{},"displayName",[441,540,541,542,53],{"type":443,":required":456},"The human-readable name, such as ",[13,543,544],{},"Zod",[435,546,548],{"id":547},"description",[13,549,547],{},[441,551,552],{"type":443,":required":456},"One sentence on what the extension does.",[435,554,556],{"id":555},"category",[13,557,555],{},[441,559,560,561,564,565,53],{"type":443},"Category for filtering, such as ",[13,562,563],{},"validation",". The registry replaces it with the main category the reviewer picks from ",[18,566,568],{"href":567},"\u002Fdocs\u002F5.x\u002Freference\u002Fregistry#categories","the category list",[435,570,572],{"id":571},"icon",[13,573,571],{},[441,575,577],{"type":576},"{ light: string; dark?: string }","Icon URLs for light and dark backgrounds. Both must use HTTPS. Studio shows a generic icon when the manifest has none.",[435,579,581],{"id":580},"media",[13,582,580],{},[441,584,586],{"type":585},"Array\u003Cstring>","Screenshots or videos, as HTTPS URLs.",[435,588,590],{"id":589},"tags",[13,591,589],{},[441,593,594],{"type":585},"Search keywords.",[435,596,598],{"id":597},"docs",[13,599,597],{},[441,601,602],{"type":443},"Documentation URL, using HTTPS.",[435,604,606],{"id":605},"maintainers",[13,607,605],{},[441,609,611,612,484,614,617,618,621,622,53],{"type":610},"Array\u003C{ name: string; github?: string }>","The people who maintain the extension, shown on its kubb.dev page. Each entry needs a ",[13,613,475],{},[13,615,616],{},"Stijn Van Hulle",", and can add a ",[13,619,620],{},"github"," username, such as ",[13,623,624],{},"stijnvanhulle",[435,626,628],{"id":627},"dependencies",[13,629,627],{},[441,631,632,633,636,637,639,640,53],{"type":585},"Names of the extensions that must be in the same config, such as ",[13,634,635],{},"[\"plugin-ts\"]",". kubb.dev lists them on the extension's page, and ",[13,638,34],{}," checks that each one is chosen. Generation does not read them: at runtime Kubb uses the plugin's own ",[18,641,643],{"href":642},".\u002Fextensions#dependencies",[13,644,627],{},[435,646,648],{"id":647},"optionaldependencies",[13,649,650],{},"optionalDependencies",[441,652,653,654,657,658,661,662,665,666,669,670,673,674,678,679,681],{"type":585},"Names of the extensions the plugin uses when they are in the same config, or needs only for some option values. ",[13,655,656],{},"@kubb\u002Fplugin-msw"," lists ",[13,659,660],{},"[\"plugin-faker\"]",", because it needs ",[13,663,664],{},"@kubb\u002Fplugin-faker"," only with ",[13,667,668],{},"parser: 'faker'",". They match the entries marked ",[13,671,672],{},"optional: true"," or picked from the options in the plugin's runtime ",[18,675,676],{"href":642},[13,677,627],{},". kubb.dev lists them below the dependencies. ",[13,680,34],{}," does not require them.",[435,683,685],{"id":684},"compatibility",[13,686,684],{},[441,688,690,705],{"type":689},"{ kubb?: string; node?: string }",[10,691,692,693,696,697,700,701,704],{},"Semver ranges for Kubb (",[13,694,695],{},"@kubb\u002Fcore",") and Node.js, such as ",[13,698,699],{},"{ \"kubb\": \">=5.8.3\", \"node\": \">=22\" }",". Only these two keys are allowed. Any other key makes the manifest invalid, so a typo such as ",[13,702,703],{},"nodejs"," cannot skip a check.",[10,706,707,709,710,713,714,717,718,53],{},[13,708,28],{}," and ",[13,711,712],{},"kubb update"," check the ranges before they install. Kubb checks the same ranges at runtime through ",[13,715,716],{},"meta.compatibility",", so ",[18,719,721],{"href":720},"#import-compatibility-into-meta","import it from the manifest",[435,723,725],{"id":724},"role",[13,726,724],{},[441,728,730,731,734,735,738,739,742,743,746,747,749],{"type":729},"'client' | 'consumer'","Plugins only. ",[13,732,733],{},"client"," provides the HTTP client runtime, like ",[13,736,737],{},"@kubb\u002Fplugin-fetch",". ",[13,740,741],{},"consumer"," generates code that calls a client but ships none, like ",[13,744,745],{},"@kubb\u002Fplugin-react-query",". Studio and ",[13,748,34],{}," use it to require a client plugin next to a consumer.",[435,751,753],{"id":752},"options",[13,754,752],{},[441,756,758,759,762],{"type":757},"Array\u003CExtensionManifestOption>","Form fields Kubb Studio shows for the extension. The ",[18,760,761],{"href":59},"JSON Schema"," describes each field.",[424,764,765],{"id":563},"Validation",[10,767,768],{},"Kubb and the registry check a manifest at different points:",[770,771,772,788],"table",{},[773,774,775],"thead",{},[776,777,778,782,785],"tr",{},[779,780,781],"th",{},"Reader",[779,783,784],{},"Checks",[779,786,787],{},"On failure",[789,790,791,842],"tbody",{},[776,792,793,805,839],{},[794,795,796,22,798,22,800,22,802,804],"td",{},[13,797,28],{},[13,799,34],{},[13,801,712],{},[13,803,40],{},", the Studio agent",[794,806,807,808,810,811,813,814,709,816,818,819,821,822,464,824,738,826,828,829,709,832,835,836,838],{},"The required fields are set and well formed. Each ",[13,809,605],{}," entry has a ",[13,812,475],{},". Each ",[13,815,627],{},[13,817,650],{}," entry is an extension name. ",[13,820,724],{}," is ",[13,823,733],{},[13,825,741],{},[13,827,684],{}," holds only ",[13,830,831],{},"kubb",[13,833,834],{},"node"," string ranges. ",[13,837,752],{}," is an array.",[794,840,841],{},"The manifest is skipped.",[776,843,844,847,861],{},[794,845,846],{},"The registry",[794,848,849,850,853,854,857,858,860],{},"The JSON Schema, unique option keys, ",[13,851,852],{},"choices"," on every ",[13,855,856],{},"select",", and a ",[13,859,856],{}," default that equals one of its choices.",[794,862,863],{},"The review pull request lists the problem, and the weekly bump keeps the previous pin.",[424,865,867,868,870,871],{"id":866},"import-compatibility-into-meta","Import ",[13,869,684],{}," into ",[13,872,52],{},[10,874,875,876,878,879,881,882,884],{},"Keep the ranges in one place. Import only ",[13,877,684],{}," from the manifest into ",[13,880,52],{},", so a bundler leaves the rest of the file, including ",[13,883,752],{},", out of your build:",[68,886,889],{"language":494,"filename":887,"code":888,"class":72},"src\u002Fplugin.ts","import { defineExtension } from 'kubb\u002Fkit'\nimport { compatibility } from '..\u002Fkubb-extension.json'\nimport { version } from '..\u002Fpackage.json'\n\nexport const pluginExampleName = 'plugin-example'\n\nexport const pluginExample = defineExtension({\n  kind: 'plugin',\n  meta: { name: pluginExampleName, version, compatibility },\n  setup(options) {\n    return options\n  },\n})",[13,890,892,85,912,85,928,85,944,85,946,85,963,85,965,85,983,85,996,85,1026,85,1041,85,1050,85,1058],{"class":891},"language-typescript",[77,893,894,897,899,903,906,909],{"class":79,"style":80},[77,895,896],{"style":96},"import ",[77,898,200],{"style":83},[77,900,902],{"style":901},"color:#24292e;--hls-dark:#e1e4e8","defineExtension ",[77,904,905],{"style":83},"} ",[77,907,908],{"style":96},"from ",[77,910,911],{"style":100},"'kubb\u002Fkit'",[77,913,914,916,918,921,923,925],{"class":79,"style":80},[77,915,896],{"style":96},[77,917,200],{"style":83},[77,919,920],{"style":901},"compatibility ",[77,922,905],{"style":83},[77,924,908],{"style":96},[77,926,927],{"style":100},"'..\u002Fkubb-extension.json'",[77,929,930,932,934,937,939,941],{"class":79,"style":80},[77,931,896],{"style":96},[77,933,200],{"style":83},[77,935,936],{"style":901},"version ",[77,938,905],{"style":83},[77,940,908],{"style":96},[77,942,943],{"style":100},"'..\u002Fpackage.json'",[77,945],{"class":79,"style":80},[77,947,948,951,954,957,960],{"class":79,"style":80},[77,949,950],{"style":96},"export ",[77,952,953],{"style":96},"const ",[77,955,956],{"style":901},"pluginExampleName ",[77,958,959],{"style":96},"= ",[77,961,962],{"style":100},"'plugin-example'",[77,964],{"class":79,"style":80},[77,966,967,969,971,974,976,980],{"class":79,"style":80},[77,968,950],{"style":96},[77,970,953],{"style":96},[77,972,973],{"style":901},"pluginExample ",[77,975,959],{"style":96},[77,977,979],{"style":978},"color:#6f42c1;--hls-dark:#b392f0","defineExtension",[77,981,982],{"style":83},"({",[77,984,985,987,989,991,994],{"class":79,"style":80},[77,986,90],{"style":83},[77,988,450],{"style":83},[77,990,97],{"style":96},[77,992,993],{"style":100},"'plugin'",[77,995,104],{"style":96},[77,997,998,1000,1002,1004,1006,1008,1010,1013,1015,1018,1020,1022,1024],{"class":79,"style":80},[77,999,90],{"style":96},[77,1001,52],{"style":83},[77,1003,97],{"style":96},[77,1005,200],{"style":83},[77,1007,475],{"style":83},[77,1009,97],{"style":96},[77,1011,1012],{"style":901},"pluginExampleName",[77,1014,22],{"style":96},[77,1016,1017],{"style":901},"version",[77,1019,22],{"style":96},[77,1021,920],{"style":901},[77,1023,211],{"style":83},[77,1025,104],{"style":96},[77,1027,1028,1030,1033,1036,1038],{"class":79,"style":80},[77,1029,90],{"style":96},[77,1031,1032],{"style":978},"setup",[77,1034,1035],{"style":83},"(",[77,1037,752],{"style":901},[77,1039,1040],{"style":83},") {",[77,1042,1043,1045,1048],{"class":79,"style":80},[77,1044,411],{"style":83},[77,1046,1047],{"style":96},"return ",[77,1049,752],{"style":901},[77,1051,1052,1054,1056],{"class":79,"style":80},[77,1053,90],{"style":901},[77,1055,211],{"style":83},[77,1057,104],{"style":96},[77,1059,1060],{"class":79,"style":80},[77,1061,1062],{"style":83},"})",[10,1064,1065,1066,1068,1069,1071,1072,709,1075,1078,1079,1081],{},"Keep ",[13,1067,475],{}," as a typed constant. A JSON import widens it to ",[13,1070,443],{},". Named imports from JSON need a bundler, such as tsdown, that inlines them. With plain ",[13,1073,1074],{},"tsc",[13,1076,1077],{},"\"module\": \"NodeNext\"",", write the same ranges in ",[13,1080,716],{}," instead.",{"title":1083,"searchDepth":1084,"depth":1084,"links":1085},"",5,[1086,1107,1108],{"id":426,"depth":1087,"text":427,"children":1088},2,[1089,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106],{"id":437,"depth":1090,"text":65},3,{"id":450,"depth":1090,"text":450},{"id":475,"depth":1090,"text":475},{"id":517,"depth":1090,"text":517},{"id":535,"depth":1090,"text":538},{"id":547,"depth":1090,"text":547},{"id":555,"depth":1090,"text":555},{"id":571,"depth":1090,"text":571},{"id":580,"depth":1090,"text":580},{"id":589,"depth":1090,"text":589},{"id":597,"depth":1090,"text":597},{"id":605,"depth":1090,"text":605},{"id":627,"depth":1090,"text":627},{"id":647,"depth":1090,"text":650},{"id":684,"depth":1090,"text":684},{"id":724,"depth":1090,"text":724},{"id":752,"depth":1090,"text":752},{"id":563,"depth":1087,"text":765},{"id":866,"depth":1087,"text":1109},"Import compatibility into meta","Reference for kubb-extension.json, the manifest a Kubb plugin, adapter, or parser ships on npm. Covers every top-level field, the compatibility rule, validation, and importing compatibility into meta.","md",{"layout":1113,"title":5,"description":1110,"outline":1114,"order":1115,"navigation":1116},"doc",[1087,1090],14,{"title":1117,"icon":1118},"Manifest","i-iconoir-page",{"layout":1113,"outline":1120},[1087,1090],{"title":1117,"icon":1118},"\u002Fdocs\u002F5.x\u002Freference\u002Fkit\u002Fmanifest",{"title":5,"description":1110},{"loc":1122},"kubb-labs\u002Fkubb\u002Fdocs\u002F5.x\u002Freference\u002Fkit\u002Fmanifest.md","docs\u002F5.x\u002Freference\u002Fkit\u002Fmanifest","8y_R2LuwMm8zqb-dok5LhpTMgBGHYCMs_DbRyu6uZTs",1793615941567]