Skip to content

Commit c2a690a

Browse files
author
arnoson
committed
fix: pass captured Setup type
1 parent 756cb09 commit c2a690a

File tree

2 files changed

+15
-8
lines changed

2 files changed

+15
-8
lines changed

src/registerComponent.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,21 @@ export const defineOptions = <Options extends SimpleComponentOptions>(
1717
export function registerComponent<
1818
Setup extends SimpleComponentSetup<Options>,
1919
Options extends SimpleComponentOptions = {}
20-
>(name: string, setup: Setup): SimpleComponent<Options>
20+
>(name: string, setup: Setup): SimpleComponent<Options, Setup>
2121

2222
export function registerComponent<
2323
Setup extends SimpleComponentSetup<Options>,
2424
Options extends SimpleComponentOptions = {}
25-
>(name: string, options: Options, setup: Setup): SimpleComponent<Options>
25+
>(name: string, options: Options, setup: Setup): SimpleComponent<Options, Setup>
2626

2727
export function registerComponent<
2828
Setup extends SimpleComponentSetup<Options>,
2929
Options extends SimpleComponentOptions = {}
30-
>(name: string, arg1: Options | Setup, arg2?: Setup): SimpleComponent<Options> {
30+
>(
31+
name: string,
32+
arg1: Options | Setup,
33+
arg2?: Setup
34+
): SimpleComponent<Options, Setup> {
3135
const hasBothArgs = arg2 !== undefined
3236
const options = (hasBothArgs ? arg1 : {}) as Options
3337
const setup = (hasBothArgs ? arg2 : arg1) as Setup

src/types.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,15 @@ export type SimpleComponentContext<
5757
ComponentEvent: SimpleComponentEvent<SimpleEventMap<Options['events']>>
5858
}
5959

60-
export type SimpleComponentSetup<O extends SimpleComponentOptions> = (
61-
ctx: SimpleComponentContext<O>
60+
export type SimpleComponentSetup<Options extends SimpleComponentOptions> = (
61+
ctx: SimpleComponentContext<Options>
6262
) => any
6363

64-
export type SimpleComponent<Options extends SimpleComponentOptions = any> = {
65-
setup: SimpleComponentSetup<Options>
64+
export type SimpleComponent<
65+
Options extends SimpleComponentOptions = any,
66+
Setup extends SimpleComponentSetup<Options> = any
67+
> = {
68+
setup: Setup
6669
options: Options
6770
}
6871

@@ -88,7 +91,7 @@ export interface SimpleComponentEvent<
8891
}
8992

9093
export type SimpleElement<
91-
Component extends SimpleComponent = SimpleComponent,
94+
Component extends SimpleComponent,
9295
Options extends SimpleComponentOptions = Component['options'],
9396
Context extends SimpleComponentContext<any> = SimpleComponentContext<Options>,
9497
Events extends SimpleEventMap<Options['events']> = SimpleEventMap<

0 commit comments

Comments
 (0)