export declare const SSR_NOTE = "\n > **SSR Configuration**: When using Server-Side Rendering use *ssr: true*: `createVuetify({ ssr: true })`\n"; export declare const FRESH_INSTALLATION_PLATFORMS: { readonly vite: "\n ```bash\n npm create vite@latest -- --template vue\n [pnpm|yarn|bun] create vite@latest --template vue\n ```\n "; readonly nuxt: "\n ```bash\n [npm|pnpm|yarn|bun] create nuxt \n ```\n "; readonly vitepress: "\n ```bash\n [npm|pnpm|yarn|bun] vitepress\n # OR\n [npx|pnpm|yarn|bun] vitepress init\n ```\n "; readonly vuetify: "\n ```bash\n [npm|pnpm|yarn|bun] create vuetify \n ```\n "; }; export declare const INSTALLATION_PLATFORMS: { readonly vite: { readonly name: "Vite"; readonly description: "Installation guide for Vite projects."; readonly markdown: "\n # Dependencies\n ```bash\n [npm|pnpm|yarn|bun] install vue vuetify @mdi/font vite @vitejs/plugin-vue vite-plugin-vuetify unplugin-fonts\n ```\n # Files\n ```ts [src/plugins/vuetify.ts]\n import '@mdi/font/css/materialdesignicons.css'\n import 'vuetify/styles'\n import { createVuetify } from 'vuetify'\n\n export default createVuetify()\n ```\n ```ts [src/main.ts]\n import { createApp } from 'vue'\n import App from './App.vue'\n import vuetify from './plugins/vuetify'\n\n const app = createApp(App)\n app.use(vuetify).mount('#app')\n ```\n ```ts [vite.config.ts]\n import { defineConfig } from 'vite'\n import Vue from '@vitejs/plugin-vue'\n import Vuetify, { transformAssetUrls } from 'vite-plugin-vuetify'\n import { fileURLToPath, URL } from 'node:url'\n\n export default defineConfig({\n plugins: [\n Vue({ template: { transformAssetUrls } }),\n Vuetify({ autoImport: true }),\n Fonts({\n google: {\n families: [{\n name: 'Roboto',\n styles: 'wght@100;300;400;500;700;900',\n }],\n },\n })\n ],\n resolve: {\n alias: {\n '@': fileURLToPath(new URL('src', import.meta.url)),\n },\n extensions: [\n '.js',\n '.json',\n '.jsx',\n '.mjs',\n '.ts',\n '.tsx',\n '.vue',\n ],\n },\n })\n ```\n "; }; readonly nuxt: { readonly name: "Nuxt"; readonly description: "Installation guide for Nuxt projects."; readonly markdown: "\n # Dependencies\n ```bash\n [npm|pnpm|yarn|bun] install vue vuetify @mdi/font vite @vitejs/plugin-vue vite-plugin-vuetify unplugin-fonts\n ```\n # Files\n ```ts [nuxt.config.ts]\n import vuetify, { transformAssetUrls } from 'vite-plugin-vuetify'\n\n export default defineNuxtConfig({\n build: {\n transpile: ['vuetify'],\n },\n modules: [\n (_options, nuxt) => {\n nuxt.hooks.hook('vite:extendConfig', (config) => {\n // @ts-expect-error\n config.plugins.push(vuetify({ autoImport: true }))\n })\n },\n ],\n vite: {\n vue: {\n template: {\n transformAssetUrls,\n },\n },\n },\n })\n ```\n ```ts [plugins/vuetify.ts]\n import '@mdi/font/css/materialdesignicons.css'\n import 'vuetify/styles'\n import { createVuetify } from 'vuetify'\n\n export default defineNuxtPlugin((app) => {\n const vuetify = createVuetify()\n app.vueApp.use(vuetify)\n })\n ```\n ```vue [App.vue]\n \n ```\n "; }; readonly 'nuxt-module': { readonly name: "Nuxt Module"; readonly description: "Installation guide for Vuetify Nuxt Module."; readonly markdown: "\n # Nuxt Module Installation\n ```bash\n [npx|pnpm|yarn|bun] nuxi@latest module add vuetify-nuxt-module\n ```\n # Files\n ```ts [nuxt.config.ts]\n import { defineNuxtConfig } from 'nuxt/config'\n\n export default defineNuxtConfig({\n modules: ['vuetify-nuxt-module'],\n vuetify: {\n moduleOptions: {},\n vuetifyOptions: {}\n }\n })\n ```\n "; }; readonly laravel: { readonly name: "Laravel Vite"; readonly description: "Installation guide for Laravel Vite projects."; readonly markdown: "\n # Dependencies\n ```bash\n [npm|pnpm|yarn|bun] install vue vuetify @mdi/font vite @vitejs/plugin-vue vite-plugin-vuetify unplugin-fonts\n ```\n # Files\n ```ts [resources/js/plugins/vuetify.ts]\n import '@mdi/font/css/materialdesignicons.css'\n import 'vuetify/styles'\n import { createVuetify } from 'vuetify'\n\n export default createVuetify()\n ```\n ```ts [resources/js/app.ts]\n import { createApp } from 'vue'\n import App from './App.vue'\n import vuetify from './plugins/vuetify'\n\n const app = createApp(App)\n app.use(vuetify).mount('#app')\n ```\n ```ts [vite.config.ts]\n import { defineConfig } from 'vite'\n import laravel from 'laravel-vite-plugin'\n import vue from '@vitejs/plugin-vue'\n import vuetify, { transformAssetUrls } from 'vite-plugin-vuetify'\n import fonts from 'unplugin-fonts/vite'\n import { fileURLToPath, URL } from 'node:url'\n\n export default defineConfig({\n plugins: [\n laravel({\n input: ['resources/js/app.ts', 'resources/css/app.css'],\n refresh: true,\n }),\n vue({ template: { transformAssetUrls } }),\n vuetify({ autoImport: true }),\n fonts({\n google: {\n families: [{\n name: 'Roboto',\n styles: 'wght@100;300;400;500;700;900',\n }],\n },\n }),\n ],\n resolve: {\n alias: {\n '@': fileURLToPath(new URL('src', import.meta.url)),\n },\n extensions: [\n '.js',\n '.json',\n '.jsx',\n '.mjs',\n '.ts',\n '.tsx',\n '.vue',\n ],\n },\n })\n ```\n "; }; readonly cdn: { readonly name: "CDN"; readonly description: "Installation guide for using Vuetify via CDN."; readonly markdown: "\n # CDN Installation\n To use Vuetify via CDN, include the following links in your HTML file:\n ```html\n \n \n \n \n \n ```\n Then, initialize Vuetify in your JavaScript:\n ```js\n const { createApp } = Vue\n const { createVuetify } = Vuetify\n\n const vuetify = createVuetify()\n const app = createApp()\n app.use(vuetify).mount('#app')\n ```\n"; }; readonly 'cdn-esm': { readonly name: "CDN ES Module"; readonly description: "Installation guide for using Vuetify via CDN with ES Modules."; readonly markdown: "\n # CDN ES Module Installation\n To use Vuetify via CDN with ES Modules, include the following links in your HTML file:\n ```html\n \n \n \n\n \n \n ```\n"; }; readonly vitepress: { readonly name: "VitePress"; readonly description: "Installation guide for VitePress projects."; readonly markdown: "\n # VitePress Installation\n The following dependencies are required to use Vuetify with VitePress:\n - vue, vitepress, vuetify, @mdi/font\n # Files\n ```ts [.vitepress/theme/index.ts]\n import DefaultTheme from 'vitepress/theme'\n import '@mdi/font/css/materialdesignicons.css'\n import 'vuetify/styles'\n import * as components from 'vuetify/components'\n import * as directives from 'vuetify/directives'\n import { createVuetify } from 'vuetify'\n\n const vuetify = createVuetify({\n components,\n directives,\n })\n\n export default {\n ...DefaultTheme,\n enhanceApp({ app }) {\n app.use(vuetify)\n },\n }\n ```\n"; }; readonly vuetify0: { readonly name: "Vuetify0 (@vuetify/v0)"; readonly description: "Installation guide for @vuetify/v0 - a headless meta-framework for building UI libraries."; readonly markdown: "\n # @vuetify/v0 Installation\n\n @vuetify/v0 is a headless meta-framework providing unstyled components and composables for building design systems.\n\n # Dependencies\n ```bash\n [npm|pnpm|yarn|bun] install vue @vuetify/v0\n ```\n\n # Basic Setup\n ```ts [src/main.ts]\n import { createApp } from 'vue'\n import App from './App.vue'\n\n const app = createApp(App)\n app.mount('#app')\n ```\n\n # Usage Example\n ```vue [src/components/Example.vue]\n \n\n \n ```\n\n # Available Composables\n - Foundation: createContext, createTrinity, createPlugin\n - Registration: useRegistry, useProxyRegistry, useQueue, useTimeline, useTokens\n - Selection: createSelection, useSelection, createGroup, useGroup, createSingle, useSingle, createStep, useStep, useFilter\n - Forms: useForm, useProxyModel\n - System: useEventListener, useIntersectionObserver, useKeydown, useMutationObserver, useResizeObserver\n - Plugins: useBreakpoints, useFeatures, useHydration, useLocale, useLogger, usePermissions, useStorage, useTheme\n - Transformers: toArray, toReactive\n\n # Documentation\n - Website: https://0.vuetifyjs.com/\n - GitHub: https://github.com/vuetifyjs/0\n"; }; }; export declare const UPGRADE_FROM_VERSIONS: { readonly 'v1.5': { readonly name: "Vuetify v1.5 Upgrade"; readonly description: "Upgrade from Vuetify v1.5 to v2.0"; readonly path: "blob/v2-stable/packages/docs/src/pages/en/getting-started/upgrade-guide.md"; readonly markdown: "\n # Dependencies\n ```bash\n [npm|pnpm|yarn|bun] install vuetify@v2.0.0 eslint-plugin-vuetify@1.1.0\n ```\n # Files\n ```js [.eslintrc.js]\n module.exports = {\n extends: [\n 'plugin:vue/base',\n 'plugin:vuetify/base',\n ],\n }\n ```\n "; }; readonly 'v2.7': { readonly name: "Vuetify v2.7 Upgrade"; readonly description: "Upgrade from Vuetify v2.7 to v3.0"; readonly path: "packages/docs/src/pages/en/getting-started/upgrade-guide.md"; readonly markdown: "\n # Dependencies\n ```bash\n [npm|pnpm|yarn|bun] install vuetify@v3.0.0 eslint-plugin-vuetify@2.0.0\n ```\n "; }; readonly v3: { readonly name: "Vuetify v3 Upgrade"; readonly description: "Upgrade from Vuetify v3.x to v4.0"; readonly path: "packages/docs/src/pages/en/getting-started/upgrade-guide.md"; readonly markdown: "\n # Dependencies\n ```bash\n [npm|pnpm|yarn|bun] install vuetify@^4.0.0\n ```\n "; }; }; export declare const V4_BREAKING_CHANGES: { readonly styles: { readonly name: "CSS & Styles"; readonly description: "CSS architecture changes including layers, reset, and entry points"; readonly changes: readonly [{ readonly title: "CSS Layers are now mandatory"; readonly description: "Vuetify 4 always uses CSS layers for all styles. This changes how specificity works - you may need to adjust custom overrides that relied on !important or specificity hacks."; readonly migration: "Replace !important overrides with layer-aware CSS. Use @layer to control specificity."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/3400"; }, { readonly title: "Flattened layer names"; readonly description: "CSS layer names have been flattened for simpler organization."; readonly migration: "Update any custom CSS that references Vuetify layer names."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/22443"; }, { readonly title: "Reduced CSS reset"; readonly description: "The CSS reset has been cut down significantly."; readonly migration: "If you relied on Vuetify's reset for certain elements, you may need to add your own reset styles."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/17633"; }, { readonly title: "Removed overflow-y from reset"; readonly description: "The overflow-y rule has been removed from the CSS reset."; readonly migration: "Add your own overflow-y styles if needed."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/1197"; }, { readonly title: "Separate style entry points"; readonly description: "New granular style entry points: vuetify/styles, vuetify/styles/main, vuetify/styles/generic."; readonly migration: "Optionally use specific entry points for smaller bundles."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/20100"; }, { readonly title: "Opt-out from misc styles"; readonly description: "You can now opt-out from miscellaneous utility styles."; readonly migration: "Use createVuetify({ styles: { misc: false } }) if desired."; readonly issue: null; }]; }; readonly theme: { readonly name: "Theme"; readonly description: "Theme system changes"; readonly changes: readonly [{ readonly title: "Default theme changed to \"system\""; readonly description: "The default theme is now \"system\" instead of \"light\", respecting user's OS preference."; readonly migration: "If you need explicit light theme, set defaultTheme: \"light\" in createVuetify()."; readonly issue: null; }, { readonly title: "Removed \"unimportant\" option"; readonly description: "The theme.unimportant option has been removed (no longer needed with CSS layers)."; readonly migration: "Remove any unimportant: true configuration."; readonly issue: null; }, { readonly title: "Transparent color support"; readonly description: "Theme colors now support transparency."; readonly migration: "No migration needed - this is a new feature."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/10299"; }]; }; readonly display: { readonly name: "Display & Breakpoints"; readonly description: "Breakpoint and display changes"; readonly changes: readonly [{ readonly title: "Reduced default breakpoint sizes"; readonly description: "Default breakpoint values have been reduced to better match modern device sizes."; readonly migration: "If you have layouts depending on specific breakpoint values, review and adjust accordingly or override the breakpoints in your Vuetify config."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/19759"; }]; }; readonly grid: { readonly name: "Grid System"; readonly description: "Grid system overhaul"; readonly changes: readonly [{ readonly title: "Grid system overhaul"; readonly description: "The grid system (v-container, v-row, v-col) has been overhauled."; readonly migration: "Review grid usage and test layouts. Some class names or behaviors may have changed."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/8611"; }]; }; readonly typography: { readonly name: "Typography"; readonly description: "Typography system changes"; readonly changes: readonly [{ readonly title: "MD3 typography"; readonly description: "Typography now follows Material Design 3 specifications."; readonly migration: "Review text styling - font sizes, weights, and line heights may differ."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/22557"; }]; }; readonly elevation: { readonly name: "Elevation"; readonly description: "Elevation system changes"; readonly changes: readonly [{ readonly title: "MD3 elevation levels"; readonly description: "Elevation now uses Material Design 3 levels."; readonly migration: "Shadows may appear different. Review components using elevation prop."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/14198"; }]; }; readonly 'v-btn': { readonly name: "VBtn"; readonly description: "Button component changes"; readonly changes: readonly [{ readonly title: "Removed default text transform"; readonly description: "Buttons no longer have uppercase text by default."; readonly migration: "Add text-transform: uppercase in CSS if you want the old behavior."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/21079"; }, { readonly title: "Display changed from grid to flex"; readonly description: "VBtn internal layout changed from CSS grid to flexbox."; readonly migration: "If you had custom CSS targeting button internals, review and adjust."; readonly issue: null; }]; }; readonly 'v-snackbar': { readonly name: "VSnackbar"; readonly description: "Snackbar component changes"; readonly changes: readonly [{ readonly title: "Removed multi-line prop"; readonly description: "The multi-line prop has been removed."; readonly migration: "Use CSS to style multi-line content instead."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/15996"; }]; }; readonly 'v-select': { readonly name: "VSelect / VAutocomplete / VCombobox"; readonly description: "Select component changes"; readonly changes: readonly [{ readonly title: "Renamed item to internalItem in slots"; readonly description: "The \"item\" slot prop has been renamed to \"internalItem\" for clarity."; readonly migration: "Update slot templates: #item=\"{ item }\" becomes #item=\"{ internalItem }\"."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/18354"; }]; }; readonly 'v-date-picker': { readonly name: "VDatePicker"; readonly description: "Date picker component changes"; readonly changes: readonly [{ readonly title: "Range picker only emits start and end values"; readonly description: "When using range selection, the picker now only emits start and end values, not intermediate states."; readonly migration: "Update range picker handlers if they relied on intermediate value emissions."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/18701"; }]; }; readonly 'v-form': { readonly name: "VForm"; readonly description: "Form component changes"; readonly changes: readonly [{ readonly title: "Slot props are unreffed"; readonly description: "VForm slot props are now unreffed (raw values instead of refs)."; readonly migration: "Remove .value access from form slot props if you were using them as refs."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/18355"; }]; }; readonly 'v-img': { readonly name: "VImg"; readonly description: "Image component changes"; readonly changes: readonly [{ readonly title: "Attributes pass through to img element"; readonly description: "VImg now passes attributes to the underlying element."; readonly migration: "Review any custom attributes - they will now apply to the img tag."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/18860"; }]; }; readonly nested: { readonly name: "Nested / Tree"; readonly description: "Nested component changes"; readonly changes: readonly [{ readonly title: "Added branch select strategy"; readonly description: "New \"branch\" select strategy for tree/nested components."; readonly migration: "No migration needed - this is a new feature."; readonly issue: "https://github.com/vuetifyjs/vuetify/issues/22404"; }]; }; }; export type V4BreakingChangeCategory = keyof typeof V4_BREAKING_CHANGES; export declare const AVAILABLE_FEATURES: { readonly accessibility: "Web accessibility (a11y for short), is the inclusive practice of ensuring there are no barriers that prevent the interaction with, or access to, websites on the World Wide Web by people with disabilities."; readonly aliasing: "Create virtual components that extend built-in Vuetify components using custom aliases."; readonly 'application-layout': "Vuetify features an application layout system that allows you to easily create complex website designs."; readonly blueprints: "Vuetify blueprints are a new way to pre-configure your entire application with a completely unique design system."; readonly dates: "Easily hook up date libraries that are used for components such as Date Picker and Calendar that require date functionality."; readonly 'display-and-platform': "The display composable provides a multitude of information about the current device."; readonly 'global-configuration': "Vuetify allows you to set default prop values globally or per component when setting up your application. Using this functionality you can for example disable ripple on all components, or set the default elevation for all sheets or buttons."; readonly 'icon-fonts': "Out of the box, Vuetify supports 4 popular icon font libraries: Material Design Icons, Material Icons, Font Awesome 4 and Font Awesome 5."; readonly internationalization: "Vuetify supports language Internationalization (i18n) of its components."; readonly 'programmatic-scrolling': "Handle scrolling within your application by using the goTo function."; readonly 'sass-variables': "Vuetify uses SASS/SCSS to craft the style and appearance of all aspects of the framework."; readonly theme: "Customize your application’s default text colors, surfaces, and more. Easily modify your theme programmatically in real time. Vuetify comes with standard support for light and dark variants."; }; export type InstallationPlatform = keyof typeof INSTALLATION_PLATFORMS; export type FreshInstallationPlatform = keyof typeof FRESH_INSTALLATION_PLATFORMS; export type AvailableFeature = keyof typeof AVAILABLE_FEATURES; export type UpgradeFromVersion = keyof typeof UPGRADE_FROM_VERSIONS; export declare function createDocumentationService(): { getInstallationGuide: ({ fresh, platform, ssr }: { platform: InstallationPlatform; ssr: boolean; fresh: boolean; }) => Promise<{ content: { readonly type: "text"; readonly text: string; }[]; }>; getFeatureGuide: ({ feature }: { feature: AvailableFeature; }) => Promise<{ content: { readonly type: "text"; readonly text: string; }[]; }>; getFeatureGuides: () => Promise<{ content: { readonly type: "text"; readonly text: string; }[]; }>; getUpgradeGuide: ({ version }: { version: UpgradeFromVersion; }) => Promise<{ content: { readonly type: "text"; readonly text: `Vuetify v1.5 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@v2.0.0 eslint-plugin-vuetify@1.1.0 \`\`\` # Files \`\`\`js [.eslintrc.js] module.exports = { extends: [ 'plugin:vue/base', 'plugin:vuetify/base', ], } \`\`\` ${string}` | `Vuetify v1.5 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@v3.0.0 eslint-plugin-vuetify@2.0.0 \`\`\` ${string}` | `Vuetify v1.5 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@^4.0.0 \`\`\` ${string}` | `Vuetify v2.7 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@v2.0.0 eslint-plugin-vuetify@1.1.0 \`\`\` # Files \`\`\`js [.eslintrc.js] module.exports = { extends: [ 'plugin:vue/base', 'plugin:vuetify/base', ], } \`\`\` ${string}` | `Vuetify v2.7 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@v3.0.0 eslint-plugin-vuetify@2.0.0 \`\`\` ${string}` | `Vuetify v2.7 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@^4.0.0 \`\`\` ${string}` | `Vuetify v3 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@v2.0.0 eslint-plugin-vuetify@1.1.0 \`\`\` # Files \`\`\`js [.eslintrc.js] module.exports = { extends: [ 'plugin:vue/base', 'plugin:vuetify/base', ], } \`\`\` ${string}` | `Vuetify v3 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@v3.0.0 eslint-plugin-vuetify@2.0.0 \`\`\` ${string}` | `Vuetify v3 Upgrade # Dependencies \`\`\`bash [npm|pnpm|yarn|bun] install vuetify@^4.0.0 \`\`\` ${string}`; }[]; }>; getV4BreakingChanges: ({ category }: { category?: V4BreakingChangeCategory; }) => Promise<{ content: { readonly type: "text"; readonly text: string; }[]; }>; getExposedExports: () => Promise<{ content: { readonly type: "text"; readonly text: `Review the Exposed exports section of the installation guide: ${string}`; }[]; }>; getFrequentlyAskedQuestions: () => Promise<{ content: { readonly type: "text"; readonly text: `Review the Frequently Asked Questions section of the installation guide: ${string}`; }[]; }>; getReleaseNotesByVersion: ({ version }: { version: string; }) => Promise<{ content: { readonly type: "text"; readonly text: `Release notes for version ${string}: undefined (published null)` | `Release notes for version ${string}: undefined (published ${string})` | `Release notes for version ${string}: null (published null)` | `Release notes for version ${string}: null (published ${string})` | `Release notes for version ${string}: ${string} (published null)` | `Release notes for version ${string}: ${string} (published ${string})`; }[]; }>; getVuetifyOneInstallationGuide: () => Promise<{ content: { readonly type: "text"; readonly text: `# @vuetify/one Documentation Source: https://github.com/vuetifyjs/one ${string}`; }[]; }>; };