Open Martmists-GH opened 3 years ago
build.gradle.kts:
implementation(npm("@types/tmi.js", "1.7.1", generateExternals = true)) implementation(npm("tmi.js", "1.7.1"))
DefinitelyTyped: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/tmi.js
Generated output:
@file:Suppress("INTERFACE_WITH_SUPERCLASS", "OVERRIDING_FINAL_MEMBER", "RETURN_TYPE_MISMATCH_ON_OVERRIDE", "CONFLICTING_OVERLOADS") import kotlin.js.* import org.khronos.webgl.* import org.w3c.dom.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* import org.w3c.dom.svg.* import org.w3c.dom.url.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.notifications.* import org.w3c.performance.* import org.w3c.workers.* import org.w3c.xhr.* external interface TypeRecord<T, U, V> { var _emitterType: T? get() = definedExternally set(value) = definedExternally var _eventsType: U? get() = definedExternally set(value) = definedExternally var _emitType: V? get() = definedExternally set(value) = definedExternally } typealias InnerEEMethodReturnType<T, TValue, FValue> = Any typealias EEMethodReturnType<T, S, TValue, FValue> = Any typealias ListenerType<T> = Any external interface OverriddenMethods<TEmitter, TEventRecord, TEmitRecord> { fun <P : Any, T> on(event: P, listener: (args: ListenerType<Any>) -> Unit): EEMethodReturnType<TEmitter, String /* "on" */, T> fun on(event: Any, listener: (args: Any) -> Any) fun <P : Any, T> addListener(event: P, listener: (args: ListenerType<Any>) -> Unit): EEMethodReturnType<TEmitter, String /* "addListener" */, T> fun addListener(event: Any, listener: (args: Any) -> Any) fun <P : Any, T> addEventListener(event: P, listener: (args: ListenerType<Any>) -> Unit): EEMethodReturnType<TEmitter, String /* "addEventListener" */, T> fun addEventListener(event: Any, listener: (args: Any) -> Any) fun <T> removeListener(event: Any, listener: (args: Any) -> Any): EEMethodReturnType<TEmitter, String /* "removeListener" */, T> fun removeListener(event: Any, listener: (args: Any) -> Any) fun <T> removeEventListener(event: Any, listener: (args: Any) -> Any): EEMethodReturnType<TEmitter, String /* "removeEventListener" */, T> fun removeEventListener(event: Any, listener: (args: Any) -> Any) fun <P : Any, T> once(event: P, listener: (args: ListenerType<Any>) -> Unit): EEMethodReturnType<TEmitter, String /* "once" */, T> fun once(event: Any, listener: (args: Any) -> Any) fun <P : Any, T> emit(event: P, vararg args: ListenerType<Any>): EEMethodReturnType<TEmitter, String /* "emit" */, T> fun emit(event: Any, vararg args: Any) }
There are no warnings or errors thrown when running gradle generateExternals
gradle generateExternals
build.gradle.kts:
DefinitelyTyped: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/tmi.js
Generated output:
There are no warnings or errors thrown when running
gradle generateExternals