import type { CategorizerWidget, ExpressionWidget, InteractiveGraphWidget, NumericInputWidget, PerseusRenderer, PerseusWidgetTypes, RadioWidget, PerseusScore, UserInputMap, PerseusItem } from "@khanacademy/perseus-core";
/**
 * Thin wrapper around scorePerseusItem for internal testing
 */
export declare function scorePerseusItemTesting(perseusRenderData: PerseusRenderer, userInputMap: UserInputMap): PerseusScore;
/**
 * Creates an object with the bare amount
 * of data to be a properly typed RadioWidget
 *
 * @returns {RadioWidget} skeleton RadioWidget for testing
 */
export declare function generateTestRadioWidget(): RadioWidget;
/**
 * Creates an object with the bare amount
 * of data to be a properly typed InteractiveGraphWidget
 *
 * @returns {InteractiveGraphWidget} skeleton InteractiveGraphWidget for testing
 */
export declare function generateTestInteractiveGraphWidget(): InteractiveGraphWidget;
/**
 * Creates an object with the bare amount
 * of data to be a properly typed InteractiveGraphWidget
 *
 * @returns {InteractiveGraphWidget} skeleton InteractiveGraphWidget for testing
 */
export declare function generateTestCategorizerWidget(): CategorizerWidget;
/**
 * Creates an object with the bare amount
 * of data to be a properly typed ExpressionWidget
 *
 * @returns {ExpressionWidget} skeleton ExpressionWidget for testing
 */
export declare function generateTestExpressionWidget(): ExpressionWidget;
/**
 * Creates an object with the bare amount
 * of data to be a properly typed NumericInputWidget
 *
 * @returns {NumericInputWidget} skeleton NumericInputWidget for testing
 */
export declare function generateTestNumericInputWidget(): NumericInputWidget;
/**
 * Creates an object with the minimum amount
 * of data to be a properly typed PerseusItem
 * containing answerful information
 *
 * @template T - The widget type extending keyof PerseusWidgetTypes
 * @param {T} widgetType - The type of widget to create, as a string, ex. "radio"
 * @param {PerseusWidgetTypes[T]["options"]} options - The options for the widget
 * @returns {PerseusItem} skeleton PerseusItem for testing
 */
export declare function getAnswerfulItem<T extends keyof PerseusWidgetTypes>(widgetType: T, options: PerseusWidgetTypes[T]["options"]): PerseusItem;
/**
 * Creates an object with the minimum amount
 * of data to be a properly typed PerseusItem
 * containing answerless information
 *
 * @template T - The widget type extending keyof PerseusWidgetTypes
 * @param {T} widgetType - The type of widget to create, as a string, ex. "radio"
 * @param {PerseusWidgetTypes[T]["options"]} options - The options for the widget
 * @returns {PerseusItem} skeleton PerseusItem for testing
 */
export declare function getAnswerlessItem<T extends keyof PerseusWidgetTypes>(widgetType: T, options: PerseusWidgetTypes[T]["options"]): PerseusItem;
