/** * Important note: These classes make use of "getters". Don't confuse these with function calls. */ import { SDServerInfo, MonitorInfo, VirtualScreenCoordinates } from "../FEA"; import { StandardErrorCallback, Manifest, StandardPromise } from "../types"; import { FEAWindow, NotificationOptions, FEAInfo } from "../FEA"; declare class SystemWindow { static createNew(params: any, cb: StandardErrorCallback): void; static getCurrent(): FEAWindow; static wrap(windowName: string): FEAWindow; } /** *

Clipboard

* @param {object} params */ declare class Clipboard { constructor(); /** * Write Text to Clipboard */ static writeText(data: any, type: any, callback: any, errorCallback: any): void; static writeHTML(data: any, type: any, callback: any, errorCallback: any): void; static writeRTF(data: any, type: any, callback: any, errorCallback: any): void; static readText(type: any, callback: any, errorCallback: any): void; static readHTML(type: any, callback: any, errorCallback: any): void; static readRTF(type: any, callback: any, errorCallback: any): void; } /** *

The Finsemble System API

* ---------- * The Finsemble System API is a set private and experimental of APIs for exposing operating system and electron-based functionality, including the clipboard, mouse position, monitor info, and others. * @private */ export declare class System { /** * Application is deprecated. getCurrent().restart() continues to be used by LTS seed so this must * stay until we can remove SDD permanently from seed. * * The other functions can be removed once clients are confirmed not to be using them. */ static get Application(): { getCurrent: () => { restart: () => void; getWindow: () => FEAWindow; addEventListener: (type: any, listener: (event: any) => void, callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; close: (force?: boolean, callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; getChildWindows: (callback?: ((children: FEAWindow[]) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; getGroups: (callback?: ((groups: FEAWindow[][]) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; getManifest: (callback?: ((manifest: Manifest) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; getParentUuid: (callback?: ((uuid: string) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; getInfo: (callback?: ((info: any) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; getTrayIconInfo: (callback?: ((trayInfo: any) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; isRunning: (callback?: ((running: boolean) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; registerUser: (userName: string, appName: string, callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; removeEventListener: (type: any, previouslyRegisteredListener: (event: any) => any, callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; removeTrayIcon: (callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; run: (callback?: ((successObj: any) => void) | undefined, errorCallback?: ((reason: string, errorObj: any) => void) | undefined) => void; scheduleRestart: (callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; setTrayIcon: (iconUrl: string, listener: { [key: string]: Function; }, callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; terminate: (callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; wait: (callback?: () => void, errorCallback?: ((reason: string) => void) | undefined) => void; window: { name: string; }; uuid: string; }; }; /** * Determines if the current window was launched through finsemble, or is external or freestanding * @private * @returns boolean True if freestanding */ static isFreestanding(): boolean; /** * Window * @private * @returns Window */ static get Window(): typeof SystemWindow; /** * Notification * @private * @returns Notification */ static get Notification(): { send: (params: NotificationOptions) => void; }; /** * Clipboard * @private * @returns Clipboard */ static get Clipboard(): typeof Clipboard; static getManifest(cb?: (manifest: Manifest) => void): Promise; /** * (experimental) Gets current mouse position * @experimental * @param cb */ static getMousePosition(cb?: StandardErrorCallback): Promise; /** * Deletes assets downloaded via the manifest's `appAssets` config * @param alias - If set then delete that specific asset, otherwise delete them all * @returns A golang style promise that resolves after the delete is complete */ static deleteAssets(alias?: string | null): StandardPromise; /** * Asynchronous method that passes the SmartDesktopDesigner's Server Information to the provided callback * @private * @returns Clipboard */ static getSDServerInfo(cb?: Function): Promise; /** * Get all monitors * @private * @param cb Callback with monitorInfo type */ static getMonitorInfo(cb?: (monitorInfo: MonitorInfo) => void): Promise; /** * Returns a boolean that is true when the webcontents are running within an electron browserView * @private * @returns boolean */ static isBrowserView(): boolean; /** * Returns the BrowserViewId. See isBrowserView method. * @private * @returns number The browserViewId * @deprecated use getWebContentsId */ static getViewId(): number | null; /** * Returns the Electron WebContents ID for the current WebContents (view or window) * @private * @returns number The WebContents ID */ static getWebContentsId(): number | null; /** * Does the current webcontents contain browserviews * @deprecated - use isTitlebarWindow() instead * @private * @returns boolean True when the current webcontents are a browserwindow that contains associated browserviews */ static hasBrowserView(): boolean; /** * Is the current webcontents a title bar shell * @private * @returns boolean True when the current webcontents is a title bar shell */ static isTitlebarWindow(): boolean; /** * Returns the fin object * @private * @returns fin */ static get fin(): import("../FEA").FEA; /** * Invokes optional callback and resolves promise when FEA is ready. * * @param {Function} [cb] Optional callback for system ready * @private * @returns Promise * @deprecated It is no longer necessary to wait on ready */ static ready(cb?: () => void): Promise; /** * Sets the icon for the system tray * @param url The url of the icon to use in the system tray */ static setTrayIcon(url: string, cb?: () => void): void; /** * Asynchronous method that passes the host specs of the system to the provided callback * @private * @param cb callback */ static getHostSpecs(cb?: Function): Promise; /** * Returns the InterApplicationBus * @private * @returns IAB */ static get InterApplicationBus(): import("../FEA").FEAInterApplicationBus; /** * Launches an external application * @private */ static get launchExternalProcess(): (options: import("../FEA").ExternalProcessLaunchInfo, callback?: ((payload: { uuid: string; }) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; /** * Terminates an external application * @private */ static get terminateExternalProcess(): (processUuid: string, timeout: number, callback?: ((info: { result: "clean" | "terminated" | "failed"; }) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; /** * Hard terminates Finsemble. * * (deprecated) Use `FSBL.shutdownApplication()` * @private */ static get exit(): (callback?: (() => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; /** * Clears finsemble cache * @private */ static get clearCache(): (options: import("../FEA").CacheOptions, callback?: (() => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; /** * Shows the chromium developer tools for the current window * @private * @returns IAB */ static get showDeveloperTools(): (name: string, isView?: number | boolean | null | undefined, callback?: (() => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; /** * Returns runtime information * @private * @returns RunTimeInfo */ /** * Adds an event listener * @private * @returns RunTimeInfo */ static get addEventListener(): ({ (type: K, listener: (this: Window, ev: WindowEventMap[K]) => any, options?: boolean | AddEventListenerOptions | undefined): void; (type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions | undefined): void; } & typeof addEventListener) | ((type: "application-closed" | "application-crashed" | "application-created" | "application-started" | "apply-update-requested" | "desktop-icon-clicked" | "idle-state-changed" | "monitor-info-changed" | "new-window-created" | "session-changed" | "system-tray-click" | "system-tray-right-click" | "system-tray-mouse-enter" | "protocol-handler-triggered" | "log-fea", listener: (event: import("../FEA").SystemBaseEvent | import("../FEA").DesktopIconClickedEvent | import("../FEA").IdleStateChangedEvent | import("../FEA").MonitorInfoChangedEvent | import("../FEA").SessionChangedEvent | import("../FEA").ProtocolHandlerEvent) => void, callback?: (() => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void); static get addSelectClientCertificateListener(): () => any; static get addCertificateErrorListener(): () => any; static getFEAInfo(cb?: (info: FEAInfo) => void): Promise; /** * getVersion * @private * @deprecated Use getFEAInfo instead. * @returns getVersion function */ static get getVersion(): (callback?: ((version: string) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; /** * getUpdateAvailable * @private * @returns getUpdateAvailable function */ static get getUpdateAvailable(): (cb: (isUpdateAvailable: boolean) => void) => void; /** * (deprecated) Opens website with external browser * @returns openUrlWithBrowser function */ static get openUrlWithBrowser(): (url: string, callback?: (() => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; /** * getProcessList * @private * @returns getProcessList function */ static get getProcessList(): (callback?: ((processInfoList: import("../FEA").Metric[]) => void) | undefined, errorCallback?: ((reason: string) => void) | undefined) => void; /** * getProtocolString * @private * @returns getProtocolString function */ static get getProtocolString(): (cb?: ((data: string) => void) | undefined) => Promise; /** * hideSplashScreen * @private * @returns hideSplashScreen function */ static get hideSplashScreen(): () => void; /** * notifyLoggerReady * @private */ static notifyLoggerReady(): void; /** * updateCentralLoggerState * @private */ static updateCentralLoggerState(loggerState: any): void; /** * Performs handshake with FEA to indicate the primary application started successfully * @private */ static startupApplicationHandshake(): void; /** * Hard terminates the application. * This is called only by Finsemble's ShutdownManager to stop the entire application * after it has gracefully closed services. Do not call this directly. Use `FSBL.shutdownApplication()`. * @private */ static terminate(): void; /** * Hard resets the application. * This is called only by Finsemble's ShutdownManager to restart the entire application * after it has gracefully closed services. Do not call this directly. Use `FSBL.restartApplication()`. * @private */ static restart(): void; /** * Gets an environment variable by name * @param envVar The name of the environment variable to fetch * @param cb the optional callback * @returns a Promise that resolves to the environment variable value * @private */ static getEnvironmentVariable(envVar: string, cb?: (variable: string) => void): Promise; } export {}; //# sourceMappingURL=system.d.ts.map