import { ReactNode } from 'react';
import { IconLookup } from '@fortawesome/fontawesome-svg-core';
import { TooltipPlacementsType } from '../tooltip/tooltip';
import { AccentType } from '../button';
import './empty-state.less';
type ActionParams = {
    onActionBtnClick: () => void;
    onActionBtnText: string;
    onActionBtnIcon?: IconLookup | null;
    onActionBtnType?: AccentType;
    onActionButtonDisabled?: boolean;
    onActionButtonTooltipText?: string;
    onActionButtonTooltipPlacement?: TooltipPlacementsType;
    onActionBtnIsLoading?: boolean;
    onActionBtnLoadingText?: string;
    fullWidth?: boolean;
};
export type EmptyStateProps = {
    /** Source attr value */
    imageSrc?: string;
    /** Use image's original size or use a predefined default size. */
    originalImageSize?: boolean;
    /** Title of the empty state */
    title: ReactNode;
    /** Sub text for details to be rendered under title */
    description?: ReactNode;
    /** Action button text and click handler (object, or array of objects if you want several buttons) */
    actionParams?: ActionParams[] | ActionParams;
    testId?: string;
    /** Text of image alt attr */
    altText?: string;
    /** Custom classname for empty state */
    className?: string;
    /** Custom content to be rendered at the top */
    customContentTop?: ReactNode;
    /** Custom content to be rendered at the bottom */
    customContentBottom?: ReactNode;
};
/** EmptyState displays a missing content container with title, description
 * and action button, that helps you to get going without wondering what to do next
 * [CAPITALIZATION] Use sentence case for title, description and buttons
 * @midnight-gray-supported
 * @alpine-light-supported
 * */
declare const EmptyState: ({ imageSrc, title, description, actionParams, originalImageSize, testId, altText, className, customContentTop, customContentBottom, }: EmptyStateProps) => import("react/jsx-runtime").JSX.Element;
export declare const EMPTY_STATE_BUTTON_TYPES: {
    PRIMARY: "primary";
    SECONDARY: "secondary";
    COMMAND: "command";
};
export default EmptyState;
