From f5a825e34cc46055e073961cc3830c7ca4e3b8a4 Mon Sep 17 00:00:00 2001 From: Nikita Mikhailov Date: Wed, 3 Aug 2022 19:44:40 +0300 Subject: [PATCH] fix(useFavicon): writable return type --- packages/core/useFavicon/index.ts | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/core/useFavicon/index.ts b/packages/core/useFavicon/index.ts index e4aa4f53529..6e9993ef1cc 100644 --- a/packages/core/useFavicon/index.ts +++ b/packages/core/useFavicon/index.ts @@ -1,5 +1,6 @@ -import type { MaybeComputedRef } from '@vueuse/shared' +import type { MaybeRef } from '@vueuse/shared' import { isString, resolveRef } from '@vueuse/shared' +import type { ComputedRef, Ref, WritableComputedRef } from 'vue-demi' import { watch } from 'vue-demi' import type { ConfigurableDocument } from '../_configurable' import { defaultDocument } from '../_configurable' @@ -9,6 +10,9 @@ export interface UseFaviconOptions extends ConfigurableDocument { rel?: string } +export type UseFaviconValue = string | null | undefined +export type UseFaviconGetter = () => UseFaviconValue + /** * Reactive favicon. * @@ -16,8 +20,11 @@ export interface UseFaviconOptions extends ConfigurableDocument { * @param newIcon * @param options */ +export function useFavicon(newIcon: ComputedRef | UseFaviconGetter, options?: UseFaviconOptions): ComputedRef +export function useFavicon(newIcon: MaybeRef, options?: UseFaviconOptions): Ref +export function useFavicon(newIcon?: ComputedRef | MaybeRef | UseFaviconGetter, options?: UseFaviconOptions): Ref export function useFavicon( - newIcon: MaybeComputedRef = null, + newIcon: ComputedRef | MaybeRef | UseFaviconGetter = null, options: UseFaviconOptions = {}, ) { const { @@ -43,7 +50,6 @@ export function useFavicon( { immediate: true }, ) - return favicon + return favicon as WritableComputedRef } - export type UseFaviconReturn = ReturnType