// Cynhyrchwyd y ffeil hon yn awtomatig. PEIDIWCH Â MODIWL
// This file is automatically generated. DO NOT EDIT

/**
 * App 经 Wails v3 的 Service 绑定暴露给前端，承载只有桌面端能做的原生能力：
 * 文件读写、系统"另存为"框、用系统默认应用打开、原生通知。
 * v3 中不再需要注入 ctx——对话框经 application.Get().Dialog 获取。
 * @module
 */

// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore: Unused imports
import { Call as $Call, CancellablePromise as $CancellablePromise, Create as $Create } from "@wailsio/runtime";

/**
 * Notify 弹一条系统通知（best-effort：macOS 用 osascript，其它平台暂静默）。
 */
export function Notify(title: string, body: string): $CancellablePromise<void> {
    return $Call.ByID(2739682372, title, body);
}

/**
 * Ping 供前端探活 Go 桥是否就绪。
 */
export function Ping(): $CancellablePromise<string> {
    return $Call.ByID(1003072145);
}

/**
 * PrintReportPage 把报告打印视图 HTML 落到临时文件，交系统默认浏览器打开（在那里 ⌘P →
 * 存储为 PDF）。Wails 的 WKWebView 会把 window.open 拦成 null，前端弹打印窗那条路在壳内
 * 走不通；转交系统浏览器后「前端打印出 PDF、CJK 零字体依赖」的原有优势不变。返回落盘路径。
 */
export function PrintReportPage(filename: string, html: string): $CancellablePromise<string> {
    return $Call.ByID(3564528865, filename, html);
}

/**
 * SaveReportAs 弹原生"另存为"对话框，把 url 指向的报告（.docx）下载到用户选定路径。
 * 返回保存路径；用户取消则返回空串。
 */
export function SaveReportAs(url: string, filename: string): $CancellablePromise<string> {
    return $Call.ByID(1437856486, url, filename);
}
