/** @packageDocumentation
 * @module Notification
 */
import type { CommonProps } from "@itwin/core-react";
import * as React from "react";
import "./ToolAssistanceField.scss";
import { StatusBarPopover } from "../../statusbar/popup/StatusBarPopover.js";
import { type UiStateStorage } from "../../uistate/UiStateStorage.js";
/** Properties of [[ToolAssistanceField]] component.
 * @public
 */
export interface ToolAssistanceFieldProps extends CommonProps {
    /** Indicates whether to include promptAtCursor Checkbox. Defaults to `true`. */
    includePromptAtCursor: boolean;
    /** Optional parameter for persistent UI settings. Defaults to `UiStateStorageContext`. */
    uiStateStorage?: UiStateStorage;
    /** Cursor prompt timeout period. Defaults to `5000`.
     * @note Specify `Number.POSITIVE_INFINITY` to keep the cursor prompt open indefinitely.
     */
    cursorPromptTimeout: number;
    /** Fade out the cursor prompt when closed. */
    fadeOutCursorPrompt: boolean;
    /** Indicates whether to show promptAtCursor by default. Defaults to `false`. */
    defaultPromptAtCursor: boolean;
    /** When set to `true` will show prompt at cursor only when the content area is hovered. */
    promptAtContent?: boolean;
}
type PopoverProps = React.ComponentProps<typeof StatusBarPopover>;
interface Props extends Omit<ToolAssistanceFieldProps, "includePromptAtCursor" | "cursorPromptTimeout" | "fadeOutCursorPrompt" | "defaultPromptAtCursor">, Partial<Pick<ToolAssistanceFieldProps, "includePromptAtCursor" | "cursorPromptTimeout" | "fadeOutCursorPrompt" | "defaultPromptAtCursor">>, Pick<PopoverProps, "visible" | "onVisibleChange"> {
    /**
     * Controlled flag for whether the popover is pinned.
     */
    pinned?: boolean;
    /**
     * Callback invoked every time the popover is pinned or unpinned as a result
     * of internal logic. Should be used alongside `pinned` prop.
     */
    onPinnedChange?: (pinned: boolean) => void;
}
/** Tool Assistance Field React component.
 * @public
 * @note Tool assistance field will only display 30 characters in the status bar. Any additional text will be hidden. The full text will always be shown in the opened popover.
 */
export declare function ToolAssistanceField(props: Props): React.JSX.Element;
export {};
//# sourceMappingURL=ToolAssistanceField.d.ts.map