chore: restore deprecate as an internal module (#40124)

* Revert "refactor: don't expose deprecate as an internal module (#35311)"

This reverts commit 8424779906.

* check crashed event warnings
This commit is contained in:
Milan Burda 2023-10-09 01:55:16 +02:00 committed by GitHub
parent 8b8fbd0408
commit 737e3de3fa
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 106 additions and 27 deletions

View file

@ -155,6 +155,18 @@ declare namespace Electron {
_replyChannel: ReplyChannel;
}
namespace Common {
const deprecate: ElectronInternal.DeprecationUtil;
}
namespace Main {
const deprecate: ElectronInternal.DeprecationUtil;
}
namespace Renderer {
const deprecate: ElectronInternal.DeprecationUtil;
}
class View {}
// Experimental views API
@ -200,6 +212,22 @@ declare namespace Electron {
}
declare namespace ElectronInternal {
type DeprecationHandler = (message: string) => void;
interface DeprecationUtil {
warnOnce(oldName: string, newName?: string): () => void;
warnOnceMessage(msg: string): () => void;
setHandler(handler: DeprecationHandler | null): void;
getHandler(): DeprecationHandler | null;
warn(oldName: string, newName: string): void;
log(message: string): void;
removeFunction<T extends Function>(fn: T, removedName: string): T;
renameFunction<T extends Function>(fn: T, newName: string): T;
event(emitter: NodeJS.EventEmitter, oldName: string, newName: string, transformer?: (...args: any[]) => any[] | undefined): void;
removeProperty<T extends Object, K extends (keyof T & string)>(object: T, propertyName: K, onlyForValues?: any[]): T;
renameProperty<T extends Object, K extends (keyof T & string)>(object: T, oldName: string, newName: K): T;
moveAPI<T extends Function>(fn: T, oldUsage: string, newUsage: string): T;
}
interface DesktopCapturer {
startHandling(captureWindow: boolean, captureScreen: boolean, thumbnailSize: Electron.Size, fetchWindowIcons: boolean): void;
_onerror?: (error: string) => void;
@ -264,6 +292,7 @@ declare namespace ElectronInternal {
interface ModuleEntry {
name: string;
loader: ModuleLoader;
private?: boolean;
}
interface UtilityProcessWrapper extends NodeJS.EventEmitter {