import '@testing-library/jest-dom/extend-expect'; import { render, RenderOptions, RenderResult } from '@testing-library/react'; import * as React from 'react'; type UI = Parameters[0]; declare const AllTheProviders: ({ children }: { children: React.ReactElement; }) => React.ReactElement>; export interface TestOptions extends Omit { /** * optional additional wrapper, e.g. Context * * @example * ```ts * // single wrapper * render(, { * wrapper: MyContext * }); * * // multiple wrapper * render(, { * wrapper: ({ children }) => ( * * * {children} * * * ) * }); * * ``` */ wrapper?: typeof AllTheProviders; } /** * Custom render for @testing-library/react * * @see https://testing-library.com/docs/react-testing-library/setup#custom-render * @param component the component under test * @param options customized test options */ export declare const customRender: (ui: UI, { wrapper: Wrapper, ...options }?: TestOptions) => RenderResult; export * from '@testing-library/react'; export { default as userEvent } from '@testing-library/user-event'; export { customRender as render }; /** * Validates against common a11y mistakes. * * Wrapper for jest-axe * * @example * ```jsx * it('passes a11y test', async () => { * await testA11Y(, options); * }); * * // sometimes we need to perform interactions first to render conditional UI * it('passes a11y test when open', async () => { * const { container } = render(, options); * * fireEvent.click(screen.getByRole('button')); * * await testA11Y(container, options); * }); * ``` * * @see https://github.com/nickcolley/jest-axe#testing-react-with-react-testing-library */ export declare const testA11y: (ui: UI | Element) => Promise; export declare const sleep: (time: number) => Promise; export declare const actSleep: (time: number) => any; export declare const waitFakeTimers: () => Promise; export declare const mockDrag: (el: Element, options: any[], time?: number) => Promise;