import type { ExtensionPointLocation } from '../shared/types/extension-points.ts';
import type { Renderer } from './types.ts';
/**
 * Creates a renderer object with methods for rendering and testing UI extension components.
 * Mocks for supported React hooks and the Extension Point API are automatically provided based on the extension point location.
 *
 * Example usage:
 *
 * ```tsx
 * import { createRenderer } from '@hubspot/ui-extensions/testing';
 * import { Alert, Button, ButtonRow } from '@hubspot/ui-extensions';
 *
 * const { render, find } = createRenderer('crm.record.tab');
 * render(
 *   <>
 *   <ButtonRow>
 *     <Button variant="secondary">Button 1</Button>
 *     <Button variant="primary">Button 2</Button>
 *   </ButtonRow>
 *   <Alert title="My Alert" />
 * </>
 * );
 *
 * // Find any button
 * const button = find(Button);
 *
 * // Assertions
 * expect(button.props.variant).toEqual('primary');
 * expect(button.text).toEqual('Button 2');
 * ```
 *
 * @param extensionPointLocation The extension point location.
 * @returns A renderer object with methods for rendering and testing UI extension components.
 */
export declare const createRenderer: <TExtensionPointLocation extends ExtensionPointLocation>(extensionPointLocation: TExtensionPointLocation) => Renderer<TExtensionPointLocation>;
