import { type queries } from "@storybook/test"; import { type BoundFunctions, type Screen, type SelectorMatcherOptions } from "@testing-library/react"; import { NavigationCommand as NavigationCommandType } from "./constants"; export type Canvas = HTMLElement | BoundFunctions; export type TestFunction = (canvas: Canvas, args: Record) => unknown; export type Coordinates = { x: number; y: number; }; export declare const testFunctionWrapper: (testFunc: TestFunction) => ({ canvasElement, args }: { canvasElement: Screen; args: Record; }) => Promise; export declare const clearText: (element: HTMLElement) => Promise; export declare const NavigationCommand: typeof NavigationCommandType; export declare const resetFocus: () => Promise; export declare const interactionSuite: ({ beforeEach, beforeAll, skip, tests, afterEach, afterAll }: { beforeEach?: TestFunction; beforeAll?: TestFunction; skip?: boolean; tests: Array; afterAll?: TestFunction; afterEach?: TestFunction; }) => (({ canvasElement, args }: { canvasElement: Screen; args: Record; }) => Promise); export declare const getByTestId: (rootElement: HTMLElement | BoundFunctions, dataTestId: string) => HTMLElement; export declare const getAllByTestId: (rootElement: HTMLElement | BoundFunctions, dataTestId: string) => HTMLElement[]; export declare const getByPlaceholderText: (rootElement: HTMLElement | BoundFunctions, text: string) => HTMLElement; export declare const getAllByPlaceholderText: (rootElement: HTMLElement | BoundFunctions, text: string) => HTMLElement[]; export declare const getByClassName: (className: string) => HTMLCollectionOf; export declare const getFirstByClassName: (className: string) => Element; export declare const getByRole: (rootElement: HTMLElement | BoundFunctions, role: string, options?: {}) => HTMLElement; export declare const getAllByRole: (rootElement: HTMLElement | BoundFunctions, role: string) => HTMLElement[]; export declare const getByLabelText: (rootElement: HTMLElement | BoundFunctions, text: string) => HTMLElement; export declare const getAllByLabelText: (rootElement: HTMLElement, text: string) => HTMLElement[]; export declare const getByText: (rootElement: HTMLElement | BoundFunctions, text: string, options?: SelectorMatcherOptions) => HTMLElement; export declare const getAllByText: (rootElement: HTMLElement | BoundFunctions, text: string) => HTMLElement[]; export declare const clickElement: (element: HTMLElement) => Promise; export declare const hoverElement: (element: HTMLElement) => Promise; export declare const typeText: (element: HTMLElement, text: string, waitForDebounceMs?: number) => Promise; export declare const expectActiveElementToHaveExactText: (text: string) => void; export declare const expectActiveElementToHavePartialText: (text: string) => void; export declare const pressNavigationKey: (command?: NavigationCommandType, waitForDebounceMs?: number) => Promise; export declare function delay(timeout: number): Promise; export declare const waitForElementVisible: (getterFunc: () => HTMLElement) => Promise; export declare const typeMultipleTimes: (text: string, count: number, options?: { delay: number; }) => Promise; export declare function drag(element: HTMLElement, { delta, toCoords, toElm, steps, duration }: { delta: Coordinates; toCoords: Coordinates; toElm: HTMLElement; steps: number; duration: number; }): Promise;