craft-native 0.0.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +21 -0
- package/README.md +424 -0
- package/bin/cli.ts +937 -0
- package/dist/api/android-advanced.d.ts +737 -0
- package/dist/api/android-advanced.d.ts.map +1 -0
- package/dist/api/app.d.ts +432 -0
- package/dist/api/app.d.ts.map +1 -0
- package/dist/api/clipboard.d.ts +85 -0
- package/dist/api/clipboard.d.ts.map +1 -0
- package/dist/api/crypto.d.ts +79 -0
- package/dist/api/crypto.d.ts.map +1 -0
- package/dist/api/db.d.ts +427 -0
- package/dist/api/db.d.ts.map +1 -0
- package/dist/api/dialog.d.ts +141 -0
- package/dist/api/dialog.d.ts.map +1 -0
- package/dist/api/fs.d.ts +131 -0
- package/dist/api/fs.d.ts.map +1 -0
- package/dist/api/http.d.ts +196 -0
- package/dist/api/http.d.ts.map +1 -0
- package/dist/api/index.d.ts +38 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/ios-advanced.d.ts +833 -0
- package/dist/api/ios-advanced.d.ts.map +1 -0
- package/dist/api/macos-advanced.d.ts +721 -0
- package/dist/api/macos-advanced.d.ts.map +1 -0
- package/dist/api/media.d.ts +233 -0
- package/dist/api/media.d.ts.map +1 -0
- package/dist/api/mobile.d.ts +658 -0
- package/dist/api/mobile.d.ts.map +1 -0
- package/dist/api/process.d.ts +168 -0
- package/dist/api/process.d.ts.map +1 -0
- package/dist/api/sidebar.d.ts +125 -0
- package/dist/api/sidebar.d.ts.map +1 -0
- package/dist/api/tray.d.ts +410 -0
- package/dist/api/tray.d.ts.map +1 -0
- package/dist/api/window.d.ts +462 -0
- package/dist/api/window.d.ts.map +1 -0
- package/dist/api/windows-advanced.d.ts +719 -0
- package/dist/api/windows-advanced.d.ts.map +1 -0
- package/dist/assets/index.d.ts +69 -0
- package/dist/assets/index.d.ts.map +1 -0
- package/dist/binary-resolver.d.ts +39 -0
- package/dist/binary-resolver.d.ts.map +1 -0
- package/dist/bridge/android.d.ts +574 -0
- package/dist/bridge/android.d.ts.map +1 -0
- package/dist/bridge/core.d.ts +474 -0
- package/dist/bridge/core.d.ts.map +1 -0
- package/dist/bridge/ids.d.ts +18 -0
- package/dist/bridge/ids.d.ts.map +1 -0
- package/dist/bridge/ios.d.ts +528 -0
- package/dist/bridge/ios.d.ts.map +1 -0
- package/dist/bridge/webkit-pending.d.ts +50 -0
- package/dist/bridge/webkit-pending.d.ts.map +1 -0
- package/dist/build/bundle-optimizer.d.ts +69 -0
- package/dist/build/bundle-optimizer.d.ts.map +1 -0
- package/dist/components/index.d.ts +719 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/native.d.ts +728 -0
- package/dist/components/native.d.ts.map +1 -0
- package/dist/components/sidebar.d.ts +458 -0
- package/dist/components/sidebar.d.ts.map +1 -0
- package/dist/dev/devtools.d.ts +118 -0
- package/dist/dev/devtools.d.ts.map +1 -0
- package/dist/dev/error-overlay.d.ts +73 -0
- package/dist/dev/error-overlay.d.ts.map +1 -0
- package/dist/dev/hot-reload.d.ts +127 -0
- package/dist/dev/hot-reload.d.ts.map +1 -0
- package/dist/index.cjs +10253 -0
- package/dist/index.d.cts +59 -0
- package/dist/index.d.ts +59 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10240 -0
- package/dist/logging/index.d.ts +152 -0
- package/dist/logging/index.d.ts.map +1 -0
- package/dist/optimizations/index.d.ts +232 -0
- package/dist/optimizations/index.d.ts.map +1 -0
- package/dist/package.d.ts +90 -0
- package/dist/package.d.ts.map +1 -0
- package/dist/performance/runtime.d.ts +230 -0
- package/dist/performance/runtime.d.ts.map +1 -0
- package/dist/performance/startup.d.ts +223 -0
- package/dist/performance/startup.d.ts.map +1 -0
- package/dist/plugins/index.d.ts +114 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/security/index.d.ts +268 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/signing/index.d.ts +104 -0
- package/dist/signing/index.d.ts.map +1 -0
- package/dist/styles/headwind.d.ts +222 -0
- package/dist/styles/headwind.d.ts.map +1 -0
- package/dist/styles/index.d.ts +31 -0
- package/dist/styles/index.d.ts.map +1 -0
- package/dist/styles/sidebar-templates.d.ts +77 -0
- package/dist/styles/sidebar-templates.d.ts.map +1 -0
- package/dist/styles/sidebars.d.ts +194 -0
- package/dist/styles/sidebars.d.ts.map +1 -0
- package/dist/types.d.ts +1555 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/updater/index.d.ts +164 -0
- package/dist/updater/index.d.ts.map +1 -0
- package/dist/utils/audio.d.ts +40 -0
- package/dist/utils/audio.d.ts.map +1 -0
- package/dist/utils/index.d.ts +9 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/native.d.ts +27 -0
- package/dist/utils/native.d.ts.map +1 -0
- package/dist/utils/react.d.ts +157 -0
- package/dist/utils/react.d.ts.map +1 -0
- package/dist/utils/storage.d.ts +35 -0
- package/dist/utils/storage.d.ts.map +1 -0
- package/dist/utils/svelte.d.ts +187 -0
- package/dist/utils/svelte.d.ts.map +1 -0
- package/dist/utils/timer.d.ts +57 -0
- package/dist/utils/timer.d.ts.map +1 -0
- package/dist/utils/vue.d.ts +157 -0
- package/dist/utils/vue.d.ts.map +1 -0
- package/package.json +78 -0
|
@@ -0,0 +1,410 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Craft System Tray / Menubar API
|
|
3
|
+
* Comprehensive system tray and menubar app management
|
|
4
|
+
* @module @craft-native/api/tray
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Menu item configuration
|
|
8
|
+
*/
|
|
9
|
+
export interface MenuItem {
|
|
10
|
+
/** Unique identifier */
|
|
11
|
+
id?: string;
|
|
12
|
+
/** Display label */
|
|
13
|
+
label?: string;
|
|
14
|
+
/** Menu item type */
|
|
15
|
+
type?: 'normal' | 'separator' | 'checkbox' | 'radio' | 'submenu';
|
|
16
|
+
/** Checked state (checkbox/radio) */
|
|
17
|
+
checked?: boolean;
|
|
18
|
+
/** Enabled state */
|
|
19
|
+
enabled?: boolean;
|
|
20
|
+
/** Visible state */
|
|
21
|
+
visible?: boolean;
|
|
22
|
+
/** Icon path or SF Symbol name */
|
|
23
|
+
icon?: string;
|
|
24
|
+
/** Keyboard shortcut (e.g., 'Cmd+Q', 'Ctrl+Shift+N') */
|
|
25
|
+
shortcut?: string;
|
|
26
|
+
/** Action identifier or built-in action */
|
|
27
|
+
action?: 'show' | 'hide' | 'toggle' | 'quit' | string;
|
|
28
|
+
/** Submenu items */
|
|
29
|
+
submenu?: MenuItem[];
|
|
30
|
+
/** Tooltip text */
|
|
31
|
+
tooltip?: string;
|
|
32
|
+
/** Role (built-in menu item) */
|
|
33
|
+
role?: 'undo' | 'redo' | 'cut' | 'copy' | 'paste' | 'selectAll' | 'delete' | 'minimize' | 'close' | 'quit' | 'toggleFullScreen' | 'hide' | 'hideOthers' | 'unhide' | 'front' | 'zoom' | 'window' | 'help' | 'about' | 'services' | 'recentDocuments' | 'clearRecentDocuments';
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Tray click event
|
|
37
|
+
*/
|
|
38
|
+
export interface TrayClickEvent {
|
|
39
|
+
/** Mouse button clicked */
|
|
40
|
+
button: 'left' | 'right' | 'middle';
|
|
41
|
+
/** Click timestamp */
|
|
42
|
+
timestamp: number;
|
|
43
|
+
/** Double click */
|
|
44
|
+
doubleClick?: boolean;
|
|
45
|
+
/** Alt/Option key held */
|
|
46
|
+
altKey?: boolean;
|
|
47
|
+
/** Shift key held */
|
|
48
|
+
shiftKey?: boolean;
|
|
49
|
+
/** Control key held */
|
|
50
|
+
ctrlKey?: boolean;
|
|
51
|
+
/** Command/Meta key held */
|
|
52
|
+
metaKey?: boolean;
|
|
53
|
+
/** Click position */
|
|
54
|
+
position?: {
|
|
55
|
+
x: number;
|
|
56
|
+
y: number;
|
|
57
|
+
};
|
|
58
|
+
/** Tray bounds */
|
|
59
|
+
bounds?: {
|
|
60
|
+
x: number;
|
|
61
|
+
y: number;
|
|
62
|
+
width: number;
|
|
63
|
+
height: number;
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Tray configuration options
|
|
68
|
+
*/
|
|
69
|
+
export interface TrayOptions {
|
|
70
|
+
/** Title/text to display in menubar */
|
|
71
|
+
title?: string;
|
|
72
|
+
/** Icon path or template image name */
|
|
73
|
+
icon?: string;
|
|
74
|
+
/** Tooltip text */
|
|
75
|
+
tooltip?: string;
|
|
76
|
+
/** Menu items */
|
|
77
|
+
menu?: MenuItem[];
|
|
78
|
+
/** Highlight mode on click */
|
|
79
|
+
highlightMode?: 'always' | 'selection' | 'never';
|
|
80
|
+
/** Ignore double click events */
|
|
81
|
+
ignoreDoubleClickEvents?: boolean;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Menubar app configuration
|
|
85
|
+
*/
|
|
86
|
+
export interface MenubarAppConfig {
|
|
87
|
+
/** Tray title/text */
|
|
88
|
+
title?: string;
|
|
89
|
+
/** Tray icon */
|
|
90
|
+
icon?: string;
|
|
91
|
+
/** Tooltip */
|
|
92
|
+
tooltip?: string;
|
|
93
|
+
/** Menu items */
|
|
94
|
+
menu?: MenuItem[];
|
|
95
|
+
/** Show window on tray click */
|
|
96
|
+
showWindowOnClick?: boolean;
|
|
97
|
+
/** Window width when shown */
|
|
98
|
+
windowWidth?: number;
|
|
99
|
+
/** Window height when shown */
|
|
100
|
+
windowHeight?: number;
|
|
101
|
+
/** Window position relative to tray */
|
|
102
|
+
windowPosition?: 'center' | 'trayCenter' | 'trayBottomCenter' | 'trayBottomLeft' | 'trayBottomRight';
|
|
103
|
+
/** Arrow pointing to tray icon */
|
|
104
|
+
showArrow?: boolean;
|
|
105
|
+
/** Vibrancy effect for popup window (macOS) */
|
|
106
|
+
vibrancy?: 'light' | 'dark' | 'titlebar' | 'selection' | 'menu' | 'popover' | 'sidebar';
|
|
107
|
+
/** Hide dock icon (macOS) */
|
|
108
|
+
hideDockIcon?: boolean;
|
|
109
|
+
/** Show on all workspaces/spaces */
|
|
110
|
+
showOnAllWorkspaces?: boolean;
|
|
111
|
+
/** Activation policy (macOS) */
|
|
112
|
+
activationPolicy?: 'regular' | 'accessory' | 'prohibited';
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Tray event types
|
|
116
|
+
*/
|
|
117
|
+
export type TrayEventType = 'click' | 'right-click' | 'double-click' | 'mouse-enter' | 'mouse-leave' | 'mouse-move' | 'drop-files' | 'drop-text' | 'menu-click' | 'balloon-click' | 'balloon-closed';
|
|
118
|
+
/**
|
|
119
|
+
* Tray event data map
|
|
120
|
+
*/
|
|
121
|
+
export interface TrayEventMap {
|
|
122
|
+
'click': TrayClickEvent;
|
|
123
|
+
'right-click': TrayClickEvent;
|
|
124
|
+
'double-click': TrayClickEvent;
|
|
125
|
+
'mouse-enter': {
|
|
126
|
+
position: {
|
|
127
|
+
x: number;
|
|
128
|
+
y: number;
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
'mouse-leave': void;
|
|
132
|
+
'mouse-move': {
|
|
133
|
+
position: {
|
|
134
|
+
x: number;
|
|
135
|
+
y: number;
|
|
136
|
+
};
|
|
137
|
+
};
|
|
138
|
+
'drop-files': {
|
|
139
|
+
files: string[];
|
|
140
|
+
};
|
|
141
|
+
'drop-text': {
|
|
142
|
+
text: string;
|
|
143
|
+
};
|
|
144
|
+
'menu-click': {
|
|
145
|
+
menuId: string;
|
|
146
|
+
action: string;
|
|
147
|
+
};
|
|
148
|
+
'balloon-click': void;
|
|
149
|
+
'balloon-closed': void;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Tray event handler
|
|
153
|
+
*/
|
|
154
|
+
export type TrayEventHandler<T extends TrayEventType> = (_data: TrayEventMap[T]) => void;
|
|
155
|
+
/**
|
|
156
|
+
* System tray instance
|
|
157
|
+
*/
|
|
158
|
+
export declare class SystemTray {
|
|
159
|
+
private _id;
|
|
160
|
+
private _options;
|
|
161
|
+
private _listeners;
|
|
162
|
+
private _menuHandlers;
|
|
163
|
+
private _destroyed;
|
|
164
|
+
private _domListeners;
|
|
165
|
+
constructor(id: string, options?: TrayOptions);
|
|
166
|
+
/**
|
|
167
|
+
* Get tray ID
|
|
168
|
+
*/
|
|
169
|
+
get id(): string;
|
|
170
|
+
/**
|
|
171
|
+
* Check if tray is destroyed
|
|
172
|
+
*/
|
|
173
|
+
get isDestroyed(): boolean;
|
|
174
|
+
/**
|
|
175
|
+
* Filter incoming events to those addressed to this tray. The native
|
|
176
|
+
* side may attach `trayId` to `event.detail`; older hosts that don't
|
|
177
|
+
* set it fall through (we still fire — single-tray apps shouldn't
|
|
178
|
+
* regress).
|
|
179
|
+
*/
|
|
180
|
+
private _isForThisTray;
|
|
181
|
+
private _addDomListener;
|
|
182
|
+
private _setupEventListeners;
|
|
183
|
+
/**
|
|
184
|
+
* Tear down DOM listeners. Idempotent. Always pair with `destroy()` on
|
|
185
|
+
* the manager when constructing trays in tests/long-lived processes.
|
|
186
|
+
*/
|
|
187
|
+
protected _teardownDomListeners(): void;
|
|
188
|
+
private _emit;
|
|
189
|
+
/**
|
|
190
|
+
* Register an event handler
|
|
191
|
+
*/
|
|
192
|
+
on<T extends TrayEventType>(event: T, handler: TrayEventHandler<T>): () => void;
|
|
193
|
+
/**
|
|
194
|
+
* Register a one-time event handler
|
|
195
|
+
*/
|
|
196
|
+
once<T extends TrayEventType>(event: T, handler: TrayEventHandler<T>): () => void;
|
|
197
|
+
/**
|
|
198
|
+
* Remove event handler
|
|
199
|
+
*/
|
|
200
|
+
off<T extends TrayEventType>(event: T, handler: TrayEventHandler<T>): void;
|
|
201
|
+
/**
|
|
202
|
+
* Set tray title/text
|
|
203
|
+
*/
|
|
204
|
+
setTitle(title: string): Promise<void>;
|
|
205
|
+
/**
|
|
206
|
+
* Get current title
|
|
207
|
+
*/
|
|
208
|
+
getTitle(): string;
|
|
209
|
+
/**
|
|
210
|
+
* Set tray icon
|
|
211
|
+
*/
|
|
212
|
+
setIcon(icon: string): Promise<void>;
|
|
213
|
+
/**
|
|
214
|
+
* Set tray tooltip
|
|
215
|
+
*/
|
|
216
|
+
setTooltip(tooltip: string): Promise<void>;
|
|
217
|
+
/**
|
|
218
|
+
* Set or update menu
|
|
219
|
+
*/
|
|
220
|
+
setMenu(items: MenuItem[]): Promise<void>;
|
|
221
|
+
/**
|
|
222
|
+
* Update a single menu item
|
|
223
|
+
*/
|
|
224
|
+
updateMenuItem(id: string, updates: Partial<MenuItem>): Promise<void>;
|
|
225
|
+
/**
|
|
226
|
+
* Register a handler for a menu item action
|
|
227
|
+
*/
|
|
228
|
+
onMenuAction(actionId: string, handler: () => void): () => void;
|
|
229
|
+
/**
|
|
230
|
+
* Show tray icon
|
|
231
|
+
*/
|
|
232
|
+
show(): Promise<void>;
|
|
233
|
+
/**
|
|
234
|
+
* Hide tray icon
|
|
235
|
+
*/
|
|
236
|
+
hide(): Promise<void>;
|
|
237
|
+
/**
|
|
238
|
+
* Set highlight mode
|
|
239
|
+
*/
|
|
240
|
+
setHighlightMode(mode: 'always' | 'selection' | 'never'): Promise<void>;
|
|
241
|
+
/**
|
|
242
|
+
* Display balloon notification (Windows)
|
|
243
|
+
*/
|
|
244
|
+
displayBalloon(options: {
|
|
245
|
+
title: string;
|
|
246
|
+
content: string;
|
|
247
|
+
icon?: 'none' | 'info' | 'warning' | 'error';
|
|
248
|
+
largeIcon?: boolean;
|
|
249
|
+
noSound?: boolean;
|
|
250
|
+
respectQuietTime?: boolean;
|
|
251
|
+
}): Promise<void>;
|
|
252
|
+
/**
|
|
253
|
+
* Remove balloon notification (Windows)
|
|
254
|
+
*/
|
|
255
|
+
removeBalloon(): Promise<void>;
|
|
256
|
+
/**
|
|
257
|
+
* Get tray bounds (position and size)
|
|
258
|
+
*/
|
|
259
|
+
getBounds(): Promise<{
|
|
260
|
+
x: number;
|
|
261
|
+
y: number;
|
|
262
|
+
width: number;
|
|
263
|
+
height: number;
|
|
264
|
+
}>;
|
|
265
|
+
/**
|
|
266
|
+
* Destroy the tray
|
|
267
|
+
*/
|
|
268
|
+
destroy(): Promise<void>;
|
|
269
|
+
/**
|
|
270
|
+
* Show window when tray is clicked
|
|
271
|
+
*/
|
|
272
|
+
onClickShowWindow(): () => void;
|
|
273
|
+
/**
|
|
274
|
+
* Toggle window when tray is clicked
|
|
275
|
+
*/
|
|
276
|
+
onClickToggleWindow(): () => void;
|
|
277
|
+
private _call;
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Menubar app with optional popup window
|
|
281
|
+
* Perfect for:
|
|
282
|
+
* - Status bar utilities (Pomodoro timers, CPU monitors)
|
|
283
|
+
* - Quick access tools (clipboard managers, color pickers)
|
|
284
|
+
* - Background services with UI (sync status, VPN controls)
|
|
285
|
+
*/
|
|
286
|
+
export declare class MenubarApp {
|
|
287
|
+
private _tray;
|
|
288
|
+
private _config;
|
|
289
|
+
private _windowVisible;
|
|
290
|
+
constructor(config?: MenubarAppConfig);
|
|
291
|
+
/**
|
|
292
|
+
* Get the underlying tray instance
|
|
293
|
+
*/
|
|
294
|
+
get tray(): SystemTray;
|
|
295
|
+
/**
|
|
296
|
+
* Check if popup window is visible
|
|
297
|
+
*/
|
|
298
|
+
get isWindowVisible(): boolean;
|
|
299
|
+
private _setupBehavior;
|
|
300
|
+
private _hideDockIcon;
|
|
301
|
+
/**
|
|
302
|
+
* Show the popup window
|
|
303
|
+
*/
|
|
304
|
+
showWindow(): Promise<void>;
|
|
305
|
+
/**
|
|
306
|
+
* Hide the popup window
|
|
307
|
+
*/
|
|
308
|
+
hideWindow(): Promise<void>;
|
|
309
|
+
/**
|
|
310
|
+
* Toggle the popup window
|
|
311
|
+
*/
|
|
312
|
+
toggleWindow(): Promise<void>;
|
|
313
|
+
/**
|
|
314
|
+
* Set tray title
|
|
315
|
+
*/
|
|
316
|
+
setTitle(title: string): Promise<void>;
|
|
317
|
+
/**
|
|
318
|
+
* Set tray icon
|
|
319
|
+
*/
|
|
320
|
+
setIcon(icon: string): Promise<void>;
|
|
321
|
+
/**
|
|
322
|
+
* Set menu
|
|
323
|
+
*/
|
|
324
|
+
setMenu(items: MenuItem[]): Promise<void>;
|
|
325
|
+
/**
|
|
326
|
+
* Register menu action handler
|
|
327
|
+
*/
|
|
328
|
+
onMenuAction(actionId: string, handler: () => void): () => void;
|
|
329
|
+
/**
|
|
330
|
+
* Quit the app
|
|
331
|
+
*/
|
|
332
|
+
quit(): Promise<void>;
|
|
333
|
+
}
|
|
334
|
+
/**
|
|
335
|
+
* Manage system tray instances
|
|
336
|
+
*/
|
|
337
|
+
declare class TrayManager {
|
|
338
|
+
private _trays;
|
|
339
|
+
private _mainTray;
|
|
340
|
+
/**
|
|
341
|
+
* Get or create the main tray
|
|
342
|
+
*/
|
|
343
|
+
get main(): SystemTray;
|
|
344
|
+
/**
|
|
345
|
+
* Create a new tray
|
|
346
|
+
*/
|
|
347
|
+
create(id: string, options?: TrayOptions): SystemTray;
|
|
348
|
+
/**
|
|
349
|
+
* Get tray by ID
|
|
350
|
+
*/
|
|
351
|
+
get(id: string): SystemTray | undefined;
|
|
352
|
+
/**
|
|
353
|
+
* Destroy a tray
|
|
354
|
+
*/
|
|
355
|
+
destroy(id: string): Promise<void>;
|
|
356
|
+
/**
|
|
357
|
+
* Destroy all trays
|
|
358
|
+
*/
|
|
359
|
+
destroyAll(): Promise<void>;
|
|
360
|
+
/** Set main tray title */
|
|
361
|
+
setTitle: (title: string) => Promise<void>;
|
|
362
|
+
/** Set main tray icon */
|
|
363
|
+
setIcon: (icon: string) => Promise<void>;
|
|
364
|
+
/** Set main tray tooltip */
|
|
365
|
+
setTooltip: (tooltip: string) => Promise<void>;
|
|
366
|
+
/** Set main tray menu */
|
|
367
|
+
setMenu: (items: MenuItem[]) => Promise<void>;
|
|
368
|
+
/** Register menu action on main tray */
|
|
369
|
+
onMenuAction: (actionId: string, handler: () => void) => (() => void);
|
|
370
|
+
/** Register click handler on main tray */
|
|
371
|
+
onClick: (handler: TrayEventHandler<"click">) => (() => void);
|
|
372
|
+
/** Register right-click handler on main tray */
|
|
373
|
+
onRightClick: (handler: TrayEventHandler<"right-click">) => (() => void);
|
|
374
|
+
/** Toggle window on click */
|
|
375
|
+
onClickToggleWindow: () => (() => void);
|
|
376
|
+
}
|
|
377
|
+
/**
|
|
378
|
+
* Global tray manager instance
|
|
379
|
+
*/
|
|
380
|
+
export declare const trayManager: TrayManager;
|
|
381
|
+
/**
|
|
382
|
+
* Alias for convenience
|
|
383
|
+
*/
|
|
384
|
+
export declare const tray: TrayManager;
|
|
385
|
+
/**
|
|
386
|
+
* Create a menubar app
|
|
387
|
+
*/
|
|
388
|
+
export declare function createMenubarApp(config?: MenubarAppConfig): MenubarApp;
|
|
389
|
+
/**
|
|
390
|
+
* Helper to build a menu from items
|
|
391
|
+
*/
|
|
392
|
+
export declare function buildMenu(...items: MenuItem[]): MenuItem[];
|
|
393
|
+
/**
|
|
394
|
+
* Create a separator menu item
|
|
395
|
+
*/
|
|
396
|
+
export declare function separator(): MenuItem;
|
|
397
|
+
/**
|
|
398
|
+
* Create a normal menu item
|
|
399
|
+
*/
|
|
400
|
+
export declare function menuItem(label: string, options?: Omit<MenuItem, 'label' | 'type'>): MenuItem;
|
|
401
|
+
/**
|
|
402
|
+
* Create a checkbox menu item
|
|
403
|
+
*/
|
|
404
|
+
export declare function checkbox(label: string, checked: boolean, options?: Omit<MenuItem, 'label' | 'type' | 'checked'>): MenuItem;
|
|
405
|
+
/**
|
|
406
|
+
* Create a submenu
|
|
407
|
+
*/
|
|
408
|
+
export declare function submenu(label: string, items: MenuItem[], options?: Omit<MenuItem, 'label' | 'type' | 'submenu'>): MenuItem;
|
|
409
|
+
export default trayManager;
|
|
410
|
+
//# sourceMappingURL=tray.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tray.d.ts","sourceRoot":"","sources":["../../src/api/tray.ts"],"names":[],"mappings":"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"}
|