/**
 * Copyright (c) Adaptavist, Inc.
 */
import { Icons } from '@/src/atoms/icon/types';
import { TextTransform } from '@/src/atoms/text/types';
import { IColorsKeys } from '@/src/theme';
import { GenericProps } from '@/src/utilities';
import { HTMLAttributes } from 'react';
interface DefaultProps extends React.HtmlHTMLAttributes<HTMLDivElement>, GenericProps {
    /**
     * Prop to control the styling of the status being displayed
     */
    statusType?: 'success' | 'warning' | 'critical' | 'default' | 'brand';
    /**
     * Prop to control the position and display of the arrow. Default is 'none'
     */
    arrowPosition?: 'right' | 'left' | 'bottom' | 'top' | 'none';
    /**
     * Prop to control the casing of the label text. Default is 'uppercase'
     */
    labelCasing?: TextTransform;
}
interface WithIconProps extends DefaultProps {
    /**
     * Prop to control the position and display of the icon. Default is 'none'
     */
    iconPosition: 'right' | 'left' | 'none';
    /**
     * The Icon to be displayed on the status
     */
    icon: Icons;
}
interface WithoutIconProps extends DefaultProps {
    /**
     * Prop to control the position and display of the icon. Default is 'none'
     */
    iconPosition?: never;
    /**
     * The Icon to be displayed on the status
     */
    icon?: never;
}
export declare type IStatus = WithIconProps | WithoutIconProps;
export interface IStatusContainer extends HTMLAttributes<HTMLDivElement>, GenericProps {
    arrowPosition?: 'right' | 'left' | 'bottom' | 'top' | 'none';
    backgroundColor?: IColorsKeys;
}
export {};
