import { LocatorSelectors } from '@vitest/browser/context';
import { debug } from '@vitest/browser/utils';
import { RenderOptions } from 'lit';

interface ComponentRenderOptions extends RenderOptions {
    baseElement?: HTMLElement;
    container?: HTMLElement;
}
interface RenderResult extends LocatorSelectors {
    container: HTMLElement;
    baseElement: HTMLElement;
    debug: typeof debug;
    unmount: () => void;
    rerender: (template: unknown) => void;
    asFragment: () => DocumentFragment;
}
declare function render(template: unknown, { baseElement, container, ...options }?: ComponentRenderOptions): RenderResult;
declare function cleanup(): void;

export { type ComponentRenderOptions, type RenderResult, cleanup, render };
