Skip to content

Commit eca668e

Browse files
authored
fix: force useRegistry return type (#73)
1 parent 1345d32 commit eca668e

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/runtime/utils.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { defu } from 'defu'
22
import type { BaseSchema, Input, ObjectSchema, ValiError } from 'valibot'
3-
import type { UseScriptInput } from '@unhead/vue'
3+
import type { UseScriptInput, VueScriptInstance } from '@unhead/vue'
44
import { parse } from '#nuxt-scripts-validator'
55
import { useRuntimeConfig, useScript } from '#imports'
66
import type {
@@ -34,7 +34,9 @@ export function scriptRuntimeConfig<T extends keyof ScriptRegistry>(key: T) {
3434
return ((useRuntimeConfig().public.scripts || {}) as ScriptRegistry)[key]
3535
}
3636

37-
export function useRegistryScript<T extends Record<string | symbol, any>, O extends ObjectSchema<any> = EmptyOptionsSchema>(key: keyof ScriptRegistry | string, optionsFn: OptionsFn<O>, _userOptions?: RegistryScriptInput<O>) {
37+
export function useRegistryScript<T extends Record<string | symbol, any>, O extends ObjectSchema<any> = EmptyOptionsSchema>(key: keyof ScriptRegistry | string, optionsFn: OptionsFn<O>, _userOptions?: RegistryScriptInput<O>): T & {
38+
$script: Promise<T> & VueScriptInstance<T>
39+
} {
3840
const scriptConfig = scriptRuntimeConfig(key as keyof ScriptRegistry)
3941
const userOptions = Object.assign(_userOptions || {}, typeof scriptConfig === 'object' ? scriptConfig : {})
4042
const options = optionsFn(userOptions)

0 commit comments

Comments
 (0)