feat: tailwind and nuxt ui

This commit is contained in:
2025-12-14 18:43:31 +07:00
parent 28ddf12d45
commit 0cefa47b46
7 changed files with 122 additions and 19 deletions

97
auto-imports.d.ts vendored
View File

@@ -7,8 +7,10 @@
export {}
declare global {
const EffectScope: typeof import('vue').EffectScope
const acceptHMRUpdate: typeof import('pinia').acceptHMRUpdate
const asyncComputed: typeof import('@vueuse/core').asyncComputed
const autoResetRef: typeof import('@vueuse/core').autoResetRef
const avatarGroupInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useAvatarGroup.js').avatarGroupInjectionKey
const computed: typeof import('vue').computed
const computedAsync: typeof import('@vueuse/core').computedAsync
const computedEager: typeof import('@vueuse/core').computedEager
@@ -20,6 +22,7 @@ declare global {
const createEventHook: typeof import('@vueuse/core').createEventHook
const createGlobalState: typeof import('@vueuse/core').createGlobalState
const createInjectionState: typeof import('@vueuse/core').createInjectionState
const createPinia: typeof import('pinia').createPinia
const createReactiveFn: typeof import('@vueuse/core').createReactiveFn
const createRef: typeof import('@vueuse/core').createRef
const createReusableTemplate: typeof import('@vueuse/core').createReusableTemplate
@@ -31,11 +34,25 @@ declare global {
const debouncedWatch: typeof import('@vueuse/core').debouncedWatch
const defineAsyncComponent: typeof import('vue').defineAsyncComponent
const defineComponent: typeof import('vue').defineComponent
const defineLocale: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineLocale.js').defineLocale
const defineShortcuts: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.js').defineShortcuts
const defineStore: typeof import('pinia').defineStore
const eagerComputed: typeof import('@vueuse/core').eagerComputed
const effectScope: typeof import('vue').effectScope
const emailPattern: typeof import('./src/utils/pattern').emailPattern
const extendLocale: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineLocale.js').extendLocale
const extendRef: typeof import('@vueuse/core').extendRef
const extractShortcuts: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.js').extractShortcuts
const fieldGroupInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFieldGroup.js').fieldGroupInjectionKey
const formBusInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').formBusInjectionKey
const formErrorsInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').formErrorsInjectionKey
const formFieldInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').formFieldInjectionKey
const formInputsInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').formInputsInjectionKey
const formLoadingInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').formLoadingInjectionKey
const formOptionsInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').formOptionsInjectionKey
const formStateInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').formStateInjectionKey
const formatBalance: typeof import('./src/utils/helper').formatBalance
const getActivePinia: typeof import('pinia').getActivePinia
const getCurrentInstance: typeof import('vue').getCurrentInstance
const getCurrentScope: typeof import('vue').getCurrentScope
const getCurrentWatcher: typeof import('vue').getCurrentWatcher
@@ -43,13 +60,21 @@ declare global {
const ignorableWatch: typeof import('@vueuse/core').ignorableWatch
const inject: typeof import('vue').inject
const injectLocal: typeof import('@vueuse/core').injectLocal
const inputIdInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').inputIdInjectionKey
const isDefined: typeof import('@vueuse/core').isDefined
const isProxy: typeof import('vue').isProxy
const isReactive: typeof import('vue').isReactive
const isReadonly: typeof import('vue').isReadonly
const isRef: typeof import('vue').isRef
const isShallow: typeof import('vue').isShallow
const kbdKeysMap: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.js').kbdKeysMap
const localeContextInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useLocale.js').localeContextInjectionKey
const makeDestructurable: typeof import('@vueuse/core').makeDestructurable
const mapActions: typeof import('pinia').mapActions
const mapGetters: typeof import('pinia').mapGetters
const mapState: typeof import('pinia').mapState
const mapStores: typeof import('pinia').mapStores
const mapWritableState: typeof import('pinia').mapWritableState
const markRaw: typeof import('vue').markRaw
const nextTick: typeof import('vue').nextTick
const numberPattern: typeof import('./src/utils/pattern').numberPattern
@@ -75,6 +100,7 @@ declare global {
const onUpdated: typeof import('vue').onUpdated
const onWatcherCleanup: typeof import('vue').onWatcherCleanup
const pausableWatch: typeof import('@vueuse/core').pausableWatch
const portalTargetInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/usePortal.js').portalTargetInjectionKey
const provide: typeof import('vue').provide
const provideLocal: typeof import('@vueuse/core').provideLocal
const reactify: typeof import('@vueuse/core').reactify
@@ -93,9 +119,12 @@ declare global {
const refWithControl: typeof import('@vueuse/core').refWithControl
const resolveComponent: typeof import('vue').resolveComponent
const resolveRef: typeof import('@vueuse/core').resolveRef
const setActivePinia: typeof import('pinia').setActivePinia
const setMapStoreSuffix: typeof import('pinia').setMapStoreSuffix
const shallowReactive: typeof import('vue').shallowReactive
const shallowReadonly: typeof import('vue').shallowReadonly
const shallowRef: typeof import('vue').shallowRef
const storeToRefs: typeof import('pinia').storeToRefs
const syncRef: typeof import('@vueuse/core').syncRef
const syncRefs: typeof import('@vueuse/core').syncRefs
const templateRef: typeof import('@vueuse/core').templateRef
@@ -106,6 +135,7 @@ declare global {
const toRef: typeof import('vue').toRef
const toRefs: typeof import('vue').toRefs
const toValue: typeof import('vue').toValue
const toastMaxInjectionKey: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.js').toastMaxInjectionKey
const triggerRef: typeof import('vue').triggerRef
const tryOnBeforeMount: typeof import('@vueuse/core').tryOnBeforeMount
const tryOnBeforeUnmount: typeof import('@vueuse/core').tryOnBeforeUnmount
@@ -117,6 +147,7 @@ declare global {
const until: typeof import('@vueuse/core').until
const useActiveElement: typeof import('@vueuse/core').useActiveElement
const useAnimate: typeof import('@vueuse/core').useAnimate
const useAppConfig: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/vue/composables/useAppConfig.js').useAppConfig
const useArrayDifference: typeof import('@vueuse/core').useArrayDifference
const useArrayEvery: typeof import('@vueuse/core').useArrayEvery
const useArrayFilter: typeof import('@vueuse/core').useArrayFilter
@@ -133,6 +164,7 @@ declare global {
const useAsyncState: typeof import('@vueuse/core').useAsyncState
const useAttrs: typeof import('vue').useAttrs
const useAuth: typeof import('./src/composables/useAuth').useAuth
const useAvatarGroup: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useAvatarGroup.js').useAvatarGroup
const useBase64: typeof import('@vueuse/core').useBase64
const useBattery: typeof import('@vueuse/core').useBattery
const useBluetooth: typeof import('@vueuse/core').useBluetooth
@@ -144,7 +176,9 @@ declare global {
const useClipboardItems: typeof import('@vueuse/core').useClipboardItems
const useCloned: typeof import('@vueuse/core').useCloned
const useColorMode: typeof import('@vueuse/core').useColorMode
const useComponentIcons: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useComponentIcons.js').useComponentIcons
const useConfirmDialog: typeof import('@vueuse/core').useConfirmDialog
const useContentSearch: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useContentSearch.js').useContentSearch
const useCountdown: typeof import('@vueuse/core').useCountdown
const useCounter: typeof import('@vueuse/core').useCounter
const useCssModule: typeof import('vue').useCssModule
@@ -176,10 +210,13 @@ declare global {
const useEyeDropper: typeof import('@vueuse/core').useEyeDropper
const useFavicon: typeof import('@vueuse/core').useFavicon
const useFetch: typeof import('@vueuse/core').useFetch
const useFieldGroup: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFieldGroup.js').useFieldGroup
const useFileDialog: typeof import('@vueuse/core').useFileDialog
const useFileSystemAccess: typeof import('@vueuse/core').useFileSystemAccess
const useFileUpload: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFileUpload.js').useFileUpload
const useFocus: typeof import('@vueuse/core').useFocus
const useFocusWithin: typeof import('@vueuse/core').useFocusWithin
const useFormField: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js').useFormField
const useFps: typeof import('@vueuse/core').useFps
const useFullscreen: typeof import('@vueuse/core').useFullscreen
const useGamepad: typeof import('@vueuse/core').useGamepad
@@ -192,10 +229,12 @@ declare global {
const useIntersectionObserver: typeof import('@vueuse/core').useIntersectionObserver
const useInterval: typeof import('@vueuse/core').useInterval
const useIntervalFn: typeof import('@vueuse/core').useIntervalFn
const useKbd: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.js').useKbd
const useKeyModifier: typeof import('@vueuse/core').useKeyModifier
const useLastChanged: typeof import('@vueuse/core').useLastChanged
const useLink: typeof import('vue-router').useLink
const useLocalStorage: typeof import('@vueuse/core').useLocalStorage
const useLocale: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useLocale.js').useLocale
const useMagicKeys: typeof import('@vueuse/core').useMagicKeys
const useManualRefHistory: typeof import('@vueuse/core').useManualRefHistory
const useMediaControls: typeof import('@vueuse/core').useMediaControls
@@ -214,6 +253,7 @@ declare global {
const useObjectUrl: typeof import('@vueuse/core').useObjectUrl
const useOffsetPagination: typeof import('@vueuse/core').useOffsetPagination
const useOnline: typeof import('@vueuse/core').useOnline
const useOverlay: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useOverlay.js').useOverlay
const usePageLeave: typeof import('@vueuse/core').usePageLeave
const useParallax: typeof import('@vueuse/core').useParallax
const useParentElement: typeof import('@vueuse/core').useParentElement
@@ -222,6 +262,7 @@ declare global {
const usePointer: typeof import('@vueuse/core').usePointer
const usePointerLock: typeof import('@vueuse/core').usePointerLock
const usePointerSwipe: typeof import('@vueuse/core').usePointerSwipe
const usePortal: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/usePortal.js').usePortal
const usePreferredColorScheme: typeof import('@vueuse/core').usePreferredColorScheme
const usePreferredContrast: typeof import('@vueuse/core').usePreferredContrast
const usePreferredDark: typeof import('@vueuse/core').usePreferredDark
@@ -232,6 +273,7 @@ declare global {
const useRafFn: typeof import('@vueuse/core').useRafFn
const useRefHistory: typeof import('@vueuse/core').useRefHistory
const useResetRef: typeof import('./src/composables/useResetRef').useResetRef
const useResizable: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useResizable.js').useResizable
const useResizeObserver: typeof import('@vueuse/core').useResizeObserver
const useRoute: typeof import('vue-router').useRoute
const useRouter: typeof import('vue-router').useRouter
@@ -241,6 +283,7 @@ declare global {
const useScriptTag: typeof import('@vueuse/core').useScriptTag
const useScroll: typeof import('@vueuse/core').useScroll
const useScrollLock: typeof import('@vueuse/core').useScrollLock
const useScrollspy: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useScrollspy.js').useScrollspy
const useSessionStorage: typeof import('@vueuse/core').useSessionStorage
const useShare: typeof import('@vueuse/core').useShare
const useSlots: typeof import('vue').useSlots
@@ -270,6 +313,7 @@ declare global {
const useTitle: typeof import('@vueuse/core').useTitle
const useToNumber: typeof import('@vueuse/core').useToNumber
const useToString: typeof import('@vueuse/core').useToString
const useToast: typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.js').useToast
const useToggle: typeof import('@vueuse/core').useToggle
const useTransition: typeof import('@vueuse/core').useTransition
const useUrlSearchParams: typeof import('@vueuse/core').useUrlSearchParams
@@ -312,6 +356,27 @@ declare global {
// @ts-ignore
export type { PageInstance, InputInstance, ModalInstance } from './src/utils/ionic-helper'
import('./src/utils/ionic-helper')
// @ts-ignore
export type { ShortcutConfig, ShortcutsConfig, ShortcutsOptions } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.d')
// @ts-ignore
export type { UseComponentIconsProps } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useComponentIcons.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useComponentIcons.d')
// @ts-ignore
export type { UseFileUploadOptions } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFileUpload.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFileUpload.d')
// @ts-ignore
export type { KbdKey, KbdKeySpecific } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.d')
// @ts-ignore
export type { OverlayOptions, Overlay } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useOverlay.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useOverlay.d')
// @ts-ignore
export type { UseResizableProps, UseResizableReturn } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useResizable.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useResizable.d')
// @ts-ignore
export type { Toast } from './node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.d'
import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.d')
}
// for vue template auto import
@@ -322,6 +387,7 @@ declare module 'vue' {
readonly EffectScope: UnwrapRef<typeof import('vue')['EffectScope']>
readonly asyncComputed: UnwrapRef<typeof import('@vueuse/core')['asyncComputed']>
readonly autoResetRef: UnwrapRef<typeof import('@vueuse/core')['autoResetRef']>
readonly avatarGroupInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useAvatarGroup.js')['avatarGroupInjectionKey']>
readonly computed: UnwrapRef<typeof import('vue')['computed']>
readonly computedAsync: UnwrapRef<typeof import('@vueuse/core')['computedAsync']>
readonly computedEager: UnwrapRef<typeof import('@vueuse/core')['computedEager']>
@@ -344,10 +410,22 @@ declare module 'vue' {
readonly debouncedWatch: UnwrapRef<typeof import('@vueuse/core')['debouncedWatch']>
readonly defineAsyncComponent: UnwrapRef<typeof import('vue')['defineAsyncComponent']>
readonly defineComponent: UnwrapRef<typeof import('vue')['defineComponent']>
readonly defineLocale: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineLocale.js')['defineLocale']>
readonly defineShortcuts: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.js')['defineShortcuts']>
readonly eagerComputed: UnwrapRef<typeof import('@vueuse/core')['eagerComputed']>
readonly effectScope: UnwrapRef<typeof import('vue')['effectScope']>
readonly emailPattern: UnwrapRef<typeof import('./src/utils/pattern')['emailPattern']>
readonly extendLocale: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineLocale.js')['extendLocale']>
readonly extendRef: UnwrapRef<typeof import('@vueuse/core')['extendRef']>
readonly extractShortcuts: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/defineShortcuts.js')['extractShortcuts']>
readonly fieldGroupInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFieldGroup.js')['fieldGroupInjectionKey']>
readonly formBusInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formBusInjectionKey']>
readonly formErrorsInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formErrorsInjectionKey']>
readonly formFieldInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formFieldInjectionKey']>
readonly formInputsInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formInputsInjectionKey']>
readonly formLoadingInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formLoadingInjectionKey']>
readonly formOptionsInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formOptionsInjectionKey']>
readonly formStateInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['formStateInjectionKey']>
readonly formatBalance: UnwrapRef<typeof import('./src/utils/helper')['formatBalance']>
readonly getCurrentInstance: UnwrapRef<typeof import('vue')['getCurrentInstance']>
readonly getCurrentScope: UnwrapRef<typeof import('vue')['getCurrentScope']>
@@ -356,12 +434,15 @@ declare module 'vue' {
readonly ignorableWatch: UnwrapRef<typeof import('@vueuse/core')['ignorableWatch']>
readonly inject: UnwrapRef<typeof import('vue')['inject']>
readonly injectLocal: UnwrapRef<typeof import('@vueuse/core')['injectLocal']>
readonly inputIdInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['inputIdInjectionKey']>
readonly isDefined: UnwrapRef<typeof import('@vueuse/core')['isDefined']>
readonly isProxy: UnwrapRef<typeof import('vue')['isProxy']>
readonly isReactive: UnwrapRef<typeof import('vue')['isReactive']>
readonly isReadonly: UnwrapRef<typeof import('vue')['isReadonly']>
readonly isRef: UnwrapRef<typeof import('vue')['isRef']>
readonly isShallow: UnwrapRef<typeof import('vue')['isShallow']>
readonly kbdKeysMap: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.js')['kbdKeysMap']>
readonly localeContextInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useLocale.js')['localeContextInjectionKey']>
readonly makeDestructurable: UnwrapRef<typeof import('@vueuse/core')['makeDestructurable']>
readonly markRaw: UnwrapRef<typeof import('vue')['markRaw']>
readonly nextTick: UnwrapRef<typeof import('vue')['nextTick']>
@@ -388,6 +469,7 @@ declare module 'vue' {
readonly onUpdated: UnwrapRef<typeof import('vue')['onUpdated']>
readonly onWatcherCleanup: UnwrapRef<typeof import('vue')['onWatcherCleanup']>
readonly pausableWatch: UnwrapRef<typeof import('@vueuse/core')['pausableWatch']>
readonly portalTargetInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/usePortal.js')['portalTargetInjectionKey']>
readonly provide: UnwrapRef<typeof import('vue')['provide']>
readonly provideLocal: UnwrapRef<typeof import('@vueuse/core')['provideLocal']>
readonly reactify: UnwrapRef<typeof import('@vueuse/core')['reactify']>
@@ -419,6 +501,7 @@ declare module 'vue' {
readonly toRef: UnwrapRef<typeof import('vue')['toRef']>
readonly toRefs: UnwrapRef<typeof import('vue')['toRefs']>
readonly toValue: UnwrapRef<typeof import('vue')['toValue']>
readonly toastMaxInjectionKey: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.js')['toastMaxInjectionKey']>
readonly triggerRef: UnwrapRef<typeof import('vue')['triggerRef']>
readonly tryOnBeforeMount: UnwrapRef<typeof import('@vueuse/core')['tryOnBeforeMount']>
readonly tryOnBeforeUnmount: UnwrapRef<typeof import('@vueuse/core')['tryOnBeforeUnmount']>
@@ -430,6 +513,7 @@ declare module 'vue' {
readonly until: UnwrapRef<typeof import('@vueuse/core')['until']>
readonly useActiveElement: UnwrapRef<typeof import('@vueuse/core')['useActiveElement']>
readonly useAnimate: UnwrapRef<typeof import('@vueuse/core')['useAnimate']>
readonly useAppConfig: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/vue/composables/useAppConfig.js')['useAppConfig']>
readonly useArrayDifference: UnwrapRef<typeof import('@vueuse/core')['useArrayDifference']>
readonly useArrayEvery: UnwrapRef<typeof import('@vueuse/core')['useArrayEvery']>
readonly useArrayFilter: UnwrapRef<typeof import('@vueuse/core')['useArrayFilter']>
@@ -446,6 +530,7 @@ declare module 'vue' {
readonly useAsyncState: UnwrapRef<typeof import('@vueuse/core')['useAsyncState']>
readonly useAttrs: UnwrapRef<typeof import('vue')['useAttrs']>
readonly useAuth: UnwrapRef<typeof import('./src/composables/useAuth')['useAuth']>
readonly useAvatarGroup: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useAvatarGroup.js')['useAvatarGroup']>
readonly useBase64: UnwrapRef<typeof import('@vueuse/core')['useBase64']>
readonly useBattery: UnwrapRef<typeof import('@vueuse/core')['useBattery']>
readonly useBluetooth: UnwrapRef<typeof import('@vueuse/core')['useBluetooth']>
@@ -457,7 +542,9 @@ declare module 'vue' {
readonly useClipboardItems: UnwrapRef<typeof import('@vueuse/core')['useClipboardItems']>
readonly useCloned: UnwrapRef<typeof import('@vueuse/core')['useCloned']>
readonly useColorMode: UnwrapRef<typeof import('@vueuse/core')['useColorMode']>
readonly useComponentIcons: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useComponentIcons.js')['useComponentIcons']>
readonly useConfirmDialog: UnwrapRef<typeof import('@vueuse/core')['useConfirmDialog']>
readonly useContentSearch: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useContentSearch.js')['useContentSearch']>
readonly useCountdown: UnwrapRef<typeof import('@vueuse/core')['useCountdown']>
readonly useCounter: UnwrapRef<typeof import('@vueuse/core')['useCounter']>
readonly useCssModule: UnwrapRef<typeof import('vue')['useCssModule']>
@@ -489,10 +576,13 @@ declare module 'vue' {
readonly useEyeDropper: UnwrapRef<typeof import('@vueuse/core')['useEyeDropper']>
readonly useFavicon: UnwrapRef<typeof import('@vueuse/core')['useFavicon']>
readonly useFetch: UnwrapRef<typeof import('@vueuse/core')['useFetch']>
readonly useFieldGroup: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFieldGroup.js')['useFieldGroup']>
readonly useFileDialog: UnwrapRef<typeof import('@vueuse/core')['useFileDialog']>
readonly useFileSystemAccess: UnwrapRef<typeof import('@vueuse/core')['useFileSystemAccess']>
readonly useFileUpload: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFileUpload.js')['useFileUpload']>
readonly useFocus: UnwrapRef<typeof import('@vueuse/core')['useFocus']>
readonly useFocusWithin: UnwrapRef<typeof import('@vueuse/core')['useFocusWithin']>
readonly useFormField: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useFormField.js')['useFormField']>
readonly useFps: UnwrapRef<typeof import('@vueuse/core')['useFps']>
readonly useFullscreen: UnwrapRef<typeof import('@vueuse/core')['useFullscreen']>
readonly useGamepad: UnwrapRef<typeof import('@vueuse/core')['useGamepad']>
@@ -505,10 +595,12 @@ declare module 'vue' {
readonly useIntersectionObserver: UnwrapRef<typeof import('@vueuse/core')['useIntersectionObserver']>
readonly useInterval: UnwrapRef<typeof import('@vueuse/core')['useInterval']>
readonly useIntervalFn: UnwrapRef<typeof import('@vueuse/core')['useIntervalFn']>
readonly useKbd: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useKbd.js')['useKbd']>
readonly useKeyModifier: UnwrapRef<typeof import('@vueuse/core')['useKeyModifier']>
readonly useLastChanged: UnwrapRef<typeof import('@vueuse/core')['useLastChanged']>
readonly useLink: UnwrapRef<typeof import('vue-router')['useLink']>
readonly useLocalStorage: UnwrapRef<typeof import('@vueuse/core')['useLocalStorage']>
readonly useLocale: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useLocale.js')['useLocale']>
readonly useMagicKeys: UnwrapRef<typeof import('@vueuse/core')['useMagicKeys']>
readonly useManualRefHistory: UnwrapRef<typeof import('@vueuse/core')['useManualRefHistory']>
readonly useMediaControls: UnwrapRef<typeof import('@vueuse/core')['useMediaControls']>
@@ -527,6 +619,7 @@ declare module 'vue' {
readonly useObjectUrl: UnwrapRef<typeof import('@vueuse/core')['useObjectUrl']>
readonly useOffsetPagination: UnwrapRef<typeof import('@vueuse/core')['useOffsetPagination']>
readonly useOnline: UnwrapRef<typeof import('@vueuse/core')['useOnline']>
readonly useOverlay: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useOverlay.js')['useOverlay']>
readonly usePageLeave: UnwrapRef<typeof import('@vueuse/core')['usePageLeave']>
readonly useParallax: UnwrapRef<typeof import('@vueuse/core')['useParallax']>
readonly useParentElement: UnwrapRef<typeof import('@vueuse/core')['useParentElement']>
@@ -535,6 +628,7 @@ declare module 'vue' {
readonly usePointer: UnwrapRef<typeof import('@vueuse/core')['usePointer']>
readonly usePointerLock: UnwrapRef<typeof import('@vueuse/core')['usePointerLock']>
readonly usePointerSwipe: UnwrapRef<typeof import('@vueuse/core')['usePointerSwipe']>
readonly usePortal: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/usePortal.js')['usePortal']>
readonly usePreferredColorScheme: UnwrapRef<typeof import('@vueuse/core')['usePreferredColorScheme']>
readonly usePreferredContrast: UnwrapRef<typeof import('@vueuse/core')['usePreferredContrast']>
readonly usePreferredDark: UnwrapRef<typeof import('@vueuse/core')['usePreferredDark']>
@@ -545,6 +639,7 @@ declare module 'vue' {
readonly useRafFn: UnwrapRef<typeof import('@vueuse/core')['useRafFn']>
readonly useRefHistory: UnwrapRef<typeof import('@vueuse/core')['useRefHistory']>
readonly useResetRef: UnwrapRef<typeof import('./src/composables/useResetRef')['useResetRef']>
readonly useResizable: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useResizable.js')['useResizable']>
readonly useResizeObserver: UnwrapRef<typeof import('@vueuse/core')['useResizeObserver']>
readonly useRoute: UnwrapRef<typeof import('vue-router')['useRoute']>
readonly useRouter: UnwrapRef<typeof import('vue-router')['useRouter']>
@@ -554,6 +649,7 @@ declare module 'vue' {
readonly useScriptTag: UnwrapRef<typeof import('@vueuse/core')['useScriptTag']>
readonly useScroll: UnwrapRef<typeof import('@vueuse/core')['useScroll']>
readonly useScrollLock: UnwrapRef<typeof import('@vueuse/core')['useScrollLock']>
readonly useScrollspy: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useScrollspy.js')['useScrollspy']>
readonly useSessionStorage: UnwrapRef<typeof import('@vueuse/core')['useSessionStorage']>
readonly useShare: UnwrapRef<typeof import('@vueuse/core')['useShare']>
readonly useSlots: UnwrapRef<typeof import('vue')['useSlots']>
@@ -583,6 +679,7 @@ declare module 'vue' {
readonly useTitle: UnwrapRef<typeof import('@vueuse/core')['useTitle']>
readonly useToNumber: UnwrapRef<typeof import('@vueuse/core')['useToNumber']>
readonly useToString: UnwrapRef<typeof import('@vueuse/core')['useToString']>
readonly useToast: UnwrapRef<typeof import('./node_modules/.pnpm/@nuxt+ui@4.2.1_@babel+parser@7.28.5_change-case@5.4.4_embla-carousel@8.6.0_typescript@5_5175cd019aaffaee0a62fe5f1000cc73/node_modules/@nuxt/ui/dist/runtime/composables/useToast.js')['useToast']>
readonly useToggle: UnwrapRef<typeof import('@vueuse/core')['useToggle']>
readonly useTransition: UnwrapRef<typeof import('@vueuse/core')['useTransition']>
readonly useUrlSearchParams: UnwrapRef<typeof import('@vueuse/core')['useUrlSearchParams']>