249 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			249 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
/*
 | 
						|
 _       __      _ __
 | 
						|
| |     / /___ _(_) /____
 | 
						|
| | /| / / __ `/ / / ___/
 | 
						|
| |/ |/ / /_/ / / (__  )
 | 
						|
|__/|__/\__,_/_/_/____/
 | 
						|
The electron alternative for Go
 | 
						|
(c) Lea Anthony 2019-present
 | 
						|
*/
 | 
						|
 | 
						|
export interface Position {
 | 
						|
    x: number;
 | 
						|
    y: number;
 | 
						|
}
 | 
						|
 | 
						|
export interface Size {
 | 
						|
    w: number;
 | 
						|
    h: number;
 | 
						|
}
 | 
						|
 | 
						|
export interface Screen {
 | 
						|
    isCurrent: boolean;
 | 
						|
    isPrimary: boolean;
 | 
						|
    width : number
 | 
						|
    height : number
 | 
						|
}
 | 
						|
 | 
						|
// Environment information such as platform, buildtype, ...
 | 
						|
export interface EnvironmentInfo {
 | 
						|
    buildType: string;
 | 
						|
    platform: string;
 | 
						|
    arch: string;
 | 
						|
}
 | 
						|
 | 
						|
// [EventsEmit](https://wails.io/docs/reference/runtime/events#eventsemit)
 | 
						|
// emits the given event. Optional data may be passed with the event.
 | 
						|
// This will trigger any event listeners.
 | 
						|
export function EventsEmit(eventName: string, ...data: any): void;
 | 
						|
 | 
						|
// [EventsOn](https://wails.io/docs/reference/runtime/events#eventson) sets up a listener for the given event name.
 | 
						|
export function EventsOn(eventName: string, callback: (...data: any) => void): () => void;
 | 
						|
 | 
						|
// [EventsOnMultiple](https://wails.io/docs/reference/runtime/events#eventsonmultiple)
 | 
						|
// sets up a listener for the given event name, but will only trigger a given number times.
 | 
						|
export function EventsOnMultiple(eventName: string, callback: (...data: any) => void, maxCallbacks: number): () => void;
 | 
						|
 | 
						|
// [EventsOnce](https://wails.io/docs/reference/runtime/events#eventsonce)
 | 
						|
// sets up a listener for the given event name, but will only trigger once.
 | 
						|
export function EventsOnce(eventName: string, callback: (...data: any) => void): () => void;
 | 
						|
 | 
						|
// [EventsOff](https://wails.io/docs/reference/runtime/events#eventsoff)
 | 
						|
// unregisters the listener for the given event name.
 | 
						|
export function EventsOff(eventName: string, ...additionalEventNames: string[]): void;
 | 
						|
 | 
						|
// [EventsOffAll](https://wails.io/docs/reference/runtime/events#eventsoffall)
 | 
						|
// unregisters all listeners.
 | 
						|
export function EventsOffAll(): void;
 | 
						|
 | 
						|
// [LogPrint](https://wails.io/docs/reference/runtime/log#logprint)
 | 
						|
// logs the given message as a raw message
 | 
						|
export function LogPrint(message: string): void;
 | 
						|
 | 
						|
// [LogTrace](https://wails.io/docs/reference/runtime/log#logtrace)
 | 
						|
// logs the given message at the `trace` log level.
 | 
						|
export function LogTrace(message: string): void;
 | 
						|
 | 
						|
// [LogDebug](https://wails.io/docs/reference/runtime/log#logdebug)
 | 
						|
// logs the given message at the `debug` log level.
 | 
						|
export function LogDebug(message: string): void;
 | 
						|
 | 
						|
// [LogError](https://wails.io/docs/reference/runtime/log#logerror)
 | 
						|
// logs the given message at the `error` log level.
 | 
						|
export function LogError(message: string): void;
 | 
						|
 | 
						|
// [LogFatal](https://wails.io/docs/reference/runtime/log#logfatal)
 | 
						|
// logs the given message at the `fatal` log level.
 | 
						|
// The application will quit after calling this method.
 | 
						|
export function LogFatal(message: string): void;
 | 
						|
 | 
						|
// [LogInfo](https://wails.io/docs/reference/runtime/log#loginfo)
 | 
						|
// logs the given message at the `info` log level.
 | 
						|
export function LogInfo(message: string): void;
 | 
						|
 | 
						|
// [LogWarning](https://wails.io/docs/reference/runtime/log#logwarning)
 | 
						|
// logs the given message at the `warning` log level.
 | 
						|
export function LogWarning(message: string): void;
 | 
						|
 | 
						|
// [WindowReload](https://wails.io/docs/reference/runtime/window#windowreload)
 | 
						|
// Forces a reload by the main application as well as connected browsers.
 | 
						|
export function WindowReload(): void;
 | 
						|
 | 
						|
// [WindowReloadApp](https://wails.io/docs/reference/runtime/window#windowreloadapp)
 | 
						|
// Reloads the application frontend.
 | 
						|
export function WindowReloadApp(): void;
 | 
						|
 | 
						|
