diff --git a/.changeset/poor-suits-hide.md b/.changeset/poor-suits-hide.md new file mode 100644 index 0000000..92d723d --- /dev/null +++ b/.changeset/poor-suits-hide.md @@ -0,0 +1,5 @@ +--- +"@knuckles/typescript": patch +--- + +Various type improvements diff --git a/packages/typescript/types/index.d.ts b/packages/typescript/types/index.d.ts index 7b33109..f6dc573 100644 --- a/packages/typescript/types/index.d.ts +++ b/packages/typescript/types/index.d.ts @@ -24,7 +24,7 @@ declare global { n: Comment | Element, v: any, c: BindingContext, - ) => void; + ) => any; export type ReturnsChildContext = ( n: Comment | Element, v: any, @@ -198,7 +198,8 @@ declare global { * @see https://knockoutjs.com/documentation/options-binding.html */ options: PreserveBinding< - MaybeSubscribable | ko.ObservableArray, + | MaybeSubscribable + | ko.ObservableArray, HTMLSelectElement >; /** @@ -370,7 +371,7 @@ declare global { * @see https://knockoutjs.com/documentation/options-binding.html */ options: PreserveBinding< - MaybeSubscribable | ko.ObservableArray, + MaybeSubscribable | ko.ObservableArray, HTMLSelectElement >; /** @@ -502,7 +503,7 @@ declare global { * @see https://knockoutjs.com/documentation/checked-binding.html */ checked: PreserveBinding< - | MaybeSubscribable + | MaybeSubscribable | ko.ObservableArray, HTMLInputElement >; @@ -583,9 +584,9 @@ declare global { export interface Settings {} - type Instanciate = T extends new () => infer U + type Instanciate = T extends new (...args: any) => infer U ? U - : T extends () => infer U + : T extends (...args: any) => infer U ? U : T; type DefaultInterop = Instanciate<