/** * This is common rule. So `@typescript-eslint/no-explicit-any` is disabled here */ /* eslint-disable @typescript-eslint/no-explicit-any */ import type { PluginListenerHandle } from '@capacitor/core'; type Contra = (x: T) => void type UnwrapContra = [T] extends [Contra] ? S : never type UnionToIntersection = UnwrapContra : never> type Overload = (eventName: T, listenerFunc: (...args: any[]) => any) => PluginListenerHandle type OverloadUnionForEnum = T extends any ? Overload : never type OverloadUnion = OverloadUnionForEnum type Overloads = UnionToIntersection> export type ValidateAllEventsEnumAreImplemented }> = TDefinitionInterface;