You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tauri-plugins-workspace/plugins/process/guest-js/index.ts

50 lines
1.1 KiB

// Copyright 2019-2023 Tauri Programme within The Commons Conservancy
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
/**
* Perform operations on the current process.
* @module
*/
declare global {
interface Window {
__TAURI_INVOKE__: <T>(cmd: string, args?: unknown) => Promise<T>;
}
}
/**
* Exits immediately with the given `exitCode`.
* @example
* ```typescript
* import { exit } from '@tauri-apps/plugin-process';
* await exit(1);
* ```
*
* @param code The exit code to use.
* @returns A promise indicating the success or failure of the operation.
*
* @since 1.0.0
*/
async function exit(code = 0): Promise<void> {
return window.__TAURI_INVOKE__("plugin:process|exit", { code });
}
/**
* Exits the current instance of the app then relaunches it.
* @example
* ```typescript
* import { relaunch } from '@tauri-apps/plugin-process';
* await relaunch();
* ```
*
* @returns A promise indicating the success or failure of the operation.
*
* @since 1.0.0
*/
async function relaunch(): Promise<void> {
return window.__TAURI_INVOKE__("plugin:process|restart");
}
export { exit, relaunch };