[{"data":1,"prerenderedAt":1070},["ShallowReactive",2],{"navigation":3,"/docs/kv/usage":137,"/docs/kv/usage-surround":1065},[4,123],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":113},"Docs","i-lucide-book","/docs","docs",[10,34,58,73,84,95,114],{"title":11,"path":12,"stem":13,"children":14,"icon":33},"Getting Started","/docs/getting-started","docs/1.getting-started/1.index",[15,17,21,25,29],{"title":16,"path":12,"stem":13},"Introduction",{"title":18,"path":19,"stem":20},"Installation","/docs/getting-started/installation","docs/1.getting-started/2.installation",{"title":22,"path":23,"stem":24},"Deploy","/docs/getting-started/deploy","docs/1.getting-started/3.deploy",{"title":26,"path":27,"stem":28},"Migration","/docs/getting-started/migration","docs/1.getting-started/4.migration",{"title":30,"path":31,"stem":32},"Environments","/docs/getting-started/environments","docs/1.getting-started/5.environments","i-lucide-rocket",{"title":35,"path":36,"stem":37,"children":38,"icon":57},"Database","/docs/database","docs/2.database/1.index",[39,41,45,49,53],{"title":40,"path":36,"stem":37},"Setup",{"title":42,"path":43,"stem":44},"Schema","/docs/database/schema","docs/2.database/2.schema",{"title":46,"path":47,"stem":48},"Queries","/docs/database/query","docs/2.database/3.query",{"title":50,"path":51,"stem":52},"Migrations","/docs/database/migrations","docs/2.database/4.migrations",{"title":54,"path":55,"stem":56},"CLI","/docs/database/cli","docs/2.database/cli","i-lucide-database",{"title":59,"path":60,"stem":61,"children":62,"icon":72},"Blob","/docs/blob","docs/3.blob/1.index",[63,64,68],{"title":40,"path":60,"stem":61},{"title":65,"path":66,"stem":67},"Upload","/docs/blob/upload","docs/3.blob/2.upload",{"title":69,"path":70,"stem":71},"Blob SDK","/docs/blob/usage","docs/3.blob/3.usage","i-lucide-shapes",{"title":74,"path":75,"stem":76,"children":77,"icon":83},"Key Value","/docs/kv","docs/4.kv/1.index",[78,79],{"title":40,"path":75,"stem":76},{"title":80,"path":81,"stem":82},"KV SDK","/docs/kv/usage","docs/4.kv/2.usage","i-lucide-list",{"title":85,"path":86,"stem":87,"children":88,"icon":94},"Cache","/docs/cache","docs/5.cache/1.index",[89,90],{"title":40,"path":86,"stem":87},{"title":91,"path":92,"stem":93},"Usage","/docs/cache/usage","docs/5.cache/2.usage","i-lucide-zap",{"title":96,"icon":97,"path":98,"stem":99,"children":100,"page":113},"Guides","i-lucide-book-text","/docs/guides","docs/6.guides",[101,105,109],{"title":102,"path":103,"stem":104},"Pre-rendering","/docs/guides/pre-rendering","docs/6.guides/1.pre-rendering",{"title":106,"path":107,"stem":108},"Realtime","/docs/guides/realtime","docs/6.guides/2.realtime",{"title":110,"path":111,"stem":112},"CI/CD","/docs/guides/ci-cd","docs/6.guides/3.ci-cd",false,{"title":115,"path":116,"stem":117,"children":118,"page":113},"Reference","/docs/reference","docs/7.reference",[119],{"title":120,"path":121,"stem":122},"Environment Variables","/docs/reference/environment-variables","docs/7.reference/1.environment-variables",{"title":124,"icon":125,"path":126,"stem":127,"children":128,"page":113},"Changelog","i-lucide-megaphone","/changelog","changelog",[129,133],{"title":130,"path":131,"stem":132},"NuxtHub Multi-Vendor is now available","/changelog/nuxthub-multi-vendor","changelog/nuxthub-multi-vendor",{"title":134,"path":135,"stem":136},"Self-Hosting First & Cloud-Agnostic Future","/changelog/self-hosting-first","changelog/self-hosting-first",{"id":138,"title":139,"body":140,"description":1058,"extension":1059,"links":1060,"meta":1061,"navigation":1062,"path":81,"seo":1063,"stem":82,"__hash__":1064},"docs/docs/4.kv/2.usage.md","Using KV SDK",{"type":141,"value":142,"toc":1044},"minimark",[143,155,160,163,172,184,225,235,242,248,271,277,281,284,407,411,416,426,441,513,517,520,606,610,613,703,707,710,759,763,766,807,810,857,861,864,959,962,1040],[144,145,146,147,154],"p",{},"NuxtHub provides access to the Key-Value storage through an ",[148,149,153],"a",{"href":150,"rel":151},"https://unstorage.unjs.io",[152],"nofollow","unstorage"," instance.",[156,157,159],"h2",{"id":158},"importing-the-kv-storage","Importing the KV storage",[144,161,162],{},"NuxtHub provides two ways to import the KV storage:",[164,165,167,168],"h3",{"id":166},"recommended-nuxthubkv","Recommended: ",[169,170,171],"code",{},"@nuxthub/kv",[144,173,174,175,177,178,183],{},"Use ",[169,176,171],{}," to import the KV storage. This works everywhere, including in Nuxt server routes and external bundlers like ",[148,179,182],{"href":180,"rel":181},"https://useworkflow.dev",[152],"Workflow",":",[185,186,191],"pre",{"className":187,"code":188,"language":189,"meta":190,"style":190},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { kv } from '@nuxthub/kv'\n","ts","",[169,192,193],{"__ignoreMap":190},[194,195,198,202,206,210,213,216,219,222],"span",{"class":196,"line":197},"line",1,[194,199,201],{"class":200},"s7zQu","import",[194,203,205],{"class":204},"sMK4o"," {",[194,207,209],{"class":208},"sTEyZ"," kv",[194,211,212],{"class":204}," }",[194,214,215],{"class":200}," from",[194,217,218],{"class":204}," '",[194,220,171],{"class":221},"sfazB",[194,223,224],{"class":204},"'\n",[226,227,229,230,234],"tip",{"icon":228},"i-lucide-sparkles","This is the ",[231,232,233],"strong",{},"recommended approach"," as it works with both Nuxt and external tools that bundle your code independently.",[164,236,238,239],{"id":237},"legacy-hubkv","Legacy: ",[169,240,241],{},"hub:kv",[144,243,244,245,247],{},"The virtual module ",[169,246,241],{}," is still supported for backwards compatibility (Nuxt only):",[185,249,251],{"className":187,"code":250,"language":189,"meta":190,"style":190},"import { kv } from 'hub:kv'\n",[169,252,253],{"__ignoreMap":190},[194,254,255,257,259,261,263,265,267,269],{"class":196,"line":197},[194,256,201],{"class":200},[194,258,205],{"class":204},[194,260,209],{"class":208},[194,262,212],{"class":204},[194,264,215],{"class":200},[194,266,218],{"class":204},[194,268,241],{"class":221},[194,270,224],{"class":204},[226,272,273,276],{},[169,274,275],{},"kv"," is auto-imported on the server-side, so you can use it directly without importing.",[156,278,280],{"id":279},"set-an-item","Set an item",[144,282,283],{},"Puts an item in the storage.",[185,285,287],{"className":187,"code":286,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nawait kv.set('vue', { year: 2014 })\n\n// using prefixes to organize your KV namespace, useful for the `keys` operation\nawait kv.set('vue:nuxt', { year: 2016 })\n",[169,288,289,307,314,360,365,372],{"__ignoreMap":190},[194,290,291,293,295,297,299,301,303,305],{"class":196,"line":197},[194,292,201],{"class":200},[194,294,205],{"class":204},[194,296,209],{"class":208},[194,298,212],{"class":204},[194,300,215],{"class":200},[194,302,218],{"class":204},[194,304,171],{"class":221},[194,306,224],{"class":204},[194,308,310],{"class":196,"line":309},2,[194,311,313],{"emptyLinePlaceholder":312},true,"\n",[194,315,317,320,322,325,329,332,335,338,340,343,345,349,351,355,357],{"class":196,"line":316},3,[194,318,319],{"class":200},"await",[194,321,209],{"class":208},[194,323,324],{"class":204},".",[194,326,328],{"class":327},"s2Zo4","set",[194,330,331],{"class":208},"(",[194,333,334],{"class":204},"'",[194,336,337],{"class":221},"vue",[194,339,334],{"class":204},[194,341,342],{"class":204},",",[194,344,205],{"class":204},[194,346,348],{"class":347},"swJcz"," year",[194,350,183],{"class":204},[194,352,354],{"class":353},"sbssI"," 2014",[194,356,212],{"class":204},[194,358,359],{"class":208},")\n",[194,361,363],{"class":196,"line":362},4,[194,364,313],{"emptyLinePlaceholder":312},[194,366,368],{"class":196,"line":367},5,[194,369,371],{"class":370},"sHwdD","// using prefixes to organize your KV namespace, useful for the `keys` operation\n",[194,373,375,377,379,381,383,385,387,390,392,394,396,398,400,403,405],{"class":196,"line":374},6,[194,376,319],{"class":200},[194,378,209],{"class":208},[194,380,324],{"class":204},[194,382,328],{"class":327},[194,384,331],{"class":208},[194,386,334],{"class":204},[194,388,389],{"class":221},"vue:nuxt",[194,391,334],{"class":204},[194,393,342],{"class":204},[194,395,205],{"class":204},[194,397,348],{"class":347},[194,399,183],{"class":204},[194,401,402],{"class":353}," 2016",[194,404,212],{"class":204},[194,406,359],{"class":208},[408,409,410],"note",{},"The maximum size of a value is 25 MiB and the maximum length of a key is 512 bytes.",[412,413,415],"h4",{"id":414},"expiration","Expiration",[144,417,418,419,425],{},"By default, items in your KV namespace will never expire. You can delete them manually using the ",[148,420,422],{"href":421},"#delete-an-item",[169,423,424],{},"del()"," method or set a TTL (time to live) in seconds.",[144,427,428,429,432,433,440],{},"The item will be deleted after the TTL has expired. The ",[169,430,431],{},"ttl"," option maps to Cloudflare's ",[148,434,437],{"href":435,"rel":436},"https://developers.cloudflare.com/kv/api/write-key-value-pairs/#reference",[152],[169,438,439],{},"expirationTtl"," option. Values that have recently been read will continue to return the cached value for up to 60 seconds and may not be immediately deleted for all regions.",[185,442,444],{"className":187,"code":443,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nawait kv.set('vue:nuxt', { year: 2016 }, { ttl: 60 })\n",[169,445,446,464,468],{"__ignoreMap":190},[194,447,448,450,452,454,456,458,460,462],{"class":196,"line":197},[194,449,201],{"class":200},[194,451,205],{"class":204},[194,453,209],{"class":208},[194,455,212],{"class":204},[194,457,215],{"class":200},[194,459,218],{"class":204},[194,461,171],{"class":221},[194,463,224],{"class":204},[194,465,466],{"class":196,"line":309},[194,467,313],{"emptyLinePlaceholder":312},[194,469,470,472,474,476,478,480,482,484,486,488,490,492,494,496,499,501,504,506,509,511],{"class":196,"line":316},[194,471,319],{"class":200},[194,473,209],{"class":208},[194,475,324],{"class":204},[194,477,328],{"class":327},[194,479,331],{"class":208},[194,481,334],{"class":204},[194,483,389],{"class":221},[194,485,334],{"class":204},[194,487,342],{"class":204},[194,489,205],{"class":204},[194,491,348],{"class":347},[194,493,183],{"class":204},[194,495,402],{"class":353},[194,497,498],{"class":204}," },",[194,500,205],{"class":204},[194,502,503],{"class":347}," ttl",[194,505,183],{"class":204},[194,507,508],{"class":353}," 60",[194,510,212],{"class":204},[194,512,359],{"class":208},[156,514,516],{"id":515},"get-an-item","Get an item",[144,518,519],{},"Retrieves an item from the Key-Value storage.",[185,521,523],{"className":187,"code":522,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nconst vue = await kv.get('vue')\n/*\n{\n  year: 2014\n}\n*/\n",[169,524,525,543,547,579,584,589,594,600],{"__ignoreMap":190},[194,526,527,529,531,533,535,537,539,541],{"class":196,"line":197},[194,528,201],{"class":200},[194,530,205],{"class":204},[194,532,209],{"class":208},[194,534,212],{"class":204},[194,536,215],{"class":200},[194,538,218],{"class":204},[194,540,171],{"class":221},[194,542,224],{"class":204},[194,544,545],{"class":196,"line":309},[194,546,313],{"emptyLinePlaceholder":312},[194,548,549,553,556,559,562,564,566,569,571,573,575,577],{"class":196,"line":316},[194,550,552],{"class":551},"spNyl","const",[194,554,555],{"class":208}," vue ",[194,557,558],{"class":204},"=",[194,560,561],{"class":200}," await",[194,563,209],{"class":208},[194,565,324],{"class":204},[194,567,568],{"class":327},"get",[194,570,331],{"class":208},[194,572,334],{"class":204},[194,574,337],{"class":221},[194,576,334],{"class":204},[194,578,359],{"class":208},[194,580,581],{"class":196,"line":362},[194,582,583],{"class":370},"/*\n",[194,585,586],{"class":196,"line":367},[194,587,588],{"class":370},"{\n",[194,590,591],{"class":196,"line":374},[194,592,593],{"class":370},"  year: 2014\n",[194,595,597],{"class":196,"line":596},7,[194,598,599],{"class":370},"}\n",[194,601,603],{"class":196,"line":602},8,[194,604,605],{"class":370},"*/\n",[156,607,609],{"id":608},"has-an-item","Has an item",[144,611,612],{},"Checks if an item exists in the storage.",[185,614,616],{"className":187,"code":615,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nconst hasAngular = await kv.has('angular') // false\nconst hasVue = await kv.has('vue') // true\n",[169,617,618,636,640,673],{"__ignoreMap":190},[194,619,620,622,624,626,628,630,632,634],{"class":196,"line":197},[194,621,201],{"class":200},[194,623,205],{"class":204},[194,625,209],{"class":208},[194,627,212],{"class":204},[194,629,215],{"class":200},[194,631,218],{"class":204},[194,633,171],{"class":221},[194,635,224],{"class":204},[194,637,638],{"class":196,"line":309},[194,639,313],{"emptyLinePlaceholder":312},[194,641,642,644,647,649,651,653,655,658,660,662,665,667,670],{"class":196,"line":316},[194,643,552],{"class":551},[194,645,646],{"class":208}," hasAngular ",[194,648,558],{"class":204},[194,650,561],{"class":200},[194,652,209],{"class":208},[194,654,324],{"class":204},[194,656,657],{"class":327},"has",[194,659,331],{"class":208},[194,661,334],{"class":204},[194,663,664],{"class":221},"angular",[194,666,334],{"class":204},[194,668,669],{"class":208},") ",[194,671,672],{"class":370},"// false\n",[194,674,675,677,680,682,684,686,688,690,692,694,696,698,700],{"class":196,"line":362},[194,676,552],{"class":551},[194,678,679],{"class":208}," hasVue ",[194,681,558],{"class":204},[194,683,561],{"class":200},[194,685,209],{"class":208},[194,687,324],{"class":204},[194,689,657],{"class":327},[194,691,331],{"class":208},[194,693,334],{"class":204},[194,695,337],{"class":221},[194,697,334],{"class":204},[194,699,669],{"class":208},[194,701,702],{"class":370},"// true\n",[156,704,706],{"id":705},"delete-an-item","Delete an item",[144,708,709],{},"Delete an item with the given key from the storage.",[185,711,713],{"className":187,"code":712,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nawait kv.del('react')\n",[169,714,715,733,737],{"__ignoreMap":190},[194,716,717,719,721,723,725,727,729,731],{"class":196,"line":197},[194,718,201],{"class":200},[194,720,205],{"class":204},[194,722,209],{"class":208},[194,724,212],{"class":204},[194,726,215],{"class":200},[194,728,218],{"class":204},[194,730,171],{"class":221},[194,732,224],{"class":204},[194,734,735],{"class":196,"line":309},[194,736,313],{"emptyLinePlaceholder":312},[194,738,739,741,743,745,748,750,752,755,757],{"class":196,"line":316},[194,740,319],{"class":200},[194,742,209],{"class":208},[194,744,324],{"class":204},[194,746,747],{"class":327},"del",[194,749,331],{"class":208},[194,751,334],{"class":204},[194,753,754],{"class":221},"react",[194,756,334],{"class":204},[194,758,359],{"class":208},[156,760,762],{"id":761},"clear-the-kv-namespace","Clear the KV namespace",[144,764,765],{},"Deletes all items from the KV namespace..",[185,767,769],{"className":187,"code":768,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nawait kv.clear()\n",[169,770,771,789,793],{"__ignoreMap":190},[194,772,773,775,777,779,781,783,785,787],{"class":196,"line":197},[194,774,201],{"class":200},[194,776,205],{"class":204},[194,778,209],{"class":208},[194,780,212],{"class":204},[194,782,215],{"class":200},[194,784,218],{"class":204},[194,786,171],{"class":221},[194,788,224],{"class":204},[194,790,791],{"class":196,"line":309},[194,792,313],{"emptyLinePlaceholder":312},[194,794,795,797,799,801,804],{"class":196,"line":316},[194,796,319],{"class":200},[194,798,209],{"class":208},[194,800,324],{"class":204},[194,802,803],{"class":327},"clear",[194,805,806],{"class":208},"()\n",[144,808,809],{},"To delete all items for a specific prefix, you can pass the prefix as an argument. We recommend using prefixes for better organization in your KV namespace.",[185,811,813],{"className":187,"code":812,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nawait kv.clear('react')\n",[169,814,815,833,837],{"__ignoreMap":190},[194,816,817,819,821,823,825,827,829,831],{"class":196,"line":197},[194,818,201],{"class":200},[194,820,205],{"class":204},[194,822,209],{"class":208},[194,824,212],{"class":204},[194,826,215],{"class":200},[194,828,218],{"class":204},[194,830,171],{"class":221},[194,832,224],{"class":204},[194,834,835],{"class":196,"line":309},[194,836,313],{"emptyLinePlaceholder":312},[194,838,839,841,843,845,847,849,851,853,855],{"class":196,"line":316},[194,840,319],{"class":200},[194,842,209],{"class":208},[194,844,324],{"class":204},[194,846,803],{"class":327},[194,848,331],{"class":208},[194,850,334],{"class":204},[194,852,754],{"class":221},[194,854,334],{"class":204},[194,856,359],{"class":208},[156,858,860],{"id":859},"list-all-keys","List all keys",[144,862,863],{},"Retrieves all keys from the KV storage.",[185,865,867],{"className":187,"code":866,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nconst keys = await kv.keys()\n/*\n[\n  'react',\n  'react:gatsby',\n  'react:next',\n  'vue',\n  'vue:nuxt',\n  'vue:quasar'\n]\n",[169,868,869,887,891,911,915,920,925,930,935,941,947,953],{"__ignoreMap":190},[194,870,871,873,875,877,879,881,883,885],{"class":196,"line":197},[194,872,201],{"class":200},[194,874,205],{"class":204},[194,876,209],{"class":208},[194,878,212],{"class":204},[194,880,215],{"class":200},[194,882,218],{"class":204},[194,884,171],{"class":221},[194,886,224],{"class":204},[194,888,889],{"class":196,"line":309},[194,890,313],{"emptyLinePlaceholder":312},[194,892,893,895,898,900,902,904,906,909],{"class":196,"line":316},[194,894,552],{"class":551},[194,896,897],{"class":208}," keys ",[194,899,558],{"class":204},[194,901,561],{"class":200},[194,903,209],{"class":208},[194,905,324],{"class":204},[194,907,908],{"class":327},"keys",[194,910,806],{"class":208},[194,912,913],{"class":196,"line":362},[194,914,583],{"class":370},[194,916,917],{"class":196,"line":367},[194,918,919],{"class":370},"[\n",[194,921,922],{"class":196,"line":374},[194,923,924],{"class":370},"  'react',\n",[194,926,927],{"class":196,"line":596},[194,928,929],{"class":370},"  'react:gatsby',\n",[194,931,932],{"class":196,"line":602},[194,933,934],{"class":370},"  'react:next',\n",[194,936,938],{"class":196,"line":937},9,[194,939,940],{"class":370},"  'vue',\n",[194,942,944],{"class":196,"line":943},10,[194,945,946],{"class":370},"  'vue:nuxt',\n",[194,948,950],{"class":196,"line":949},11,[194,951,952],{"class":370},"  'vue:quasar'\n",[194,954,956],{"class":196,"line":955},12,[194,957,958],{"class":370},"]\n",[144,960,961],{},"To get the keys starting with a specific prefix, you can pass the prefix as an argument. We recommend using prefixes for better organization in your KV namespace.",[185,963,965],{"className":187,"code":964,"language":189,"meta":190,"style":190},"import { kv } from '@nuxthub/kv'\n\nconst vueKeys = await kv.keys('vue')\n/*\n[\n  'vue:nuxt',\n  'vue:quasar'\n]\n*/\n",[169,966,967,985,989,1016,1020,1024,1028,1032,1036],{"__ignoreMap":190},[194,968,969,971,973,975,977,979,981,983],{"class":196,"line":197},[194,970,201],{"class":200},[194,972,205],{"class":204},[194,974,209],{"class":208},[194,976,212],{"class":204},[194,978,215],{"class":200},[194,980,218],{"class":204},[194,982,171],{"class":221},[194,984,224],{"class":204},[194,986,987],{"class":196,"line":309},[194,988,313],{"emptyLinePlaceholder":312},[194,990,991,993,996,998,1000,1002,1004,1006,1008,1010,1012,1014],{"class":196,"line":316},[194,992,552],{"class":551},[194,994,995],{"class":208}," vueKeys ",[194,997,558],{"class":204},[194,999,561],{"class":200},[194,1001,209],{"class":208},[194,1003,324],{"class":204},[194,1005,908],{"class":327},[194,1007,331],{"class":208},[194,1009,334],{"class":204},[194,1011,337],{"class":221},[194,1013,334],{"class":204},[194,1015,359],{"class":208},[194,1017,1018],{"class":196,"line":362},[194,1019,583],{"class":370},[194,1021,1022],{"class":196,"line":367},[194,1023,919],{"class":370},[194,1025,1026],{"class":196,"line":374},[194,1027,946],{"class":370},[194,1029,1030],{"class":196,"line":596},[194,1031,952],{"class":370},[194,1033,1034],{"class":196,"line":602},[194,1035,958],{"class":370},[194,1037,1038],{"class":196,"line":937},[194,1039,605],{"class":370},[1041,1042,1043],"style",{},"html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}",{"title":190,"searchDepth":309,"depth":309,"links":1045},[1046,1052,1053,1054,1055,1056,1057],{"id":158,"depth":309,"text":159,"children":1047},[1048,1050],{"id":166,"depth":316,"text":1049},"Recommended: @nuxthub/kv",{"id":237,"depth":316,"text":1051},"Legacy: hub:kv",{"id":279,"depth":309,"text":280},{"id":515,"depth":309,"text":516},{"id":608,"depth":309,"text":609},{"id":705,"depth":309,"text":706},{"id":761,"depth":309,"text":762},{"id":859,"depth":309,"text":860},"Learn how to use the KV SDK to store, retrieve, update, and delete key-value pairs in your Nuxt application, with practical examples and best practices.","md",null,{},{"title":80},{"title":139,"description":1058},"qD-nqAlUDvWLvX1_Xf2ghapZeG4nCfNFbVHw5kc9HTo",[1066,1068],{"title":40,"path":75,"stem":76,"description":1067,"children":-1},"Set up Key-Value Storage in your Nuxt application, including installation, environment configuration, and connecting to your KV database.",{"title":40,"path":86,"stem":87,"description":1069,"children":-1},"Configure caching in your Nuxt application, including setup for pages, API routes, and serverless functions to improve performance and reduce load.",1773885581202]