import type { Component, ComponentInstance } from './component.js'; export interface RenderOptions

> { container?: Element; html?: string; props?: P; } export interface RenderResult

> { container: Element; instance: ComponentInstance; rerender(props?: P): RenderResult

; unmount(): void; } export declare function render

( Component: Component

, options?: RenderOptions

): RenderResult

; export declare function hydrate

( Component: Component

, options?: RenderOptions

): RenderResult

; export declare function renderHook( callback: (props: P) => T, options?: Omit, 'props'> & { initialProps?: P } ): RenderResult

& { result: () => T }; export declare const screen: { getByTestId(id: string): Element; getByText(text: string | RegExp): Element; queryByText(text: string | RegExp): Element | null; getByRole(role: string, options?: { name?: string | RegExp }): Element; }; export declare const fireEvent: { (node: Element, event: Event): Event; click(node: Element, init?: EventInit): Event; input(node: Element, init?: EventInit): Event; change(node: Element, init?: EventInit): Event; submit(node: Element, init?: EventInit): Event; }; export declare function waitFor( assertion: () => T | Promise, options?: { timeout?: number; interval?: number } ): Promise; export declare function cleanup(): void;