-
Notifications
You must be signed in to change notification settings - Fork 718
/
Copy pathambient.d.ts
184 lines (182 loc) · 5.97 KB
/
ambient.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
import * as MonacoType from 'monaco-editor';
import {
BisectRequest,
BlockableAccelerator,
DownloadVersionParams,
EditorValues,
FiddleEvent,
FileTransformOperation,
Files,
IPackageManager,
InstallState,
InstallStateEvent,
MessageOptions,
NodeTypes,
OutputEntry,
PMOperationOptions,
PackageJsonOptions,
ProgressObject,
ReleaseInfo,
RunResult,
RunnableVersion,
SelectedLocalVersion,
SemVer,
StartFiddleParams,
TestRequest,
Version,
} from './interfaces';
import { App } from './renderer/app';
import { FiddleTheme, LoadedFiddleTheme } from './themes-defaults';
declare global {
interface Window {
app: App;
monaco: typeof MonacoType;
ElectronFiddle: {
addEventListener(
type: FiddleEvent,
listener: () => void,
options?: { signal: AbortSignal },
): void;
addEventListener(
type: 'bisect-task',
listener: (request: BisectRequest) => void,
options?: { signal: AbortSignal },
): void;
addEventListener(
type: 'execute-monaco-command',
listener: (commandId: string) => void,
options?: { signal: AbortSignal },
): void;
addEventListener(
type: 'fiddle-runner-output',
listener: (output: string) => void,
): void;
addEventListener(
type: 'fiddle-stopped',
listener: (code: number | null, signal: string | null) => void,
): void;
addEventListener(
type: 'load-example',
listener: (exampleInfo: { path: string; tag: string }) => void,
options?: { signal: AbortSignal },
): void;
addEventListener(
type: 'load-gist',
listener: (gistInfo: { id: string }) => void,
): void;
addEventListener(
type: 'open-fiddle',
listener: (filePath: string, files: Record<string, string>) => void,
): void;
addEventListener(
type: 'open-template',
listener: (name: string, editorValues: EditorValues) => void,
): void;
addEventListener(
type: 'register-local-version',
listener: (info: {
name: string;
path: string;
version: string;
}) => void,
): void;
addEventListener(
type: 'saved-local-fiddle',
listener: (filePath: string) => void,
): void;
addEventListener(
type: 'test-task',
listener: (request: TestRequest) => void,
options?: { signal: AbortSignal },
): void;
addEventListener(
type: 'toggle-monaco-option',
listener: (path: string) => void,
): void;
addEventListener(
type: 'version-download-progress',
listener: (version: string, progress: ProgressObject) => void,
): void;
addEventListener(
type: 'version-state-changed',
listener: (event: InstallStateEvent) => void,
): void;
addEventListener(
type: 'electron-types-changed',
listener: (types: string, version: string) => void,
): void;
addModules(
{ dir, packageManager }: PMOperationOptions,
...names: Array<string>
): Promise<string>;
arch: string;
blockAccelerators(acceleratorsToBlock: BlockableAccelerator[]): void;
cleanupDirectory(dir: string): Promise<boolean>;
confirmQuit(): void;
createThemeFile(
newTheme: FiddleTheme,
name?: string,
): Promise<LoadedFiddleTheme>;
deleteUserData(name: string): Promise<void>;
downloadVersion(
version: string,
opts?: Partial<DownloadVersionParams>,
): Promise<void>;
fetchVersions(): Promise<Version[]>;
getAvailableThemes(): Promise<Array<LoadedFiddleTheme>>;
getElectronTypes(ver: RunnableVersion): Promise<string | undefined>;
getIsPackageManagerInstalled(
packageManager: IPackageManager,
ignoreCache?: boolean,
): Promise<boolean>;
getProjectName(localPath?: string): Promise<string>;
getTemplate(version: string): Promise<EditorValues>;
getTemplateValues: (name: string) => Promise<EditorValues>;
getTestTemplate(): Promise<EditorValues>;
getLatestStable(): SemVer | undefined;
getLocalVersionState(ver: Version): InstallState;
getNodeTypes(
version: string,
): Promise<{ version: string; types: NodeTypes } | undefined>;
getOldestSupportedMajor(): number | undefined;
getReleaseInfo(version: string): Promise<ReleaseInfo | undefined>;
getReleasedVersions(): Array<Version>;
getUsername(): string;
getVersionState(version: string): InstallState;
isDevMode: boolean;
isReleasedMajor(major: number): Promise<boolean>;
macTitlebarClicked(): void;
onGetFiles(
callback: (
options: PackageJsonOptions | undefined,
transforms: Array<FileTransformOperation>,
) => Promise<{ localPath?: string; files: Files }>,
);
openThemeFolder(): Promise<void>;
packageRun(
{ dir, packageManager }: PMOperationOptions,
command: string,
): Promise<string>;
pathExists(path: string): boolean;
platform: string;
pushOutputEntry(entry: OutputEntry): void;
readThemeFile(name?: string): Promise<LoadedFiddleTheme | null>;
reloadWindows(): void;
removeAllListeners(type: FiddleEvent): void;
removeVersion(version: string): Promise<InstallState>;
saveFilesToTemp(files: Files): Promise<string>;
selectLocalVersion: () => Promise<SelectedLocalVersion | undefined>;
sendReady(): void;
setNativeTheme(theme: 'dark' | 'light' | 'system'): void;
setShowMeTemplate(template?: string): void;
showWarningDialog(messageOptions: MessageOptions): void;
showWindow(): void;
startFiddle(params: StartFiddleParams): Promise<void>;
stopFiddle(): void;
taskDone(result: RunResult): void;
themePath: string;
uncacheTypes(ver: RunnableVersion): Promise<void>;
unwatchElectronTypes(): Promise<void>;
};
}
}