Skip to content

Commit 9a6239e

Browse files
authored
feat: remove Sender and simplify Event (#226)
* feat: remove Sender and simplify Event * lint
1 parent 225f3eb commit 9a6239e

File tree

3 files changed

+4
-7
lines changed

3 files changed

+4
-7
lines changed

base/base_inner.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
const NodeEventEmitter: typeof import('events').EventEmitter;
22

33
type Accelerator = string;
4-
type EmptyParams = {};
5-
type Event<Params extends object, Sender extends NodeJS.EventEmitter> = {
4+
type Event<Params extends object = {}> = {
65
preventDefault: () => void;
76
readonly defaultPrevented: boolean;
8-
sender: Sender;
97
} & Params;

src/module-declaration.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ export const generateModuleDeclaration = (
139139
TypeInformation & { required: boolean };
140140

141141
if (eventGenericListenerArg.type === 'Event') {
142-
let eventParamsType = 'EmptyParams';
142+
let eventParamsType = '';
143143
if (
144144
eventGenericListenerArg.eventProperties &&
145145
eventGenericListenerArg.eventProperties.length
@@ -160,7 +160,7 @@ export const generateModuleDeclaration = (
160160
if (eventReferenceListenerArg.eventPropertiesReference) {
161161
eventParamsType = utils.typify(eventReferenceListenerArg.eventPropertiesReference);
162162
}
163-
argType = `Event<${eventParamsType}, Electron.${_.upperFirst(module.name)}>`;
163+
argType = eventParamsType ? `Event<${eventParamsType}>` : 'Event';
164164
}
165165

166166
let newType = argType || utils.typify(eventListenerArg);

src/primary-interfaces.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@ export const generatePrimaryInterfaces = (
99
addToOutput: (lines: string[], sep?: string) => void,
1010
) => {
1111
// Generate Main / Renderer process interfaces
12-
const eventExport =
13-
' type Event<Params extends object, Sender extends NodeJS.EventEmitter> = Electron.Event<Params, Sender>';
12+
const eventExport = ' type Event<Params extends object = {}> = Electron.Event<Params>';
1413
const CommonNamespace = ['namespace Common {', eventExport];
1514
const MainNamespace = ['namespace Main {', eventExport];
1615
const RendererNamespace = ['namespace Renderer {', eventExport];

0 commit comments

Comments
 (0)