bindings.ts 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. // This file has been generated by Tauri Specta. Do not edit this file manually.
  2. import { invoke as __TAURI_INVOKE, Channel } from '@tauri-apps/api/core';
  3. import * as __TAURI_EVENT from "@tauri-apps/api/event";
  4. /** Commands */
  5. export const commands = {
  6. killSidecar: () => __TAURI_INVOKE<void>("kill_sidecar"),
  7. installCli: () => __TAURI_INVOKE<string>("install_cli"),
  8. awaitInitialization: (events: Channel) => __TAURI_INVOKE<ServerReadyData>("await_initialization", { events }),
  9. getDefaultServerUrl: () => __TAURI_INVOKE<string | null>("get_default_server_url"),
  10. setDefaultServerUrl: (url: string | null) => __TAURI_INVOKE<null>("set_default_server_url", { url }),
  11. getDisplayBackend: () => __TAURI_INVOKE<"wayland" | "auto" | null>("get_display_backend"),
  12. setDisplayBackend: (backend: LinuxDisplayBackend) => __TAURI_INVOKE<null>("set_display_backend", { backend }),
  13. parseMarkdownCommand: (markdown: string) => __TAURI_INVOKE<string>("parse_markdown_command", { markdown }),
  14. checkAppExists: (appName: string) => __TAURI_INVOKE<boolean>("check_app_exists", { appName }),
  15. resolveAppPath: (appName: string) => __TAURI_INVOKE<string | null>("resolve_app_path", { appName }),
  16. };
  17. /** Events */
  18. export const events = {
  19. loadingWindowComplete: makeEvent<LoadingWindowComplete>("loading-window-complete"),
  20. };
  21. /* Types */
  22. export type InitStep = { phase: "server_waiting" } | { phase: "sqlite_waiting" } | { phase: "done" };
  23. export type LinuxDisplayBackend = "wayland" | "auto";
  24. export type LoadingWindowComplete = null;
  25. export type ServerReadyData = {
  26. url: string,
  27. password: string | null,
  28. };
  29. /* Tauri Specta runtime */
  30. function makeEvent<T>(name: string) {
  31. const base = {
  32. listen: (cb: __TAURI_EVENT.EventCallback<T>) => __TAURI_EVENT.listen(name, cb),
  33. once: (cb: __TAURI_EVENT.EventCallback<T>) => __TAURI_EVENT.once(name, cb),
  34. emit: (payload: T) => __TAURI_EVENT.emit(name, payload) as unknown as (T extends null ? () => Promise<void> : (payload: T) => Promise<void>)
  35. };
  36. const fn = (target: import("@tauri-apps/api/webview").Webview | import("@tauri-apps/api/window").Window) => ({
  37. listen: (cb: __TAURI_EVENT.EventCallback<T>) => target.listen(name, cb),
  38. once: (cb: __TAURI_EVENT.EventCallback<T>) => target.once(name, cb),
  39. emit: (payload: T) => target.emit(name, payload) as unknown as (T extends null ? () => Promise<void> : (payload: T) => Promise<void>)
  40. });
  41. return Object.assign(fn, base);
  42. }