[{"data":1,"prerenderedAt":2455},["ShallowReactive",2],{"page:\u002Fdocs\u002F5.x\u002Freference\u002Fconfiguration":3},{"id":4,"title":5,"body":6,"description":2438,"extension":2439,"frontmatter":2440,"heading":5,"meta":2446,"navigation":2448,"order":2443,"path":2449,"seo":2450,"sitemap":2451,"source":2452,"stem":2453,"__hash__":2454},"docs\u002Fdocs\u002F5.x\u002Freference\u002Fconfiguration.md","Configuration",{"type":7,"value":8,"toc":2404},"minimark",[9,21,134,139,144,150,154,165,276,279,393,397,400,610,613,617,637,779,790,794,2400],[10,11,12,16,17,20],"p",{},[13,14,15],"code",{},"kubb.config.ts"," drives a Kubb run. The file default-exports a ",[13,18,19],{},"defineConfig"," call. Pass it an object, a function that returns one, or an array of configs.",[22,23,27],"pre",{"language":24,"filename":15,"code":25,"class":26},"typescript","import { defineConfig } from 'kubb\u002Fconfig'\n\nexport default defineConfig({\n  name: 'petStore',\n  input: '.\u002FpetStore.yaml',\n  output: { path: '.\u002Fsrc\u002Fgen' },\n})","highlights",[13,28,30,57,58,57,60,57,74,57,91,57,105,57,129],{"class":29},"language-typescript",[31,32,35,39,43,47,50,53],"span",{"class":33,"style":34},"line","display: inline",[31,36,38],{"style":37},"color:#d73a49;--hls-dark:#f97583","import ",[31,40,42],{"style":41},"color:#005cc5;--hls-dark:#79b8ff","{ ",[31,44,46],{"style":45},"color:#24292e;--hls-dark:#e1e4e8","defineConfig ",[31,48,49],{"style":41},"} ",[31,51,52],{"style":37},"from ",[31,54,56],{"style":55},"color:#032f62;--hls-dark:#9ecbff","'kubb\u002Fconfig'","\n",[31,59],{"class":33,"style":34},[31,61,62,65,68,71],{"class":33,"style":34},[31,63,64],{"style":37},"export ",[31,66,67],{"style":37},"default ",[31,69,19],{"style":70},"color:#6f42c1;--hls-dark:#b392f0",[31,72,73],{"style":41},"({",[31,75,76,79,82,85,88],{"class":33,"style":34},[31,77,78],{"style":41},"  ",[31,80,81],{"style":41},"name",[31,83,84],{"style":37},": ",[31,86,87],{"style":55},"'petStore'",[31,89,90],{"style":37},",",[31,92,93,95,98,100,103],{"class":33,"style":34},[31,94,78],{"style":37},[31,96,97],{"style":41},"input",[31,99,84],{"style":37},[31,101,102],{"style":55},"'.\u002FpetStore.yaml'",[31,104,90],{"style":37},[31,106,107,109,112,114,116,119,121,124,127],{"class":33,"style":34},[31,108,78],{"style":37},[31,110,111],{"style":41},"output",[31,113,84],{"style":37},[31,115,42],{"style":41},[31,117,118],{"style":41},"path",[31,120,84],{"style":37},[31,122,123],{"style":55},"'.\u002Fsrc\u002Fgen' ",[31,125,126],{"style":41},"}",[31,128,90],{"style":37},[31,130,131],{"class":33,"style":34},[31,132,133],{"style":41},"})",[135,136,138],"h2",{"id":137},"config-formats","Config formats",[140,141,143],"h3",{"id":142},"single-config-object","Single config object",[10,145,146,147,149],{},"Export an object as in the example above. ",[13,148,19],{}," also accepts a Promise of a config.",[140,151,153],{"id":152},"config-function","Config function",[10,155,156,157,160,161,164],{},"Pass a function when the config depends on the run context, such as ",[13,158,159],{},"watch"," or ",[13,162,163],{},"logLevel",":",[22,166,168],{"language":24,"filename":15,"code":167,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\n\nexport default defineConfig(({ watch, logLevel }) => ({\n  name: 'petStore',\n  input: '.\u002FpetStore.yaml',\n  output: { path: '.\u002Fsrc\u002Fgen', clean: !watch },\n}))",[13,169,170,57,184,57,186,57,213,57,225,57,237,57,271],{"class":29},[31,171,172,174,176,178,180,182],{"class":33,"style":34},[31,173,38],{"style":37},[31,175,42],{"style":41},[31,177,46],{"style":45},[31,179,49],{"style":41},[31,181,52],{"style":37},[31,183,56],{"style":55},[31,185],{"class":33,"style":34},[31,187,188,190,192,194,197,199,202,205,208,211],{"class":33,"style":34},[31,189,64],{"style":37},[31,191,67],{"style":37},[31,193,19],{"style":70},[31,195,196],{"style":41},"(({ ",[31,198,159],{"style":45},[31,200,201],{"style":37},", ",[31,203,204],{"style":45},"logLevel ",[31,206,207],{"style":41},"}) ",[31,209,210],{"style":37},"=> ",[31,212,73],{"style":41},[31,214,215,217,219,221,223],{"class":33,"style":34},[31,216,78],{"style":41},[31,218,81],{"style":41},[31,220,84],{"style":37},[31,222,87],{"style":55},[31,224,90],{"style":37},[31,226,227,229,231,233,235],{"class":33,"style":34},[31,228,78],{"style":37},[31,230,97],{"style":41},[31,232,84],{"style":37},[31,234,102],{"style":55},[31,236,90],{"style":37},[31,238,239,241,243,245,247,249,251,254,256,259,261,264,267,269],{"class":33,"style":34},[31,240,78],{"style":37},[31,242,111],{"style":41},[31,244,84],{"style":37},[31,246,42],{"style":41},[31,248,118],{"style":41},[31,250,84],{"style":37},[31,252,253],{"style":55},"'.\u002Fsrc\u002Fgen'",[31,255,201],{"style":37},[31,257,258],{"style":41},"clean",[31,260,84],{"style":37},[31,262,263],{"style":37},"!",[31,265,266],{"style":45},"watch ",[31,268,126],{"style":41},[31,270,90],{"style":37},[31,272,273],{"class":33,"style":34},[31,274,275],{"style":41},"}))",[10,277,278],{},"The function receives this context:",[280,281,282,299],"table",{},[283,284,285],"thead",{},[286,287,288,292,296],"tr",{},[289,290],"th",{"style":291},"text-align:right",[289,293,295],{"style":294},"text-align:left","Type",[289,297,298],{"style":294},"Description",[300,301,302,325,342,356,370],"tbody",{},[286,303,304,309,314],{},[305,306,307],"td",{"style":291},[13,308,97],{},[305,310,311],{"style":294},[13,312,313],{},"string",[305,315,316,317,320,321,324],{"style":294},"Positional input from ",[13,318,319],{},"kubb generate \u003Cinput>",". Overrides ",[13,322,323],{},"config.input"," when set.",[286,326,327,331,336],{},[305,328,329],{"style":291},[13,330,159],{},[305,332,333],{"style":294},[13,334,335],{},"boolean",[305,337,338,341],{"style":294},[13,339,340],{},"true"," in watch mode.",[286,343,344,348,353],{},[305,345,346],{"style":291},[13,347,163],{},[305,349,350],{"style":294},[13,351,352],{},"'silent' | 'info' | 'verbose'",[305,354,355],{"style":294},"Current log level.",[286,357,358,363,367],{},[305,359,360],{"style":291},[13,361,362],{},"config",[305,364,365],{"style":294},[13,366,313],{},[305,368,369],{"style":294},"Path to the config file in use.",[286,371,372,377,382],{},[305,373,374],{"style":291},[13,375,376],{},"reporters",[305,378,379],{"style":294},[13,380,381],{},"Array\u003CReporterName>",[305,383,384,385,388,389,392],{"style":294},"Reporters selected via ",[13,386,387],{},"--reporter",", overriding ",[13,390,391],{},"config.reporters",".",[140,394,396],{"id":395},"multiple-configurations-array","Multiple configurations (array)",[10,398,399],{},"Pass an array to generate from several specs in one command:",[22,401,403],{"language":24,"filename":15,"code":402,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\nimport { pluginTs } from '@kubb\u002Fplugin-ts'\n\nexport default defineConfig([\n  {\n    name: 'petStore',\n    input: '.\u002FpetStore.yaml',\n    output: { path: '.\u002Fsrc\u002Fgen\u002FpetStore' },\n    plugins: [pluginTs()],\n  },\n  {\n    name: 'stripe',\n    input: '.\u002Fstripe.yaml',\n    output: { path: '.\u002Fsrc\u002Fgen\u002Fstripe' },\n    plugins: [pluginTs()],\n  },\n])",[13,404,405,57,419,57,435,57,437,57,448,57,453,57,466,57,478,57,499,57,519,57,527,57,534,57,547,57,560,57,581,57,597,57,605],{"class":29},[31,406,407,409,411,413,415,417],{"class":33,"style":34},[31,408,38],{"style":37},[31,410,42],{"style":41},[31,412,46],{"style":45},[31,414,49],{"style":41},[31,416,52],{"style":37},[31,418,56],{"style":55},[31,420,421,423,425,428,430,432],{"class":33,"style":34},[31,422,38],{"style":37},[31,424,42],{"style":41},[31,426,427],{"style":45},"pluginTs ",[31,429,49],{"style":41},[31,431,52],{"style":37},[31,433,434],{"style":55},"'@kubb\u002Fplugin-ts'",[31,436],{"class":33,"style":34},[31,438,439,441,443,445],{"class":33,"style":34},[31,440,64],{"style":37},[31,442,67],{"style":37},[31,444,19],{"style":70},[31,446,447],{"style":41},"([",[31,449,450],{"class":33,"style":34},[31,451,452],{"style":41},"  {",[31,454,455,458,460,462,464],{"class":33,"style":34},[31,456,457],{"style":41},"    ",[31,459,81],{"style":41},[31,461,84],{"style":37},[31,463,87],{"style":55},[31,465,90],{"style":37},[31,467,468,470,472,474,476],{"class":33,"style":34},[31,469,457],{"style":37},[31,471,97],{"style":41},[31,473,84],{"style":37},[31,475,102],{"style":55},[31,477,90],{"style":37},[31,479,480,482,484,486,488,490,492,495,497],{"class":33,"style":34},[31,481,457],{"style":37},[31,483,111],{"style":41},[31,485,84],{"style":37},[31,487,42],{"style":41},[31,489,118],{"style":41},[31,491,84],{"style":37},[31,493,494],{"style":55},"'.\u002Fsrc\u002Fgen\u002FpetStore' ",[31,496,126],{"style":41},[31,498,90],{"style":37},[31,500,501,503,506,508,511,514,517],{"class":33,"style":34},[31,502,457],{"style":37},[31,504,505],{"style":41},"plugins",[31,507,84],{"style":37},[31,509,510],{"style":41},"[",[31,512,513],{"style":70},"pluginTs",[31,515,516],{"style":41},"()]",[31,518,90],{"style":37},[31,520,521,523,525],{"class":33,"style":34},[31,522,78],{"style":37},[31,524,126],{"style":41},[31,526,90],{"style":37},[31,528,529,531],{"class":33,"style":34},[31,530,78],{"style":37},[31,532,533],{"style":41},"{",[31,535,536,538,540,542,545],{"class":33,"style":34},[31,537,457],{"style":41},[31,539,81],{"style":41},[31,541,84],{"style":37},[31,543,544],{"style":55},"'stripe'",[31,546,90],{"style":37},[31,548,549,551,553,555,558],{"class":33,"style":34},[31,550,457],{"style":37},[31,552,97],{"style":41},[31,554,84],{"style":37},[31,556,557],{"style":55},"'.\u002Fstripe.yaml'",[31,559,90],{"style":37},[31,561,562,564,566,568,570,572,574,577,579],{"class":33,"style":34},[31,563,457],{"style":37},[31,565,111],{"style":41},[31,567,84],{"style":37},[31,569,42],{"style":41},[31,571,118],{"style":41},[31,573,84],{"style":37},[31,575,576],{"style":55},"'.\u002Fsrc\u002Fgen\u002Fstripe' ",[31,578,126],{"style":41},[31,580,90],{"style":37},[31,582,583,585,587,589,591,593,595],{"class":33,"style":34},[31,584,457],{"style":37},[31,586,505],{"style":41},[31,588,84],{"style":37},[31,590,510],{"style":41},[31,592,513],{"style":70},[31,594,516],{"style":41},[31,596,90],{"style":37},[31,598,599,601,603],{"class":33,"style":34},[31,600,78],{"style":37},[31,602,126],{"style":41},[31,604,90],{"style":37},[31,606,607],{"class":33,"style":34},[31,608,609],{"style":41},"])",[10,611,612],{},"A config function can return an array to combine both forms.",[135,614,616],{"id":615},"defaults","Defaults",[10,618,619,621,622,625,626,621,629,632,633,636],{},[13,620,19],{}," from ",[13,623,624],{},"kubb\u002Fconfig"," and ",[13,627,628],{},"createKubb",[13,630,631],{},"kubb"," fill in these fields when you omit them. The bare ",[13,634,635],{},"@kubb\u002Fcore"," engine applies none of them.",[280,638,639,649],{},[283,640,641],{},[286,642,643,646],{},[289,644,645],{},"Field",[289,647,648],{},"Default",[300,650,651,663,681,693,704,716,728,745,756,767],{},[286,652,653,658],{},[305,654,655],{},[13,656,657],{},"root",[305,659,660],{},[13,661,662],{},"process.cwd()",[286,664,665,670],{},[305,666,667],{},[13,668,669],{},"adapter",[305,671,672,675,676],{},[13,673,674],{},"adapterOas()"," from the bundled ",[677,678,680],"a",{"href":679},"\u002Fextensions\u002Fkubb-labs\u002Fadapter-oas","OpenAPI adapter",[286,682,683,688],{},[305,684,685],{},[13,686,687],{},"parsers",[305,689,690],{},[13,691,692],{},"[parserTs(), parserTsx(), parserMd()]",[286,694,695,699],{},[305,696,697],{},[13,698,376],{},[305,700,701],{},[13,702,703],{},"[cli, json, file, html]",[286,705,706,710],{},[305,707,708],{},[13,709,505],{},[305,711,712,715],{},[13,713,714],{},"pluginBarrel()"," appended when not already present",[286,717,718,723],{},[305,719,720],{},[13,721,722],{},"storage",[305,724,725],{},[13,726,727],{},"fsStorage()",[286,729,730,735],{},[305,731,732],{},[13,733,734],{},"output.barrel",[305,736,737,740,741,744],{},[13,738,739],{},"false",", so ",[13,742,743],{},"pluginBarrel"," generates nothing until you opt in",[286,746,747,752],{},[305,748,749],{},[13,750,751],{},"output.format",[305,753,754],{},[13,755,739],{},[286,757,758,763],{},[305,759,760],{},[13,761,762],{},"output.lint",[305,764,765],{},[13,766,739],{},[286,768,769,774],{},[305,770,771],{},[13,772,773],{},"output.defaultBanner",[305,775,776],{},[13,777,778],{},"'simple'",[10,780,781,782,785,786,392],{},"Bundler integrations apply a smaller set: no ",[13,783,784],{},"parserMd"," and no reporters. See ",[677,787,789],{"href":788},"\u002Fdocs\u002F5.x\u002Fintegrations\u002Foverview#build-tools","Build tools",[135,791,793],{"id":792},"top-level-options","Top-level options",[795,796,797,801,808,812,1013,1017,1020,1027,1032,1038,1338,1344,1365,1370,1409,1414,1441,1447,1576,1581,1629,1634,1742,1748,1895,1901,1913,1917,1924,1928,2073,2077,2220,2224,2342,2346,2355,2359],"field-group",{},[140,798,799],{"id":81},[13,800,81],{},[802,803,804,805,392],"field",{"type":313},"A name for this config. The CLI prints it as ",[13,806,807],{},"Generating \u003Cname>...",[140,809,810],{"id":97},[13,811,97],{},[802,813,815,820,839,870,938],{"type":814},"string | Record\u003Cstring, unknown>",[10,816,817,818,392],{},"Where Kubb reads your spec: a local file path, a URL, a file in a git repository, inline OpenAPI content as a JSON or YAML string, or an already-parsed object. Kubb detects which one you gave it. Required when an adapter is configured. Omit it in plugin-only mode, when there is no ",[13,819,669],{},[10,821,822,823,160,825,827,828,160,831,834,835,838],{},"A string that starts with ",[13,824,533],{},[13,826,510],{},", spans multiple lines, or opens with a YAML ",[13,829,830],{},"openapi:",[13,832,833],{},"swagger:"," key is read as inline content. A string that starts with ",[13,836,837],{},"git+"," is a git input. Anything else is a file path or a URL, and a relative path resolves against the config file.",[10,840,841,842,845,846,849,850,853,854,857,858,861,862,865,866,869],{},"Write a git input as ",[13,843,844],{},"git+\u003Crepo>#\u003Cref>:\u003Cpath>",". ",[13,847,848],{},"\u003Cref>"," is a branch, a tag, or a full commit SHA when the host allows fetching by SHA (GitHub and GitLab do); leave out ",[13,851,852],{},"\u003Cref>:"," to use the default branch. Kubb runs a shallow ",[13,855,856],{},"git fetch"," into a temporary folder, so it needs ",[13,859,860],{},"git"," on the ",[13,863,864],{},"PATH",", works with any host, and uses your own git credentials (credential helper or SSH key) for a private repository. Relative ",[13,867,868],{},"$ref"," files in the repository resolve as usual.",[22,871,873],{"language":24,"filename":15,"code":872,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\n\nexport default defineConfig({\n  input: 'git+https:\u002F\u002Fgithub.com\u002Forg\u002Fapi.git#v2:specs\u002Fopenapi.yaml',\n  output: { path: '.\u002Fsrc\u002Fgen' },\n})",[13,874,875,57,889,57,891,57,901,57,914,57,934],{"class":29},[31,876,877,879,881,883,885,887],{"class":33,"style":34},[31,878,38],{"style":37},[31,880,42],{"style":41},[31,882,46],{"style":45},[31,884,49],{"style":41},[31,886,52],{"style":37},[31,888,56],{"style":55},[31,890],{"class":33,"style":34},[31,892,893,895,897,899],{"class":33,"style":34},[31,894,64],{"style":37},[31,896,67],{"style":37},[31,898,19],{"style":70},[31,900,73],{"style":41},[31,902,903,905,907,909,912],{"class":33,"style":34},[31,904,78],{"style":41},[31,906,97],{"style":41},[31,908,84],{"style":37},[31,910,911],{"style":55},"'git+https:\u002F\u002Fgithub.com\u002Forg\u002Fapi.git#v2:specs\u002Fopenapi.yaml'",[31,913,90],{"style":37},[31,915,916,918,920,922,924,926,928,930,932],{"class":33,"style":34},[31,917,78],{"style":37},[31,919,111],{"style":41},[31,921,84],{"style":37},[31,923,42],{"style":41},[31,925,118],{"style":41},[31,927,84],{"style":37},[31,929,123],{"style":55},[31,931,126],{"style":41},[31,933,90],{"style":37},[31,935,936],{"class":33,"style":34},[31,937,133],{"style":41},[22,939,941],{"language":24,"filename":15,"code":940,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\n\nexport default defineConfig({\n  \u002F\u002F a path, a URL, a git input, an inline JSON\u002FYAML string, or a parsed object\n  input: '.\u002FpetStore.yaml',\n  output: { path: '.\u002Fsrc\u002Fgen' },\n})",[13,942,943,57,957,57,959,57,969,57,977,57,989,57,1009],{"class":29},[31,944,945,947,949,951,953,955],{"class":33,"style":34},[31,946,38],{"style":37},[31,948,42],{"style":41},[31,950,46],{"style":45},[31,952,49],{"style":41},[31,954,52],{"style":37},[31,956,56],{"style":55},[31,958],{"class":33,"style":34},[31,960,961,963,965,967],{"class":33,"style":34},[31,962,64],{"style":37},[31,964,67],{"style":37},[31,966,19],{"style":70},[31,968,73],{"style":41},[31,970,971,973],{"class":33,"style":34},[31,972,78],{"style":41},[31,974,976],{"style":975},"color:#6a737d;--hls-dark:#6a737d","\u002F\u002F a path, a URL, a git input, an inline JSON\u002FYAML string, or a parsed object",[31,978,979,981,983,985,987],{"class":33,"style":34},[31,980,78],{"style":975},[31,982,97],{"style":41},[31,984,84],{"style":37},[31,986,102],{"style":55},[31,988,90],{"style":37},[31,990,991,993,995,997,999,1001,1003,1005,1007],{"class":33,"style":34},[31,992,78],{"style":37},[31,994,111],{"style":41},[31,996,84],{"style":37},[31,998,42],{"style":41},[31,1000,118],{"style":41},[31,1002,84],{"style":37},[31,1004,123],{"style":55},[31,1006,126],{"style":41},[31,1008,90],{"style":37},[31,1010,1011],{"class":33,"style":34},[31,1012,133],{"style":41},[140,1014,1015],{"id":111},[13,1016,111],{},[10,1018,1019],{},"Controls where and how files are written.",[1021,1022,1024],"h4",{"id":1023},"outputpath",[13,1025,1026],{},"output.path",[802,1028,1029,1030,392],{"type":313,":required":340},"Directory for generated files, absolute or relative to ",[13,1031,657],{},[1021,1033,1035],{"id":1034},"outputmode",[13,1036,1037],{},"output.mode",[802,1039,1041,1049,1054,1081,1097,1294,1308],{"type":1040},"'file' | 'directory'",[10,1042,1043,1044,1046,1047,392],{},"How a plugin consolidates its code into files. Set it on a plugin's ",[13,1045,111],{},", not on the root ",[13,1048,111],{},[10,1050,1051,1052,392],{},"Default: follows the shape of ",[13,1053,1026],{},[10,1055,1056,1059,1060,1062,1063,1066,1067,1070,1071,1073,1074,1076,1077,1080],{},[13,1057,1058],{},"'file'"," writes everything into a single file, so ",[13,1061,1026],{}," must include the extension (",[13,1064,1065],{},"'types.ts'","). ",[13,1068,1069],{},"'directory'"," writes one file per operation or schema under ",[13,1072,1026],{},". Pair ",[13,1075,1069],{}," with ",[13,1078,1079],{},"group"," to split the output into per-tag or per-path subdirectories.",[10,1082,1083,1084,1086,1087,160,1090,740,1093,1096],{},"You rarely need to set this. Leave it out and Kubb reads ",[13,1085,1026],{},": a path with an extension means one file, a path without one means a directory. Every plugin ships an extensionless default such as ",[13,1088,1089],{},"'types'",[13,1091,1092],{},"'clients'",[13,1094,1095],{},"pluginTs()"," writes a directory without any configuration.",[22,1098,1100],{"language":24,"filename":15,"code":1099,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\nimport { pluginTs } from '@kubb\u002Fplugin-ts'\nimport { pluginAxios } from '@kubb\u002Fplugin-axios'\n\nexport default defineConfig({\n  input: '.\u002Fpetstore.yaml',\n  output: { path: '.\u002Fsrc\u002Fgen' },\n  plugins: [\n    pluginTs({ output: { path: 'types.ts' } }),\n    pluginAxios({ output: { path: 'clients', mode: 'directory' }, group: { type: 'tag' } }),\n  ],\n})",[13,1101,1102,57,1116,57,1130,57,1146,57,1148,57,1158,57,1171,57,1191,57,1201,57,1228,57,1281,57,1290],{"class":29},[31,1103,1104,1106,1108,1110,1112,1114],{"class":33,"style":34},[31,1105,38],{"style":37},[31,1107,42],{"style":41},[31,1109,46],{"style":45},[31,1111,49],{"style":41},[31,1113,52],{"style":37},[31,1115,56],{"style":55},[31,1117,1118,1120,1122,1124,1126,1128],{"class":33,"style":34},[31,1119,38],{"style":37},[31,1121,42],{"style":41},[31,1123,427],{"style":45},[31,1125,49],{"style":41},[31,1127,52],{"style":37},[31,1129,434],{"style":55},[31,1131,1132,1134,1136,1139,1141,1143],{"class":33,"style":34},[31,1133,38],{"style":37},[31,1135,42],{"style":41},[31,1137,1138],{"style":45},"pluginAxios ",[31,1140,49],{"style":41},[31,1142,52],{"style":37},[31,1144,1145],{"style":55},"'@kubb\u002Fplugin-axios'",[31,1147],{"class":33,"style":34},[31,1149,1150,1152,1154,1156],{"class":33,"style":34},[31,1151,64],{"style":37},[31,1153,67],{"style":37},[31,1155,19],{"style":70},[31,1157,73],{"style":41},[31,1159,1160,1162,1164,1166,1169],{"class":33,"style":34},[31,1161,78],{"style":41},[31,1163,97],{"style":41},[31,1165,84],{"style":37},[31,1167,1168],{"style":55},"'.\u002Fpetstore.yaml'",[31,1170,90],{"style":37},[31,1172,1173,1175,1177,1179,1181,1183,1185,1187,1189],{"class":33,"style":34},[31,1174,78],{"style":37},[31,1176,111],{"style":41},[31,1178,84],{"style":37},[31,1180,42],{"style":41},[31,1182,118],{"style":41},[31,1184,84],{"style":37},[31,1186,123],{"style":55},[31,1188,126],{"style":41},[31,1190,90],{"style":37},[31,1192,1193,1195,1197,1199],{"class":33,"style":34},[31,1194,78],{"style":37},[31,1196,505],{"style":41},[31,1198,84],{"style":37},[31,1200,510],{"style":41},[31,1202,1203,1205,1207,1210,1212,1214,1216,1218,1220,1223,1226],{"class":33,"style":34},[31,1204,457],{"style":41},[31,1206,513],{"style":70},[31,1208,1209],{"style":41},"({ ",[31,1211,111],{"style":41},[31,1213,84],{"style":37},[31,1215,42],{"style":41},[31,1217,118],{"style":41},[31,1219,84],{"style":37},[31,1221,1222],{"style":55},"'types.ts' ",[31,1224,1225],{"style":41},"} })",[31,1227,90],{"style":37},[31,1229,1230,1232,1235,1237,1239,1241,1243,1245,1247,1249,1251,1254,1256,1259,1261,1263,1265,1267,1269,1272,1274,1277,1279],{"class":33,"style":34},[31,1231,457],{"style":37},[31,1233,1234],{"style":70},"pluginAxios",[31,1236,1209],{"style":41},[31,1238,111],{"style":41},[31,1240,84],{"style":37},[31,1242,42],{"style":41},[31,1244,118],{"style":41},[31,1246,84],{"style":37},[31,1248,1092],{"style":55},[31,1250,201],{"style":37},[31,1252,1253],{"style":41},"mode",[31,1255,84],{"style":37},[31,1257,1258],{"style":55},"'directory' ",[31,1260,126],{"style":41},[31,1262,201],{"style":37},[31,1264,1079],{"style":41},[31,1266,84],{"style":37},[31,1268,42],{"style":41},[31,1270,1271],{"style":41},"type",[31,1273,84],{"style":37},[31,1275,1276],{"style":55},"'tag' ",[31,1278,1225],{"style":41},[31,1280,90],{"style":37},[31,1282,1283,1285,1288],{"class":33,"style":34},[31,1284,78],{"style":37},[31,1286,1287],{"style":41},"]",[31,1289,90],{"style":37},[31,1291,1292],{"class":33,"style":34},[31,1293,133],{"style":41},[10,1295,1296,1297,1300,1301,201,1304,1307],{},"This writes every type into ",[13,1298,1299],{},"src\u002Fgen\u002Ftypes.ts"," and one client file per operation, grouped by tag (",[13,1302,1303],{},"src\u002Fgen\u002Fclients\u002Fpet\u002F",[13,1305,1306],{},"src\u002Fgen\u002Fclients\u002Fstore\u002F",").",[1309,1310,1312,1313,1315,1316,1318,1319,1322,1323,1326,1327,1330,1331,1333,1334,1337],"blockquote",{"as":1311},"tip","",[13,1314,1079],{}," works with the inferred directory mode, no ",[13,1317,1253],{}," needed. Set ",[13,1320,1321],{},"mode: 'directory'"," yourself only to override the inference, such as a directory name that carries a dot (",[13,1324,1325],{},"path: 'clients.v2'","). An explicit ",[13,1328,1329],{},"mode: 'file'"," still forbids ",[13,1332,1079],{}," and stops the build with a ",[13,1335,1336],{},"KUBB_INVALID_PLUGIN_OPTIONS"," error, because a single file has nothing to group.",[1021,1339,1341],{"id":1340},"outputclean",[13,1342,1343],{},"output.clean",[802,1345,1346,1352,1357],{"type":335},[10,1347,1348,1349,1351],{},"Wipe ",[13,1350,1026],{}," before regenerating.",[10,1353,1354,1355,392],{},"Default: ",[13,1356,739],{},[1309,1358,1360,1361,1364],{"as":1359},"warning","Only use ",[13,1362,1363],{},"clean: true"," with a dedicated output folder. Kubb removes the entire directory.",[1021,1366,1368],{"id":1367},"outputformat",[13,1369,751],{},[802,1371,1373,1376,1380],{"type":1372},"'auto' | 'prettier' | 'biome' | 'oxfmt' | false",[10,1374,1375],{},"Formatter to run on every generated file.",[10,1377,1354,1378,392],{},[13,1379,739],{},[10,1381,1382,1385,1386,1390,1391,1390,1395,1399,1400,1402,1403,160,1406,392],{},[13,1383,1384],{},"'auto'"," detects the first formatter it finds (",[677,1387,1389],{"href":1388},"https:\u002F\u002Foxc.rs","oxfmt"," then ",[677,1392,1394],{"href":1393},"https:\u002F\u002Fbiomejs.dev","Biome",[677,1396,1398],{"href":1397},"https:\u002F\u002Fprettier.io","Prettier","). A named tool forces that one. ",[13,1401,739],{}," skips formatting. Kubb reads your local ",[13,1404,1405],{},".prettierrc",[13,1407,1408],{},"biome.json",[1021,1410,1412],{"id":1411},"outputlint",[13,1413,762],{},[802,1415,1417,1420,1424],{"type":1416},"'auto' | 'eslint' | 'biome' | 'oxlint' | false",[10,1418,1419],{},"Linter to run after generation.",[10,1421,1354,1422,392],{},[13,1423,739],{},[10,1425,1426,1428,1429,1390,1432,1390,1434,1399,1438,1440],{},[13,1427,1384],{}," detects the first linter it finds (",[677,1430,1431],{"href":1388},"oxlint",[677,1433,1394],{"href":1393},[677,1435,1437],{"href":1436},"https:\u002F\u002Feslint.org","ESLint",[13,1439,739],{}," skips linting.",[1021,1442,1444],{"id":1443},"outputpostgenerate",[13,1445,1446],{},"output.postGenerate",[802,1448,1450,1460],{"type":1449},"Array\u003Cstring | { name?: string; command: string }>",[10,1451,1452,1453,1455,1456,1459],{},"Shell commands to run after the generated files are formatted and linted, such as a type check or a custom script. Commands run from the ",[13,1454,657],{}," directory, in sequence. Pass a command string, or ",[13,1457,1458],{},"{ name, command }"," to label a step in the CLI output.",[22,1461,1463],{"language":24,"filename":15,"code":1462,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\n\nexport default defineConfig({\n  input: '.\u002FpetStore.yaml',\n  output: {\n    path: '.\u002Fsrc\u002Fgen',\n    postGenerate: [{ name: 'types', command: 'npm run typecheck' }, 'biome check --write .\u002Fsrc\u002Fgen'],\n  },\n})",[13,1464,1465,57,1479,57,1481,57,1491,57,1503,57,1513,57,1525,57,1564,57,1572],{"class":29},[31,1466,1467,1469,1471,1473,1475,1477],{"class":33,"style":34},[31,1468,38],{"style":37},[31,1470,42],{"style":41},[31,1472,46],{"style":45},[31,1474,49],{"style":41},[31,1476,52],{"style":37},[31,1478,56],{"style":55},[31,1480],{"class":33,"style":34},[31,1482,1483,1485,1487,1489],{"class":33,"style":34},[31,1484,64],{"style":37},[31,1486,67],{"style":37},[31,1488,19],{"style":70},[31,1490,73],{"style":41},[31,1492,1493,1495,1497,1499,1501],{"class":33,"style":34},[31,1494,78],{"style":41},[31,1496,97],{"style":41},[31,1498,84],{"style":37},[31,1500,102],{"style":55},[31,1502,90],{"style":37},[31,1504,1505,1507,1509,1511],{"class":33,"style":34},[31,1506,78],{"style":37},[31,1508,111],{"style":41},[31,1510,84],{"style":37},[31,1512,533],{"style":41},[31,1514,1515,1517,1519,1521,1523],{"class":33,"style":34},[31,1516,457],{"style":41},[31,1518,118],{"style":41},[31,1520,84],{"style":37},[31,1522,253],{"style":55},[31,1524,90],{"style":37},[31,1526,1527,1529,1532,1534,1537,1539,1541,1543,1545,1548,1550,1553,1555,1557,1560,1562],{"class":33,"style":34},[31,1528,457],{"style":37},[31,1530,1531],{"style":41},"postGenerate",[31,1533,84],{"style":37},[31,1535,1536],{"style":41},"[{ ",[31,1538,81],{"style":41},[31,1540,84],{"style":37},[31,1542,1089],{"style":55},[31,1544,201],{"style":37},[31,1546,1547],{"style":41},"command",[31,1549,84],{"style":37},[31,1551,1552],{"style":55},"'npm run typecheck' ",[31,1554,126],{"style":41},[31,1556,201],{"style":37},[31,1558,1559],{"style":55},"'biome check --write .\u002Fsrc\u002Fgen'",[31,1561,1287],{"style":41},[31,1563,90],{"style":37},[31,1565,1566,1568,1570],{"class":33,"style":34},[31,1567,78],{"style":37},[31,1569,126],{"style":41},[31,1571,90],{"style":37},[31,1573,1574],{"class":33,"style":34},[31,1575,133],{"style":41},[1021,1577,1579],{"id":1578},"outputbarrel",[13,1580,734],{},[802,1582,1584,1594,1598],{"type":1583},"{ type: 'all' | 'named' } | false",[10,1585,1586,1587,1590,1591,1593],{},"Behavior of the root ",[13,1588,1589],{},"index.ts"," barrel file at ",[13,1592,1026],{},", and the default every plugin inherits.",[10,1595,1354,1596,392],{},[13,1597,739],{},[10,1599,1600,1603,1604,1607,1608,1611,1612,1619,1620,1623,1624,1628],{},[13,1601,1602],{},"{ type: 'named' }"," re-exports each symbol by name, ",[13,1605,1606],{},"{ type: 'all' }"," writes ",[13,1609,1610],{},"export *",". See ",[677,1613,1615,1618],{"href":1614},"\u002Fextensions\u002Fkubb-labs\u002Fplugin-barrel\u002Foptions#outputbarrel",[13,1616,1617],{},"@kubb\u002Fplugin-barrel"," options"," for the export styles and the plugin-level ",[13,1621,1622],{},"nested"," flag, and ",[677,1625,1627],{"href":1626},"\u002Fdocs\u002F5.x\u002Fhow-to\u002Fbarrel-files","Add barrel files"," for the setup steps.",[1021,1630,1632],{"id":1631},"outputdefaultbanner",[13,1633,773],{},[802,1635,1637,1640,1644,1667],{"type":1636},"'simple' | 'full' | false",[10,1638,1639],{},"Auto-generated banner injected at the top of each file.",[10,1641,1354,1642,392],{},[13,1643,778],{},[10,1645,1646,1648,1649,1652,1653,201,1656,1659,1660,1663,1664,1666],{},[13,1647,778],{}," adds a short \"Generated by Kubb\" notice. ",[13,1650,1651],{},"'full'"," adds the notice plus ",[13,1654,1655],{},"Source",[13,1657,1658],{},"Title",", and ",[13,1661,1662],{},"OpenAPI spec version"," from the spec. ",[13,1665,739],{}," writes no banner.",[1668,1669,1670,1696,1733],"code-group",{},[22,1671,1674],{"language":24,"filename":1672,"code":1673,"class":26},"simple","\u002F**\n * Generated by Kubb (https:\u002F\u002Fkubb.dev\u002F).\n * Do not edit manually.\n *\u002F",[13,1675,1676,57,1681,57,1686,57,1691],{"class":29},[31,1677,1678],{"class":33,"style":34},[31,1679,1680],{"style":975},"\u002F**",[31,1682,1683],{"class":33,"style":34},[31,1684,1685],{"style":975}," * Generated by Kubb (https:\u002F\u002Fkubb.dev\u002F).",[31,1687,1688],{"class":33,"style":34},[31,1689,1690],{"style":975}," * Do not edit manually.",[31,1692,1693],{"class":33,"style":34},[31,1694,1695],{"style":975}," *\u002F",[22,1697,1700],{"language":24,"filename":1698,"code":1699,"class":26},"full","\u002F**\n * Generated by Kubb (https:\u002F\u002Fkubb.dev\u002F).\n * Do not edit manually.\n * Source: petStore.yaml\n * Title: Pet Store\n * OpenAPI spec version: 1.0.0\n *\u002F",[13,1701,1702,57,1706,57,1710,57,1714,57,1719,57,1724,57,1729],{"class":29},[31,1703,1704],{"class":33,"style":34},[31,1705,1680],{"style":975},[31,1707,1708],{"class":33,"style":34},[31,1709,1685],{"style":975},[31,1711,1712],{"class":33,"style":34},[31,1713,1690],{"style":975},[31,1715,1716],{"class":33,"style":34},[31,1717,1718],{"style":975}," * Source: petStore.yaml",[31,1720,1721],{"class":33,"style":34},[31,1722,1723],{"style":975}," * Title: Pet Store",[31,1725,1726],{"class":33,"style":34},[31,1727,1728],{"style":975}," * OpenAPI spec version: 1.0.0",[31,1730,1731],{"class":33,"style":34},[31,1732,1695],{"style":975},[22,1734,1736],{"language":24,"filename":739,"code":1735,"class":26},"\u002F\u002F no banner",[13,1737,1738],{"class":29},[31,1739,1740],{"class":33,"style":34},[31,1741,1735],{"style":975},[1021,1743,1745],{"id":1744},"outputbanner",[13,1746,1747],{},"output.banner",[802,1749,1751,1766,1780,1799,1882],{"type":1750},"string | ((meta: BannerMeta) => string)",[10,1752,1753,1754,1756,1757,1762,1763,392],{},"Text prepended to every file a plugin generates. Set it on an individual plugin. The root ",[13,1755,111],{}," exposes only ",[677,1758,1760],{"href":1759},"#outputdefaultbanner",[13,1761,773],{},". Use it for license headers, lint-disable comments, or framework directives like ",[13,1764,1765],{},"'use server'",[10,1767,1768,1769,1771,1772,1775,1776,1779],{},"A string applies to every file the plugin generates, including barrel (",[13,1770,1589],{},") and group aggregation (",[13,1773,1774],{},"[dir]\u002F[dir].ts",") re-export files. A function runs once per file and receives a ",[13,1777,1778],{},"BannerMeta",", so you can vary the banner per file or return an empty string to skip it.",[10,1781,1782,1784,1785,1788,1789,201,1792,201,1795,1798],{},[13,1783,1778],{}," extends the document ",[13,1786,1787],{},"InputMeta"," (",[13,1790,1791],{},"title",[13,1793,1794],{},"description",[13,1796,1797],{},"version",", …) with per-file context:",[280,1800,1801,1811],{},[283,1802,1803],{},[286,1804,1805,1807,1809],{},[289,1806],{"style":291},[289,1808],{"style":294},[289,1810],{"style":294},[300,1812,1813,1827,1844,1863],{},[286,1814,1815,1820,1824],{},[305,1816,1817],{"style":291},[13,1818,1819],{},"filePath",[305,1821,1822],{"style":294},[13,1823,313],{},[305,1825,1826],{"style":294},"Full output path of the file being generated.",[286,1828,1829,1834,1838],{},[305,1830,1831],{"style":291},[13,1832,1833],{},"baseName",[305,1835,1836],{"style":294},[13,1837,313],{},[305,1839,1840,1841,392],{"style":294},"File name only, for example ",[13,1842,1843],{},"stocks.ts",[286,1845,1846,1851,1855],{},[305,1847,1848],{"style":291},[13,1849,1850],{},"isBarrel",[305,1852,1853],{"style":294},[13,1854,335],{},[305,1856,1857,1859,1860,1862],{"style":294},[13,1858,340],{}," for ",[13,1861,1589],{}," re-export barrels.",[286,1864,1865,1870,1874],{},[305,1866,1867],{"style":291},[13,1868,1869],{},"isAggregation",[305,1871,1872],{"style":294},[13,1873,335],{},[305,1875,1876,1878,1879,1881],{"style":294},[13,1877,340],{}," for group ",[13,1880,1774],{}," aggregation files.",[1309,1883,1885,1886,1888,1889,1891,1892,392],{"as":1884},"note","Barrel ",[13,1887,1589],{}," files stay banner-free by default. They get a banner only when the plugin sets ",[13,1890,1747],{},", at which point the function runs with ",[13,1893,1894],{},"isBarrel: true",[1021,1896,1898],{"id":1897},"outputfooter",[13,1899,1900],{},"output.footer",[802,1902,1903,1904,1909,1910,1912],{"type":1750},"Text appended to the end of every file a plugin generates. Mirror of ",[677,1905,1907],{"href":1906},"#outputbanner",[13,1908,1747],{},", with the same ",[13,1911,1750],{}," type.",[140,1914,1915],{"id":505},[13,1916,505],{},[802,1918,1920,1921,392],{"type":1919},"Array\u003CPlugin>","Array of Kubb plugins. Dependencies run first. A plugin that requires one missing from this array fails the run with ",[13,1922,1923],{},"KUBB_MISSING_DEPENDENCY",[140,1925,1926],{"id":669},[13,1927,669],{},[802,1929,1931,1947,1955,1962,1965],{"type":1930},"Adapter",[10,1932,1933,1934,1936,1937,1939,1940,621,1942,392],{},"Adapter that converts your input into the universal AST. With ",[13,1935,19],{}," from the ",[13,1938,631],{}," package this defaults to ",[13,1941,674],{},[677,1943,1944],{"href":679},[13,1945,1946],{},"@kubb\u002Fadapter-oas",[10,1948,1949,1950,1954],{},"See the ",[677,1951,1953],{"href":1952},"\u002Fdocs\u002F5.x\u002Fexplanation\u002Farchitecture#adapters","Adapter concept"," for the full picture.",[10,1956,1354,1957,1959,1960,1307],{},[13,1958,674],{}," (included with ",[13,1961,631],{},[10,1963,1964],{},"Pass options to customize the adapter:",[22,1966,1968],{"language":24,"filename":15,"code":1967,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\nimport { adapterOas } from '@kubb\u002Fadapter-oas'\n\nexport default defineConfig({\n  input: '.\u002FpetStore.yaml',\n  output: { path: '.\u002Fsrc\u002Fgen' },\n  adapter: adapterOas({ validate: true }),\n})",[13,1969,1970,57,1984,57,2000,57,2002,57,2012,57,2024,57,2044,57,2069],{"class":29},[31,1971,1972,1974,1976,1978,1980,1982],{"class":33,"style":34},[31,1973,38],{"style":37},[31,1975,42],{"style":41},[31,1977,46],{"style":45},[31,1979,49],{"style":41},[31,1981,52],{"style":37},[31,1983,56],{"style":55},[31,1985,1986,1988,1990,1993,1995,1997],{"class":33,"style":34},[31,1987,38],{"style":37},[31,1989,42],{"style":41},[31,1991,1992],{"style":45},"adapterOas ",[31,1994,49],{"style":41},[31,1996,52],{"style":37},[31,1998,1999],{"style":55},"'@kubb\u002Fadapter-oas'",[31,2001],{"class":33,"style":34},[31,2003,2004,2006,2008,2010],{"class":33,"style":34},[31,2005,64],{"style":37},[31,2007,67],{"style":37},[31,2009,19],{"style":70},[31,2011,73],{"style":41},[31,2013,2014,2016,2018,2020,2022],{"class":33,"style":34},[31,2015,78],{"style":41},[31,2017,97],{"style":41},[31,2019,84],{"style":37},[31,2021,102],{"style":55},[31,2023,90],{"style":37},[31,2025,2026,2028,2030,2032,2034,2036,2038,2040,2042],{"class":33,"style":34},[31,2027,78],{"style":37},[31,2029,111],{"style":41},[31,2031,84],{"style":37},[31,2033,42],{"style":41},[31,2035,118],{"style":41},[31,2037,84],{"style":37},[31,2039,123],{"style":55},[31,2041,126],{"style":41},[31,2043,90],{"style":37},[31,2045,2046,2048,2050,2052,2055,2057,2060,2062,2065,2067],{"class":33,"style":34},[31,2047,78],{"style":37},[31,2049,669],{"style":41},[31,2051,84],{"style":37},[31,2053,2054],{"style":70},"adapterOas",[31,2056,1209],{"style":41},[31,2058,2059],{"style":41},"validate",[31,2061,84],{"style":37},[31,2063,2064],{"style":41},"true ",[31,2066,133],{"style":41},[31,2068,90],{"style":37},[31,2070,2071],{"class":33,"style":34},[31,2072,133],{"style":41},[140,2074,2075],{"id":687},[13,2076,687],{},[802,2078,2080,2086,2099,2105,2108],{"type":2079},"Array\u003CParser>",[10,2081,2082,2083,392],{},"Array of parsers that turn the in-memory file representation into source code. Each parser declares which file extensions it handles through ",[13,2084,2085],{},"extNames",[10,2087,1949,2088,625,2092,2098],{},[677,2089,2091],{"href":2090},"\u002Fdocs\u002F5.x\u002Fexplanation\u002Farchitecture#parsers","Parser concept",[677,2093,2095],{"href":2094},"\u002Fextensions\u002Fkubb-labs\u002Fparser-ts",[13,2096,2097],{},"@kubb\u002Fparser-ts"," for the built-in parsers.",[10,2100,1354,2101,1959,2103,1307],{},[13,2102,692],{},[13,2104,631],{},[10,2106,2107],{},"Import parsers explicitly to override the default set:",[22,2109,2111],{"language":24,"filename":15,"code":2110,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\nimport { parserTs, parserTsx } from '@kubb\u002Fparser-ts'\n\nexport default defineConfig({\n  input: '.\u002FpetStore.yaml',\n  output: { path: '.\u002Fsrc\u002Fgen' },\n  parsers: [parserTs(), parserTsx()],\n})",[13,2112,2113,57,2127,57,2148,57,2150,57,2160,57,2172,57,2192,57,2216],{"class":29},[31,2114,2115,2117,2119,2121,2123,2125],{"class":33,"style":34},[31,2116,38],{"style":37},[31,2118,42],{"style":41},[31,2120,46],{"style":45},[31,2122,49],{"style":41},[31,2124,52],{"style":37},[31,2126,56],{"style":55},[31,2128,2129,2131,2133,2136,2138,2141,2143,2145],{"class":33,"style":34},[31,2130,38],{"style":37},[31,2132,42],{"style":41},[31,2134,2135],{"style":45},"parserTs",[31,2137,201],{"style":37},[31,2139,2140],{"style":45},"parserTsx ",[31,2142,49],{"style":41},[31,2144,52],{"style":37},[31,2146,2147],{"style":55},"'@kubb\u002Fparser-ts'",[31,2149],{"class":33,"style":34},[31,2151,2152,2154,2156,2158],{"class":33,"style":34},[31,2153,64],{"style":37},[31,2155,67],{"style":37},[31,2157,19],{"style":70},[31,2159,73],{"style":41},[31,2161,2162,2164,2166,2168,2170],{"class":33,"style":34},[31,2163,78],{"style":41},[31,2165,97],{"style":41},[31,2167,84],{"style":37},[31,2169,102],{"style":55},[31,2171,90],{"style":37},[31,2173,2174,2176,2178,2180,2182,2184,2186,2188,2190],{"class":33,"style":34},[31,2175,78],{"style":37},[31,2177,111],{"style":41},[31,2179,84],{"style":37},[31,2181,42],{"style":41},[31,2183,118],{"style":41},[31,2185,84],{"style":37},[31,2187,123],{"style":55},[31,2189,126],{"style":41},[31,2191,90],{"style":37},[31,2193,2194,2196,2198,2200,2202,2204,2207,2209,2212,2214],{"class":33,"style":34},[31,2195,78],{"style":37},[31,2197,687],{"style":41},[31,2199,84],{"style":37},[31,2201,510],{"style":41},[31,2203,2135],{"style":70},[31,2205,2206],{"style":41},"()",[31,2208,201],{"style":37},[31,2210,2211],{"style":70},"parserTsx",[31,2213,516],{"style":41},[31,2215,90],{"style":37},[31,2217,2218],{"class":33,"style":34},[31,2219,133],{"style":41},[140,2221,2222],{"id":722},[13,2223,722],{},[802,2225,2227,2233,2240,2244],{"type":2226},"Storage",[10,2228,2229,2230,2232],{},"Storage driver that persists generated files. Defaults to ",[13,2231,727],{}," (filesystem).",[10,2234,1949,2235,2239],{},[677,2236,2238],{"href":2237},"\u002Fdocs\u002F5.x\u002Fexplanation\u002Farchitecture#storage","Storage concept"," for the built-in drivers and how to write a custom backend.",[10,2241,1354,2242,392],{},[13,2243,727],{},[22,2245,2247],{"language":24,"filename":15,"code":2246,"class":26},"import { defineConfig } from 'kubb\u002Fconfig'\nimport { memoryStorage } from 'kubb\u002Fkit'\n\nexport default defineConfig({\n  input: '.\u002FpetStore.yaml',\n  output: { path: '.\u002Fsrc\u002Fgen' },\n  storage: memoryStorage(),\n})",[13,2248,2249,57,2263,57,2279,57,2281,57,2291,57,2303,57,2323,57,2338],{"class":29},[31,2250,2251,2253,2255,2257,2259,2261],{"class":33,"style":34},[31,2252,38],{"style":37},[31,2254,42],{"style":41},[31,2256,46],{"style":45},[31,2258,49],{"style":41},[31,2260,52],{"style":37},[31,2262,56],{"style":55},[31,2264,2265,2267,2269,2272,2274,2276],{"class":33,"style":34},[31,2266,38],{"style":37},[31,2268,42],{"style":41},[31,2270,2271],{"style":45},"memoryStorage ",[31,2273,49],{"style":41},[31,2275,52],{"style":37},[31,2277,2278],{"style":55},"'kubb\u002Fkit'",[31,2280],{"class":33,"style":34},[31,2282,2283,2285,2287,2289],{"class":33,"style":34},[31,2284,64],{"style":37},[31,2286,67],{"style":37},[31,2288,19],{"style":70},[31,2290,73],{"style":41},[31,2292,2293,2295,2297,2299,2301],{"class":33,"style":34},[31,2294,78],{"style":41},[31,2296,97],{"style":41},[31,2298,84],{"style":37},[31,2300,102],{"style":55},[31,2302,90],{"style":37},[31,2304,2305,2307,2309,2311,2313,2315,2317,2319,2321],{"class":33,"style":34},[31,2306,78],{"style":37},[31,2308,111],{"style":41},[31,2310,84],{"style":37},[31,2312,42],{"style":41},[31,2314,118],{"style":41},[31,2316,84],{"style":37},[31,2318,123],{"style":55},[31,2320,126],{"style":41},[31,2322,90],{"style":37},[31,2324,2325,2327,2329,2331,2334,2336],{"class":33,"style":34},[31,2326,78],{"style":37},[31,2328,722],{"style":41},[31,2330,84],{"style":37},[31,2332,2333],{"style":70},"memoryStorage",[31,2335,2206],{"style":41},[31,2337,90],{"style":37},[31,2339,2340],{"class":33,"style":34},[31,2341,133],{"style":41},[140,2343,2344],{"id":657},[13,2345,657],{},[802,2347,2348,2351],{"type":313},[10,2349,2350],{},"Project root, absolute or relative to the config file location.",[10,2352,1354,2353,392],{},[13,2354,662],{},[140,2356,2357],{"id":376},[13,2358,376],{},[802,2360,2362,2396],{"type":2361},"Array\u003CReporter>",[10,2363,2364,2365,2367,2368,201,2371,201,2374,1659,2377,2380,2381,2387,2388,2392,2393,2395],{},"Reporters available to the run, registered as instances. ",[13,2366,19],{}," registers the built-in ",[13,2369,2370],{},"cli",[13,2372,2373],{},"json",[13,2375,2376],{},"file",[13,2378,2379],{},"html"," reporters by default. The HTML reporter remains opt-in: select it with ",[677,2382,2384],{"href":2383},"\u002Fdocs\u002F5.x\u002Freference\u002Fcommands\u002Fgenerate#reporters",[13,2385,2386],{},"--reporter html",". The CLI ",[677,2389,2390],{"href":2383},[13,2391,387],{}," flag selects reporters by name and defaults to ",[13,2394,2370],{},". See that page for details about each reporter.",[10,2397,1354,2398,392],{},[13,2399,703],{},[2401,2402],"studio-cta",{"source":2403},"configuration-reference",{"title":1312,"searchDepth":2405,"depth":2405,"links":2406},5,[2407,2414,2415],{"id":137,"depth":2408,"text":138,"children":2409},2,[2410,2412,2413],{"id":142,"depth":2411,"text":143},3,{"id":152,"depth":2411,"text":153},{"id":395,"depth":2411,"text":396},{"id":615,"depth":2408,"text":616},{"id":792,"depth":2408,"text":793,"children":2416},[2417,2418,2419,2432,2433,2434,2435,2436,2437],{"id":81,"depth":2411,"text":81},{"id":97,"depth":2411,"text":97},{"id":111,"depth":2411,"text":111,"children":2420},[2421,2423,2424,2425,2426,2427,2428,2429,2430,2431],{"id":1023,"depth":2422,"text":1026},4,{"id":1034,"depth":2422,"text":1037},{"id":1340,"depth":2422,"text":1343},{"id":1367,"depth":2422,"text":751},{"id":1411,"depth":2422,"text":762},{"id":1443,"depth":2422,"text":1446},{"id":1578,"depth":2422,"text":734},{"id":1631,"depth":2422,"text":773},{"id":1744,"depth":2422,"text":1747},{"id":1897,"depth":2422,"text":1900},{"id":505,"depth":2411,"text":505},{"id":669,"depth":2411,"text":669},{"id":687,"depth":2411,"text":687},{"id":722,"depth":2411,"text":722},{"id":657,"depth":2411,"text":657},{"id":376,"depth":2411,"text":376},"Reference for kubb.config.ts with every option, default and example for the Kubb v5 UserConfig.","md",{"layout":2441,"title":5,"description":2438,"outline":2442,"order":2443,"navigation":2444},"doc",[2408,2411],1,{"title":5,"icon":2445},"i-iconoir-settings",{"layout":2441,"outline":2447},[2408,2411],{"title":5,"icon":2445},"\u002Fdocs\u002F5.x\u002Freference\u002Fconfiguration",{"title":5,"description":2438},{"loc":2449},"kubb-labs\u002Fkubb\u002Fdocs\u002F5.x\u002Freference\u002Fconfiguration.md","docs\u002F5.x\u002Freference\u002Fconfiguration","GCbMzsPyiQ8SgyRD4BH6svjqPTwxhVulUofkDcDu2lg",1792931642387]