// [WindowSetAlwaysOnTop](https://wails.io/docs/reference/runtime/window#windowsetalwaysontop)
 | 
						|
// Sets the window AlwaysOnTop or not on top.
 | 
						|
export function WindowSetAlwaysOnTop(b: boolean): void;
 | 
						|
 | 
						|
// [WindowSetSystemDefaultTheme](https://wails.io/docs/next/reference/runtime/window#windowsetsystemdefaulttheme)
 | 
						|
// *Windows only*
 | 
						|
// Sets window theme to system default (dark/light).
 | 
						|
export function WindowSetSystemDefaultTheme(): void;
 | 
						|
 | 
						|
// [WindowSetLightTheme](https://wails.io/docs/next/reference/runtime/window#windowsetlighttheme)
 | 
						|
// *Windows only*
 | 
						|
// Sets window to light theme.
 | 
						|
export function WindowSetLightTheme(): void;
 | 
						|
 | 
						|
// [WindowSetDarkTheme](https://wails.io/docs/next/reference/runtime/window#windowsetdarktheme)
 | 
						|
// *Windows only*
 | 
						|
// Sets window to dark theme.
 | 
						|
export function WindowSetDarkTheme(): void;
 | 
						|
 | 
						|
// [WindowCenter](https://wails.io/docs/reference/runtime/window#windowcenter)
 | 
						|
// Centers the window on the monitor the window is currently on.
 | 
						|
export function WindowCenter(): void;
 | 
						|
 | 
						|
// [WindowSetTitle](https://wails.io/docs/reference/runtime/window#windowsettitle)
 | 
						|
// Sets the text in the window title bar.
 | 
						|
export function WindowSetTitle(title: string): void;
 | 
						|
 | 
						|
// [WindowFullscreen](https://wails.io/docs/reference/runtime/window#windowfullscreen)
 | 
						|
// Makes the window full screen.
 | 
						|
export function WindowFullscreen(): void;
 | 
						|
 | 
						|
// [WindowUnfullscreen](https://wails.io/docs/reference/runtime/window#windowunfullscreen)
 | 
						|
// Restores the previous window dimensions and position prior to full screen.
 | 
						|
export function WindowUnfullscreen(): void;
 | 
						|
 | 
						|
// [WindowIsFullscreen](https://wails.io/docs/reference/runtime/window#windowisfullscreen)
 | 
						|
// Returns the state of the window, i.e. whether the window is in full screen mode or not.
 | 
						|
export function WindowIsFullscreen(): Promise<boolean>;
 | 
						|
 | 
						|
// [WindowSetSize](https://wails.io/docs/reference/runtime/window#windowsetsize)
 | 
						|
// Sets the width and height of the window.
 | 
						|
export function WindowSetSize(width: number, height: number): Promise<Size>;
 | 
						|
 | 
						|
// [WindowGetSize](https://wails.io/docs/reference/runtime/window#windowgetsize)
 | 
						|
// Gets the width and height of the window.
 | 
						|
export function WindowGetSize(): Promise<Size>;
 | 
						|
 | 
						|
// [WindowSetMaxSize](https://wails.io/docs/reference/runtime/window#windowsetmaxsize)
 | 
						|
// Sets the maximum window size. Will resize the window if the window is currently larger than the given dimensions.
 | 
						|
// Setting a size of 0,0 will disable this constraint.
 | 
						|
export function WindowSetMaxSize(width: number, height: number): void;
 | 
						|
 | 
						|
// [WindowSetMinSize](https://wails.io/docs/reference/runtime/window#windowsetminsize)
 | 
						|
// Sets the minimum window size. Will resize the window if the window is currently smaller than the given dimensions.
 | 
						|
// Setting a size of 0,0 will disable this constraint.
 | 
						|
export function WindowSetMinSize(width: number, height: number): void;
 | 
						|
 | 
						|
// [WindowSetPosition](https://wails.io/docs/reference/runtime/window#windowsetposition)
 | 
						|
// Sets the window position relative to the monitor the window is currently on.
 | 
						|
export function WindowSetPosition(x: number, y: number): void;
 | 
						|
 | 
						|
// [WindowGetPosition](https://wails.io/docs/reference/runtime/window#windowgetposition)
 | 
						|
// Gets the window position relative to the monitor the window is currently on.
 | 
						|
export function WindowGetPosition(): Promise<Position>;
 | 
						|
 | 
						|
// [WindowHide](https://wails.io/docs/reference/runtime/window#windowhide)
 | 
						|
// Hides the window.
 | 
						|
export function WindowHide(): void;
 | 
						|
 | 
						|
// [WindowShow](https://wails.io/docs/reference/runtime/window#windowshow)
 | 
						|
// Shows the window, if it is currently hidden.
 | 
						|
export function WindowShow(): void;
 | 
						|
 | 
						|
// [WindowMaximise](https://wails.io/docs/reference/runtime/window#windowmaximise)
 | 
						|
// Maximises the window to fill the screen.
 | 
						|
export function WindowMaximise(): void;
 | 
						|
 | 
						|
