Skip to content

Commit ae89144

Browse files
committed
types: fix types for useShare
1 parent f385a3c commit ae89144

File tree

1 file changed

+16
-14
lines changed

1 file changed

+16
-14
lines changed

packages/vue-composable/src/web/share.ts

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,19 @@
11
import { ref, Ref } from "../api";
22
import { FALSE_OP, isClient } from "../utils";
33

4-
declare global {
5-
interface NavigatorShareData {
6-
url: string;
7-
text: string;
8-
title: string;
9-
}
4+
interface NavigatorShareData {
5+
url: string;
6+
text: string;
7+
title: string;
8+
}
109

11-
interface Navigator {
12-
share: (data: Partial<NavigatorShareData>) => Promise<any>;
13-
canShare: (data: Partial<NavigatorShareData>) => boolean;
14-
}
10+
interface NavigatorShareDefinition {
11+
share: (data: Partial<NavigatorShareData>) => Promise<any>;
12+
canShare: (data: Partial<NavigatorShareData>) => boolean;
13+
}
14+
15+
declare global {
16+
interface Navigator extends NavigatorShareDefinition {}
1517
}
1618

1719
interface ShareReturn {
@@ -34,11 +36,11 @@ interface ShareReturn {
3436
/**
3537
* Share information with user
3638
*/
37-
share: Navigator["share"];
39+
share: NavigatorShareDefinition["share"];
3840
/**
3941
* Check if you can share with user
4042
*/
41-
canShare: Navigator["canShare"];
43+
canShare: NavigatorShareDefinition["canShare"];
4244
}
4345

4446
/**
@@ -49,8 +51,8 @@ interface ShareReturn {
4951
export function useShare(data?: Partial<NavigatorShareData>): ShareReturn {
5052
const supported = isClient && "share" in navigator;
5153

52-
let share: Navigator["share"] = () => Promise.resolve(false);
53-
let canShare: Navigator["canShare"] = FALSE_OP;
54+
let share: NavigatorShareDefinition["share"] = () => Promise.resolve(false);
55+
let canShare: NavigatorShareDefinition["canShare"] = FALSE_OP;
5456
let shared = ref(false);
5557
let cancelled = ref(false);
5658

0 commit comments

Comments
 (0)