import { LinkButtonCompProps } from '../LinkButton'; import { ButtonCompProps } from '../Button'; import { CSSObject, FlattenSimpleInterpolation } from 'styled-components'; import { ReactNode } from 'react'; import { IconProps } from '../../icons'; type ButtonVariant = { type: 'button'; props: Omit; }; type LinkButtonVariant = { type: 'link'; props: Omit; }; export type EmptyStateButtonProps = ButtonVariant | LinkButtonVariant; export type EmptyStateClasses = { root?: string; icon?: string; title?: string; subtitle?: string; buttons?: string; extraButton?: string; }; export type EmptyStateVariant = 'loading' | 'life-circle' | 'need-access' | 'no-access' | 'no-content' | 'not-found' | 'not-result' | 'success'; export type ErrorPageVariant = '400' | '401' | '403' | '404' | '409' | '500' | '502' | '503' | 'unidentified'; export type EmptyStateImageVariant = EmptyStateVariant | ErrorPageVariant; export type EmptyStateProps = { size: 's' | 'm' | 'l'; title?: ReactNode; subtitle?: ReactNode; variant?: EmptyStateImageVariant; icon?: React.FC; iconProps?: Omit; buttons?: EmptyStateButtonProps[]; extraButton?: EmptyStateButtonProps; className?: string; classes?: EmptyStateClasses; centered?: boolean; $css?: string | CSSObject | FlattenSimpleInterpolation; }; export type EmptyStateSize = EmptyStateProps['size']; export {};