Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit ecfd75b

Browse files
committed
refactor: update types to use type consistently
1 parent a82d5ef commit ecfd75b

File tree

3 files changed

+16
-10
lines changed

3 files changed

+16
-10
lines changed

‎src/core/index.ts‎

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,11 @@ function resultContainer<TValue>(): ResultContainer<TValue> {
4242

4343
function createRenderHook<TProps, TResult, TOptions extends {}, TRenderer extends Renderer<TProps>>(
4444
createRenderer: CreateRenderer<TProps, TResult, TOptions, TRenderer>
45-
) {
46-
const renderHook = (
47-
callback: (props: TProps)=>TResult,
48-
options: RenderHookOptions<TProps,TOptions> = {} as RenderHookOptions<TProps, TOptions>
49-
): RenderHook<TProps,TResult,TRenderer> => {
45+
): RenderHook<TProps,TResult,TOptions> {
46+
const renderHook: RenderHook<TProps,TResult,TOptions> = (
47+
callback,
48+
options = {} as RenderHookOptions<TProps, TOptions>
49+
) => {
5050
const { result, setValue, setError, addResolver } = resultContainer<TResult>()
5151
const renderProps = { callback, setValue, setError }
5252
let hookProps = options.initialProps
@@ -81,7 +81,6 @@ function createRenderHook<TProps, TResult, TOptions extends {}, TRenderer extend
8181
// This dummy usage works around that.
8282
renderHook.name // eslint-disable-line @typescript-eslint/no-unused-expressions
8383

84-
8584
return renderHook
8685
}
8786

‎src/types/index.ts‎

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ export type AsyncUtils = {
3838
waitForValueToChange: (selector: () => unknown, options?: WaitOptions) => Promise<void>
3939
}
4040

41-
export type RenderHook<
41+
export type RenderHookResult<
4242
TProps,
4343
TValue,
4444
TRenderer extends Renderer<TProps> = Renderer<TProps>
@@ -51,6 +51,13 @@ export type RenderHookOptions<TProps, TOptions extends {}> = TOptions & {
5151
initialProps?: TProps
5252
}
5353

54+
export interface RenderHook<TProps, TResult, TOptions extends object> {
55+
(
56+
callback: (props: TProps) => TResult,
57+
options?: RenderHookOptions<TProps, TOptions>
58+
): RenderHookResult<TProps, TResult>
59+
}
60+
5461
export interface Act {
5562
(callback: () => void | undefined): void
5663
(callback: () => Promise<void | undefined>): Promise<undefined>

‎src/types/react.ts‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
import { ComponentType } from 'react'
22

3-
import { RenderHook,RenderHookOptions, Act } from '.'
3+
import { RenderHookOptions,RenderHookResult, Act } from '.'
44

55
export type WrapperComponent<TProps> = ComponentType<TProps>
66

77
export type RendererOptions<TProps> = {
88
wrapper?: WrapperComponent<TProps>
99
}
1010

11-
export interface ReactHooksRenderer {
11+
export type ReactHooksRenderer= {
1212
renderHook: <TProps, TResult>(
1313
callback: (props: TProps) => TResult,
1414
options?: RenderHookOptions<TProps, RendererOptions<TProps>>
15-
) => RenderHook<TProps, TResult>
15+
) => RenderHookResult<TProps, TResult>
1616
act: Act
1717
cleanup: () => void
1818
addCleanup: (callback: () => Promise<void> | void) => () => void

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /