Initial commit
This commit is contained in:
147
node_modules/@tauri-apps/api/event.d.ts
generated
vendored
Normal file
147
node_modules/@tauri-apps/api/event.d.ts
generated
vendored
Normal file
@@ -0,0 +1,147 @@
|
||||
declare global {
|
||||
interface Window {
|
||||
__TAURI_EVENT_PLUGIN_INTERNALS__: {
|
||||
unregisterListener: (event: string, eventId: number) => void;
|
||||
};
|
||||
}
|
||||
}
|
||||
type EventTarget = {
|
||||
kind: 'Any';
|
||||
} | {
|
||||
kind: 'AnyLabel';
|
||||
label: string;
|
||||
} | {
|
||||
kind: 'App';
|
||||
} | {
|
||||
kind: 'Window';
|
||||
label: string;
|
||||
} | {
|
||||
kind: 'Webview';
|
||||
label: string;
|
||||
} | {
|
||||
kind: 'WebviewWindow';
|
||||
label: string;
|
||||
};
|
||||
interface Event<T> {
|
||||
/** Event name */
|
||||
event: EventName;
|
||||
/** Event identifier used to unlisten */
|
||||
id: number;
|
||||
/** Event payload */
|
||||
payload: T;
|
||||
}
|
||||
type EventCallback<T> = (event: Event<T>) => void;
|
||||
type UnlistenFn = () => void;
|
||||
type EventName = `${TauriEvent}` | (string & Record<never, never>);
|
||||
interface Options {
|
||||
/**
|
||||
* The event target to listen to, defaults to `{ kind: 'Any' }`, see {@link EventTarget}.
|
||||
*
|
||||
* If a string is provided, {@link EventTarget.AnyLabel} is used.
|
||||
*/
|
||||
target?: string | EventTarget;
|
||||
}
|
||||
/**
|
||||
* @since 1.1.0
|
||||
*/
|
||||
declare enum TauriEvent {
|
||||
WINDOW_RESIZED = "tauri://resize",
|
||||
WINDOW_MOVED = "tauri://move",
|
||||
WINDOW_CLOSE_REQUESTED = "tauri://close-requested",
|
||||
WINDOW_DESTROYED = "tauri://destroyed",
|
||||
WINDOW_FOCUS = "tauri://focus",
|
||||
WINDOW_BLUR = "tauri://blur",
|
||||
WINDOW_SCALE_FACTOR_CHANGED = "tauri://scale-change",
|
||||
WINDOW_THEME_CHANGED = "tauri://theme-changed",
|
||||
WINDOW_CREATED = "tauri://window-created",
|
||||
WINDOW_SUSPENDED = "tauri://suspended",
|
||||
WINDOW_RESUMED = "tauri://resumed",
|
||||
WEBVIEW_CREATED = "tauri://webview-created",
|
||||
DRAG_ENTER = "tauri://drag-enter",
|
||||
DRAG_OVER = "tauri://drag-over",
|
||||
DRAG_DROP = "tauri://drag-drop",
|
||||
DRAG_LEAVE = "tauri://drag-leave"
|
||||
}
|
||||
/**
|
||||
* Listen to an emitted event to any {@link EventTarget|target}.
|
||||
*
|
||||
* @example
|
||||
* ```typescript
|
||||
* import { listen } from '@tauri-apps/api/event';
|
||||
* const unlisten = await listen<string>('error', (event) => {
|
||||
* console.log(`Got error, payload: ${event.payload}`);
|
||||
* });
|
||||
*
|
||||
* // you need to call unlisten if your handler goes out of scope e.g. the component is unmounted
|
||||
* unlisten();
|
||||
* ```
|
||||
*
|
||||
* @param event Event name. Must include only alphanumeric characters, `-`, `/`, `:` and `_`.
|
||||
* @param handler Event handler callback.
|
||||
* @param options Event listening options.
|
||||
* @returns A promise resolving to a function to unlisten to the event.
|
||||
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
declare function listen<T>(event: EventName, handler: EventCallback<T>, options?: Options): Promise<UnlistenFn>;
|
||||
/**
|
||||
* Listens once to an emitted event to any {@link EventTarget|target}.
|
||||
*
|
||||
* @example
|
||||
* ```typescript
|
||||
* import { once } from '@tauri-apps/api/event';
|
||||
* interface LoadedPayload {
|
||||
* loggedIn: boolean,
|
||||
* token: string
|
||||
* }
|
||||
* const unlisten = await once<LoadedPayload>('loaded', (event) => {
|
||||
* console.log(`App is loaded, loggedIn: ${event.payload.loggedIn}, token: ${event.payload.token}`);
|
||||
* });
|
||||
*
|
||||
* // you need to call unlisten if your handler goes out of scope e.g. the component is unmounted
|
||||
* unlisten();
|
||||
* ```
|
||||
*
|
||||
* @param event Event name. Must include only alphanumeric characters, `-`, `/`, `:` and `_`.
|
||||
* @param handler Event handler callback.
|
||||
* @param options Event listening options.
|
||||
* @returns A promise resolving to a function to unlisten to the event.
|
||||
* Note that removing the listener is required if your listener goes out of scope e.g. the component is unmounted.
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
declare function once<T>(event: EventName, handler: EventCallback<T>, options?: Options): Promise<UnlistenFn>;
|
||||
/**
|
||||
* Emits an event to all {@link EventTarget|targets}.
|
||||
*
|
||||
* @example
|
||||
* ```typescript
|
||||
* import { emit } from '@tauri-apps/api/event';
|
||||
* await emit('frontend-loaded', { loggedIn: true, token: 'authToken' });
|
||||
* ```
|
||||
*
|
||||
* @param event Event name. Must include only alphanumeric characters, `-`, `/`, `:` and `_`.
|
||||
* @param payload Event payload.
|
||||
*
|
||||
* @since 1.0.0
|
||||
*/
|
||||
declare function emit<T>(event: string, payload?: T): Promise<void>;
|
||||
/**
|
||||
* Emits an event to all {@link EventTarget|targets} matching the given target.
|
||||
*
|
||||
* @example
|
||||
* ```typescript
|
||||
* import { emitTo } from '@tauri-apps/api/event';
|
||||
* await emitTo('main', 'frontend-loaded', { loggedIn: true, token: 'authToken' });
|
||||
* ```
|
||||
*
|
||||
* @param target Label of the target Window/Webview/WebviewWindow or raw {@link EventTarget} object.
|
||||
* @param event Event name. Must include only alphanumeric characters, `-`, `/`, `:` and `_`.
|
||||
* @param payload Event payload.
|
||||
*
|
||||
* @since 2.0.0
|
||||
*/
|
||||
declare function emitTo<T>(target: EventTarget | string, event: string, payload?: T): Promise<void>;
|
||||
export type { Event, EventTarget, EventCallback, UnlistenFn, EventName, Options };
|
||||
export { listen, once, emit, emitTo, TauriEvent };
|
||||
Reference in New Issue
Block a user