diff --git a/types/testing-library__user-event/index.d.ts b/types/testing-library__user-event/index.d.ts index 02c42b3b0d..01a8d04787 100644 --- a/types/testing-library__user-event/index.d.ts +++ b/types/testing-library__user-event/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for @testing-library/user-event 4.0 +// Type definitions for @testing-library/user-event 4.1 // Project: https://github.com/testing-library/user-event // Definitions by: Wu Haotian // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -7,14 +7,12 @@ export interface UserOpts { allAtOnce?: boolean; delay?: number; } + declare const userEvent: { click: (element: Element | Window) => void; dblClick: (element: Element | Window) => void; - type: ( - element: Element | Window, - text: string, - userOpts?: UserOpts - ) => Promise; + selectOptions: (element: Element | Window, values: string | string[]) => void; + type: (element: Element | Window, text: string, userOpts?: UserOpts) => Promise; }; export default userEvent; diff --git a/types/testing-library__user-event/testing-library__user-event-tests.ts b/types/testing-library__user-event/testing-library__user-event-tests.ts index 0ecf6eb439..889dce9a03 100644 --- a/types/testing-library__user-event/testing-library__user-event-tests.ts +++ b/types/testing-library__user-event/testing-library__user-event-tests.ts @@ -1,7 +1,9 @@ -import userEvent, { UserOpts } from "user-event"; +import userEvent, { UserOpts } from 'user-event'; userEvent.click(document.body); // $ExpectType void userEvent.dblClick(window); // $ExpectType void +userEvent.selectOptions(window, 'test'); // $ExpectType void +userEvent.selectOptions(window, ['test1', 'test2']); // $ExpectType void userEvent.type(document.body, "s"); // $ExpectType Promise userEvent.type(document.body, "s", {}); // $ExpectType Promise userEvent.type(document.body, "s", { delay: 5000 }); // $ExpectType Promise diff --git a/types/testing-library__user-event/tsconfig.json b/types/testing-library__user-event/tsconfig.json index 81277cf626..75d3f3addb 100644 --- a/types/testing-library__user-event/tsconfig.json +++ b/types/testing-library__user-event/tsconfig.json @@ -12,5 +12,10 @@ "noEmit": true, "forceConsistentCasingInFileNames": true }, + "paths": { + "@testing-library/user-event": [ + "testing-library__user-event" + ] + }, "files": ["index.d.ts", "testing-library__user-event-tests.ts"] } diff --git a/types/user-event/index.d.ts b/types/user-event/index.d.ts index 05b86263ac..9b9f902c73 100644 --- a/types/user-event/index.d.ts +++ b/types/user-event/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for user-event 1.4 +// Type definitions for user-event 4.1 // Project: https://github.com/testing-library/user-event // Definitions by: Wu Haotian // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -10,11 +10,10 @@ export interface UserOpts { declare const userEvent: { click: (element: Element | Window) => void; dblClick: (element: Element | Window) => void; - type: ( - element: Element | Window, - text: string, - userOpts?: UserOpts - ) => Promise; + + selectOptions: (element: Element | Window, values: string | string[]) => void; + + type: (element: Element | Window, text: string, userOpts?: UserOpts) => Promise; }; export default userEvent;