import { Sentiment, Size, Status } from '../common';
/**
 * @deprecated `Alert` component is being replaced by the `InfoPrompt` component
 */
export type AlertAction = {
    'aria-label'?: string;
    href?: string;
    target?: string;
    text: React.ReactNode;
    onClick?: () => void;
    /** Controls the rendered element: `'link'` (default) renders a Link, `'button'` renders a Button. When `'button'` is used with `href`, renders an anchor styled as a button. */
    as?: 'button' | 'link';
};
/** @deprecated Use `"top" | "bottom"` instead. */
type AlertTypeDeprecated = `${Sentiment.SUCCESS | Sentiment.INFO | Sentiment.ERROR}`;
type AlertTypeResolved = `${Sentiment.POSITIVE | Sentiment.NEUTRAL | Sentiment.WARNING | Sentiment.NEGATIVE | Sentiment.PENDING | Status.PENDING}`;
/**
 * @deprecated `Alert` component is being replaced by the `InfoPrompt` component
 */
export type AlertType = AlertTypeResolved | AlertTypeDeprecated;
/**
 * @deprecated `Alert` component is being replaced by the `InfoPrompt` component
 */
export declare enum AlertArrowPosition {
    TOP_LEFT = "up-left",
    TOP = "up-center",
    TOP_RIGHT = "up-right",
    BOTTOM_LEFT = "down-left",
    BOTTOM = "down-center",
    BOTTOM_RIGHT = "down-right"
}
/**
 * @deprecated `Alert` component is being replaced by the `InfoPrompt` component
 */
export interface AlertProps {
    /** An optional call to action to sit under the main body of the alert. If your label is short, use aria-label to provide more context */
    action?: AlertAction;
    className?: string;
    /** An optional icon. If not provided, we will default the icon to something appropriate for the type */
    icon?: React.ReactNode;
    /**
     * Override for [StatusIcon's default, accessible name](/?path=/docs/other-statusicon-accessibility--docs)
     * announced by the screen readers
     * */
    statusIconLabel?: string;
    /** Title for the alert component */
    title?: string;
    /** The main body of the alert. Accepts plain text and bold words specified with **double stars */
    message?: string;
    /** The presence of the onDismiss handler will trigger the visibility of the close button */
    onDismiss?: React.MouseEventHandler<HTMLButtonElement>;
    /**
     * The type dictates which icon and colour will be used
     * @default 'neutral'
     */
    type?: AlertType;
    /** @deprecated Use `InlinePrompt` instead. */
    arrow?: `${AlertArrowPosition}`;
    /** @deprecated Use `message` instead. Be aware `message` only accepts plain text or text with **bold** markdown. */
    children?: React.ReactNode;
    /** @deprecated Use `onDismiss` instead. */
    dismissible?: boolean;
    /** @deprecated Alert component doesn't support `size` anymore, please remove this prop. */
    size?: `${Size}`;
}
/**
 * @deprecated Use [`InfoPrompt`](https://storybook.wise.design/?path=/docs/prompts-infoprompt--docs) component instead. Run codemod to migrate: **`npx @wise/wds-codemods@latest info-prompt`**
 */
export default function Alert({ action, className, icon, statusIconLabel, onDismiss, message, title, type, arrow, children, size, dismissible, }: AlertProps): import("react").JSX.Element;
export {};
//# sourceMappingURL=Alert.d.ts.map