// [WindowToggleMaximise](https://wails.io/docs/reference/runtime/window#windowtogglemaximise)
 | 
						|
// Toggles between Maximised and UnMaximised.
 | 
						|
export function WindowToggleMaximise(): void;
 | 
						|
 | 
						|
// [WindowUnmaximise](https://wails.io/docs/reference/runtime/window#windowunmaximise)
 | 
						|
// Restores the window to the dimensions and position prior to maximising.
 | 
						|
export function WindowUnmaximise(): void;
 | 
						|
 | 
						|
// [WindowIsMaximised](https://wails.io/docs/reference/runtime/window#windowismaximised)
 | 
						|
// Returns the state of the window, i.e. whether the window is maximised or not.
 | 
						|
export function WindowIsMaximised(): Promise<boolean>;
 | 
						|
 | 
						|
// [WindowMinimise](https://wails.io/docs/reference/runtime/window#windowminimise)
 | 
						|
// Minimises the window.
 | 
						|
export function WindowMinimise(): void;
 | 
						|
 | 
						|
// [WindowUnminimise](https://wails.io/docs/reference/runtime/window#windowunminimise)
 | 
						|
// Restores the window to the dimensions and position prior to minimising.
 | 
						|
export function WindowUnminimise(): void;
 | 
						|
 | 
						|
// [WindowIsMinimised](https://wails.io/docs/reference/runtime/window#windowisminimised)
 | 
						|
// Returns the state of the window, i.e. whether the window is minimised or not.
 | 
						|
export function WindowIsMinimised(): Promise<boolean>;
 | 
						|
 | 
						|
// [WindowIsNormal](https://wails.io/docs/reference/runtime/window#windowisnormal)
 | 
						|
// Returns the state of the window, i.e. whether the window is normal or not.
 | 
						|
export function WindowIsNormal(): Promise<boolean>;
 | 
						|
 | 
						|
// [WindowSetBackgroundColour](https://wails.io/docs/reference/runtime/window#windowsetbackgroundcolour)
 | 
						|
// Sets the background colour of the window to the given RGBA colour definition. This colour will show through for all transparent pixels.
 | 
						|
export function WindowSetBackgroundColour(R: number, G: number, B: number, A: number): void;
 | 
						|
 | 
						|
// [ScreenGetAll](https://wails.io/docs/reference/runtime/window#screengetall)
 | 
						|
// Gets the all screens. Call this anew each time you want to refresh data from the underlying windowing system.
 | 
						|
export function ScreenGetAll(): Promise<Screen[]>;
 | 
						|
 | 
						|
// [BrowserOpenURL](https://wails.io/docs/reference/runtime/browser#browseropenurl)
 | 
						|
// Opens the given URL in the system browser.
 | 
						|
export function BrowserOpenURL(url: string): void;
 | 
						|
 | 
						|
// [Environment](https://wails.io/docs/reference/runtime/intro#environment)
 | 
						|
// Returns information about the environment
 | 
						|
export function Environment(): Promise<EnvironmentInfo>;
 | 
						|
 | 
						|
// [Quit](https://wails.io/docs/reference/runtime/intro#quit)
 | 
						|
// Quits the application.
 | 
						|
export function Quit(): void;
 | 
						|
 | 
						|
// [Hide](https://wails.io/docs/reference/runtime/intro#hide)
 | 
						|
// Hides the application.
 | 
						|
export function Hide(): void;
 | 
						|
 | 
						|
// [Show](https://wails.io/docs/reference/runtime/intro#show)
 | 
						|
// Shows the application.
 | 
						|
export function Show(): void;
 | 
						|
 | 
						|
// [ClipboardGetText](https://wails.io/docs/reference/runtime/clipboard#clipboardgettext)
 | 
						|
// Returns the current text stored on clipboard
 | 
						|
export function ClipboardGetText(): Promise<string>;
 | 
						|
 | 
						|
// [ClipboardSetText](https://wails.io/docs/reference/runtime/clipboard#clipboardsettext)
 | 
						|
// Sets a text on the clipboard
 | 
						|
export function ClipboardSetText(text: string): Promise<boolean>;
 | 
						|
 | 
						|
// [OnFileDrop](https://wails.io/docs/reference/runtime/draganddrop#onfiledrop)
 | 
						|
// OnFileDrop listens to drag and drop events and calls the callback with the coordinates of the drop and an array of path strings.
 | 
						|
export function OnFileDrop(callback: (x: number, y: number ,paths: string[]) => void, useDropTarget: boolean) :void
 | 
						|
 | 
						|
// [OnFileDropOff](https://wails.io/docs/reference/runtime/draganddrop#dragandddropoff)
 | 
						|
// OnFileDropOff removes the drag and drop listeners and handlers.
 | 
						|
export function OnFileDropOff() :void
 | 
						|
 | 
						|
// Check if the file path resolver is available
 | 
						|
export function CanResolveFilePaths(): boolean;
 | 
						|
 | 
						|
// Resolves file paths for an array of files
 | 
						|
export function ResolveFilePaths(files: File[]): void |