[{"data":1,"prerenderedAt":849},["ShallowReactive",2],{"navigation":3,"/docs/advanced/api-surface":186,"/docs/advanced/api-surface-surround":844},[4],{"title":5,"path":6,"stem":7,"children":8,"page":39},"Docs","/docs","docs",[9,40,60,78,100,114,158],{"title":10,"path":11,"stem":12,"children":13,"page":39},"Guide","/docs/guide","docs/1.guide",[14,19,24,29,34],{"title":15,"path":16,"stem":17,"icon":18},"Getting Started","/docs/guide/get-started","docs/1.guide/1.get-started","i-lucide-rocket",{"title":20,"path":21,"stem":22,"icon":23},"Basics","/docs/guide/basics","docs/1.guide/2.basics","i-lucide-book-open",{"title":25,"path":26,"stem":27,"icon":28},"Authentication","/docs/guide/auth","docs/1.guide/3.auth","i-lucide-shield-check",{"title":30,"path":31,"stem":32,"icon":33},"Permissions","/docs/guide/permissions","docs/1.guide/4.permissions","i-lucide-shield",{"title":35,"path":36,"stem":37,"icon":38},"Core Concepts","/docs/guide/concepts","docs/1.guide/5.concepts","i-lucide-lightbulb",false,{"title":41,"path":42,"stem":43,"children":44,"page":39},"Data Fetching","/docs/data-fetching","docs/2.data-fetching",[45,50,55],{"title":46,"path":47,"stem":48,"icon":49},"Fetching Data","/docs/data-fetching/queries","docs/2.data-fetching/1.queries","i-lucide-database",{"title":51,"path":52,"stem":53,"icon":54},"Pagination","/docs/data-fetching/pagination","docs/2.data-fetching/2.pagination","i-lucide-list",{"title":56,"path":57,"stem":58,"icon":59},"Caching & Data Reuse","/docs/data-fetching/caching-reuse","docs/2.data-fetching/3.caching-reuse","i-lucide-database-zap",{"title":61,"path":62,"stem":63,"children":64,"page":39},"Mutations","/docs/mutations","docs/3.mutations",[65,69,74],{"title":61,"path":66,"stem":67,"icon":68},"/docs/mutations/mutations","docs/3.mutations/1.mutations","i-lucide-pen-tool",{"title":70,"path":71,"stem":72,"icon":73},"Actions","/docs/mutations/actions","docs/3.mutations/2.actions","i-lucide-zap",{"title":75,"path":76,"stem":77,"icon":73},"Optimistic Updates","/docs/mutations/optimistic-updates","docs/3.mutations/3.optimistic-updates",{"title":79,"path":80,"stem":81,"children":82,"page":39},"Auth Security","/docs/auth-security","docs/4.auth-security",[83,87,91,95],{"title":84,"path":85,"stem":86,"icon":28},"Permissions Setup","/docs/auth-security/permissions-setup","docs/4.auth-security/0.permissions-setup",{"title":25,"path":88,"stem":89,"icon":90},"/docs/auth-security/authentication","docs/4.auth-security/1.authentication","i-lucide-lock",{"title":92,"path":93,"stem":94,"icon":33},"Permissions Reference","/docs/auth-security/permissions","docs/4.auth-security/2.permissions",{"title":96,"path":97,"stem":98,"icon":99},"Standard Role Template","/docs/auth-security/standard-role-template","docs/4.auth-security/3.standard-role-template","i-lucide-file-check",{"title":101,"path":102,"stem":103,"children":104,"page":39},"Server Side","/docs/server-side","docs/5.server-side",[105,110],{"title":106,"path":107,"stem":108,"icon":109},"Server Routes","/docs/server-side/server-routes","docs/5.server-side/1.server-routes","i-lucide-server",{"title":111,"path":112,"stem":113,"icon":109},"SSR & Hydration","/docs/server-side/ssr-hydration","docs/5.server-side/2.ssr-hydration",{"title":115,"path":116,"stem":117,"children":118,"page":39},"Advanced","/docs/advanced","docs/6.advanced",[119,124,129,134,139,144,149,154],{"title":120,"path":121,"stem":122,"icon":123},"Connection State","/docs/advanced/connection-state","docs/6.advanced/1.connection-state","i-lucide-wifi",{"title":125,"path":126,"stem":127,"icon":128},"Client Access","/docs/advanced/client-access","docs/6.advanced/2.client-access","i-lucide-box",{"title":130,"path":131,"stem":132,"icon":133},"Performance","/docs/advanced/performance","docs/6.advanced/3.performance","i-lucide-gauge",{"title":135,"path":136,"stem":137,"icon":138},"Error Handling","/docs/advanced/error-handling","docs/6.advanced/4.error-handling","i-lucide-alert-circle",{"title":140,"path":141,"stem":142,"icon":143},"File Storage","/docs/advanced/file-storage","docs/6.advanced/5.file-storage","i-lucide-upload",{"title":145,"path":146,"stem":147,"icon":148},"Logging","/docs/advanced/logging","docs/6.advanced/6.logging","i-lucide-scroll-text",{"title":150,"path":151,"stem":152,"icon":153},"Module Configuration","/docs/advanced/module-config","docs/6.advanced/7.module-config","i-lucide-settings",{"title":155,"path":156,"stem":157,"icon":54},"API Surface","/docs/advanced/api-surface","docs/6.advanced/8.api-surface",{"title":159,"path":160,"stem":161,"children":162,"page":39},"Recipes","/docs/recipes","docs/7.recipes",[163,168,173,178,182],{"title":164,"path":165,"stem":166,"icon":167},"Protected Dashboard","/docs/recipes/protected-dashboard","docs/7.recipes/1.protected-dashboard","i-lucide-layout-dashboard",{"title":169,"path":170,"stem":171,"icon":172},"Real-Time Feed","/docs/recipes/realtime-feed","docs/7.recipes/2.realtime-feed","i-lucide-messages-square",{"title":174,"path":175,"stem":176,"icon":177},"User Augmentation","/docs/recipes/user-augmentation","docs/7.recipes/3.user-augmentation","i-lucide-user-round-cog",{"title":179,"path":180,"stem":181,"icon":28},"Auth Guards and Permissions","/docs/recipes/auth-guards-and-permissions","docs/7.recipes/4.auth-guards-and-permissions",{"title":183,"path":184,"stem":185,"icon":73},"Instant List → Detail Navigation","/docs/recipes/instant-list-detail-cache-reuse","docs/7.recipes/5.instant-list-detail-cache-reuse",{"id":187,"title":155,"body":188,"description":836,"extension":837,"links":838,"meta":839,"navigation":840,"path":156,"seo":841,"sitemap":842,"stem":157,"__hash__":843},"docs/docs/6.advanced/8.api-surface.md",{"type":189,"value":190,"toc":830},"minimark",[191,195,198,232,235,246,249,272,277,656,660,741,745,826],[192,193,194],"p",{},"This page is generated from module entrypoints and runtime component files.",[192,196,197],{},"Source of truth:",[199,200,201,211,218,225],"ul",{},[202,203,204],"li",{},[205,206,210],"a",{"href":207,"rel":208},"https://github.com/lupinum-dev/better-convex-nuxt/blob/main/src/module.ts",[209],"nofollow","src/module.ts",[202,212,213],{},[205,214,217],{"href":215,"rel":216},"https://github.com/lupinum-dev/better-convex-nuxt/blob/main/src/runtime/composables/index.ts",[209],"src/runtime/composables/index.ts",[202,219,220],{},[205,221,224],{"href":222,"rel":223},"https://github.com/lupinum-dev/better-convex-nuxt/tree/main/src/runtime/server/utils",[209],"src/runtime/server/utils",[202,226,227],{},[205,228,231],{"href":229,"rel":230},"https://github.com/lupinum-dev/better-convex-nuxt/tree/main/src/runtime/components",[209],"src/runtime/components",[192,233,234],{},"This reference answers:",[199,236,237,240,243],{},[202,238,239],{},"Which APIs are auto-imported?",[202,241,242],{},"What is each API for?",[202,244,245],{},"Where is the best guide for examples and deeper usage?",[192,247,248],{},"Regenerate this page with:",[250,251,256],"pre",{"className":252,"code":253,"language":254,"meta":255,"style":255},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","node scripts/generate-api-surface.mjs\n","bash","",[257,258,259],"code",{"__ignoreMap":255},[260,261,264,268],"span",{"class":262,"line":263},"line",1,[260,265,267],{"class":266},"sBMFI","node",[260,269,271],{"class":270},"sfazB"," scripts/generate-api-surface.mjs\n",[273,274,276],"h2",{"id":275},"composable-auto-imports","Composable Auto-Imports",[278,279,280,299],"table",{},[281,282,283],"thead",{},[284,285,286,290,293,296],"tr",{},[287,288,289],"th",{},"Name",[287,291,292],{},"Kind",[287,294,295],{},"Purpose",[287,297,298],{},"Learn More",[300,301,302,320,337,353,369,385,401,417,433,449,464,480,497,513,529,544,560,576,592,608,624,640],"tbody",{},[284,303,304,310,313,316],{},[305,306,307],"td",{},[257,308,309],{},"createPermissions",[305,311,312],{},"Factory",[305,314,315],{},"Builds a typed permission API for route/UI guards and capability checks.",[305,317,318],{},[205,319,10],{"href":93},[284,321,322,327,330,333],{},[305,323,324],{},[257,325,326],{},"defineSharedConvexQuery",[305,328,329],{},"Helper",[305,331,332],{},"Auto-imported runtime API provided by this module.",[305,334,335],{},[205,336,10],{"href":16},[284,338,339,344,346,349],{},[305,340,341],{},[257,342,343],{},"deleteFromPaginatedQuery",[305,345,329],{},[305,347,348],{},"Optimistically removes an item from a paginated query cache.",[305,350,351],{},[205,352,10],{"href":76},[284,354,355,360,362,365],{},[305,356,357],{},[257,358,359],{},"deleteFromQuery",[305,361,329],{},[305,363,364],{},"Optimistically removes an item from a regular query cache.",[305,366,367],{},[205,368,10],{"href":76},[284,370,371,376,378,381],{},[305,372,373],{},[257,374,375],{},"insertAtBottomIfLoaded",[305,377,329],{},[305,379,380],{},"Optimistically inserts an item at the end of paginated data when loaded.",[305,382,383],{},[205,384,10],{"href":76},[284,386,387,392,394,397],{},[305,388,389],{},[257,390,391],{},"insertAtPosition",[305,393,329],{},[305,395,396],{},"Optimistically inserts an item at a custom position in paginated data.",[305,398,399],{},[205,400,10],{"href":76},[284,402,403,408,410,413],{},[305,404,405],{},[257,406,407],{},"insertAtTop",[305,409,329],{},[305,411,412],{},"Optimistically inserts an item at the top of paginated data.",[305,414,415],{},[205,416,10],{"href":76},[284,418,419,424,426,429],{},[305,420,421],{},[257,422,423],{},"setQueryData",[305,425,329],{},[305,427,428],{},"Replaces cached query data with a new value.",[305,430,431],{},[205,432,10],{"href":57},[284,434,435,440,442,445],{},[305,436,437],{},[257,438,439],{},"updateAllQueries",[305,441,329],{},[305,443,444],{},"Applies an updater across multiple cached query results.",[305,446,447],{},[205,448,10],{"href":57},[284,450,451,456,458,460],{},[305,452,453],{},[257,454,455],{},"updateInPaginatedQuery",[305,457,329],{},[305,459,332],{},[305,461,462],{},[205,463,10],{"href":16},[284,465,466,471,473,476],{},[305,467,468],{},[257,469,470],{},"updateQuery",[305,472,329],{},[305,474,475],{},"Applies an updater to one cached query result.",[305,477,478],{},[205,479,10],{"href":57},[284,481,482,487,490,493],{},[305,483,484],{},[257,485,486],{},"useConvex",[305,488,489],{},"Composable",[305,491,492],{},"Gives direct access to the underlying Convex client.",[305,494,495],{},[205,496,10],{"href":21},[284,498,499,504,506,509],{},[305,500,501],{},[257,502,503],{},"useConvexAction",[305,505,489],{},[305,507,508],{},"Runs Convex actions with reactive status and error handling.",[305,510,511],{},[205,512,10],{"href":71},[284,514,515,520,522,525],{},[305,516,517],{},[257,518,519],{},"useConvexAuth",[305,521,489],{},[305,523,524],{},"Tracks auth state and user/session information in Nuxt.",[305,526,527],{},[205,528,10],{"href":88},[284,530,531,536,538,540],{},[305,532,533],{},[257,534,535],{},"useConvexCall",[305,537,489],{},[305,539,332],{},[305,541,542],{},[205,543,10],{"href":16},[284,545,546,551,553,556],{},[305,547,548],{},[257,549,550],{},"useConvexConnectionState",[305,552,489],{},[305,554,555],{},"Observes live WebSocket connection state to Convex.",[305,557,558],{},[205,559,10],{"href":121},[284,561,562,567,569,572],{},[305,563,564],{},[257,565,566],{},"useConvexFileUpload",[305,568,489],{},[305,570,571],{},"Uploads files to Convex storage with progress tracking.",[305,573,574],{},[205,575,10],{"href":141},[284,577,578,583,585,588],{},[305,579,580],{},[257,581,582],{},"useConvexMutation",[305,584,489],{},[305,586,587],{},"Runs Convex mutations with status, errors, and optimistic hooks.",[305,589,590],{},[205,591,10],{"href":66},[284,593,594,599,601,604],{},[305,595,596],{},[257,597,598],{},"useConvexPaginatedQuery",[305,600,489],{},[305,602,603],{},"Fetches and paginates query results with real-time updates.",[305,605,606],{},[205,607,10],{"href":52},[284,609,610,615,617,620],{},[305,611,612],{},[257,613,614],{},"useConvexQuery",[305,616,489],{},[305,618,619],{},"Fetches reactive query data with SSR and subscription support.",[305,621,622],{},[205,623,10],{"href":47},[284,625,626,631,633,636],{},[305,627,628],{},[257,629,630],{},"useConvexStorageUrl",[305,632,489],{},[305,634,635],{},"Resolves Convex file storage IDs to usable URLs.",[305,637,638],{},[205,639,10],{"href":141},[284,641,642,647,649,652],{},[305,643,644],{},[257,645,646],{},"useConvexUploadQueue",[305,648,489],{},[305,650,651],{},"Queues and coordinates concurrent file uploads.",[305,653,654],{},[205,655,10],{"href":141},[273,657,659],{"id":658},"server-auto-imports","Server Auto-Imports",[278,661,662,674],{},[281,663,664],{},[284,665,666,668,670,672],{},[287,667,289],{},[287,669,292],{},[287,671,295],{},[287,673,298],{},[300,675,676,693,709,725],{},[284,677,678,683,686,689],{},[305,679,680],{},[257,681,682],{},"serverConvexAction",[305,684,685],{},"Server helper",[305,687,688],{},"Runs a Convex action from server routes/handlers.",[305,690,691],{},[205,692,10],{"href":107},[284,694,695,700,702,705],{},[305,696,697],{},[257,698,699],{},"serverConvexClearAuthCache",[305,701,685],{},[305,703,704],{},"Clears cached auth token state used by server calls.",[305,706,707],{},[205,708,10],{"href":112},[284,710,711,716,718,721],{},[305,712,713],{},[257,714,715],{},"serverConvexMutation",[305,717,685],{},[305,719,720],{},"Runs a Convex mutation from server routes/handlers.",[305,722,723],{},[205,724,10],{"href":107},[284,726,727,732,734,737],{},[305,728,729],{},[257,730,731],{},"serverConvexQuery",[305,733,685],{},[305,735,736],{},"Runs a Convex query from server routes/handlers.",[305,738,739],{},[205,740,10],{"href":107},[273,742,744],{"id":743},"global-auth-components","Global Auth Components",[278,746,747,759],{},[281,748,749],{},[284,750,751,753,755,757],{},[287,752,289],{},[287,754,292],{},[287,756,295],{},[287,758,298],{},[300,760,761,778,794,810],{},[284,762,763,768,771,774],{},[305,764,765],{},[257,766,767],{},"\u003CConvexAuthenticated>",[305,769,770],{},"Component",[305,772,773],{},"Renders slot content only for authenticated users.",[305,775,776],{},[205,777,10],{"href":88},[284,779,780,785,787,790],{},[305,781,782],{},[257,783,784],{},"\u003CConvexAuthError>",[305,786,770],{},[305,788,789],{},"Renders slot content when auth resolves with an error.",[305,791,792],{},[205,793,10],{"href":88},[284,795,796,801,803,806],{},[305,797,798],{},[257,799,800],{},"\u003CConvexAuthLoading>",[305,802,770],{},[305,804,805],{},"Renders slot content while auth state is still loading.",[305,807,808],{},[205,809,10],{"href":88},[284,811,812,817,819,822],{},[305,813,814],{},[257,815,816],{},"\u003CConvexUnauthenticated>",[305,818,770],{},[305,820,821],{},"Renders slot content only for signed-out users.",[305,823,824],{},[205,825,10],{"href":88},[827,828,829],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}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);}",{"title":255,"searchDepth":263,"depth":831,"links":832},2,[833,834,835],{"id":275,"depth":831,"text":276},{"id":658,"depth":831,"text":659},{"id":743,"depth":831,"text":744},"Generated reference of auto-imported composables, server helpers, and global auth components.","md",null,{},{"icon":54},{"title":155,"description":836},{"loc":156},"DYQz1UJLNUnlpreXQgdLtg-t0f8n7w0qZj2gAD2fY1U",[845,847],{"title":150,"path":151,"stem":152,"description":846,"icon":153,"children":-1},"Complete reference for all nuxt.config.ts convex options.",{"title":164,"path":165,"stem":166,"description":848,"icon":167,"children":-1},"Protect a dashboard page with definePageMeta and role checks.",1772891786871]