-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Expand file tree
/
Copy pathwebkit.ts
More file actions
49 lines (43 loc) · 1.01 KB
/
webkit.ts
File metadata and controls
49 lines (43 loc) · 1.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/**
* Type definitions for WebKit message handlers used in WebView communication
*/
/**
* Base WebKit message handler interface
*/
export interface WebkitMessageHandler {
postMessage(message: any): void;
}
/**
* Terminal-specific message handler
*/
export interface TerminalMessageHandler extends WebkitMessageHandler {
postMessage(message: string): void;
}
/**
* DiffView-specific message handler
*/
export interface DiffViewMessageHandler extends WebkitMessageHandler {
postMessage(message: object): void;
}
/**
* WebKit message handlers container interface
*/
export interface WebkitMessageHandlers {
terminalInput: TerminalMessageHandler;
swiftHandler: DiffViewMessageHandler;
[key: string]: WebkitMessageHandler | undefined;
}
/**
* Main WebKit interface exposed by WebViews
*/
export interface WebkitHandler {
messageHandlers: WebkitMessageHandlers;
}
/**
* Add webkit to the global Window interface
*/
declare global {
interface Window {
webkit: WebkitHandler;
}
}