import { default as React } from 'react';
import { SxProps, Theme } from '@mui/material/styles';
export interface StatusChipProps {
    label: string;
    bgColor?: string;
    color?: string;
    icon?: React.ReactNode;
    onClick?: () => void;
    tooltip?: string;
}
declare function StatusChip({ label, bgColor, color, icon, onClick, tooltip }: StatusChipProps): import("react/jsx-runtime").JSX.Element;
export interface FooterStatusDotProps {
    color: string;
    pulse?: boolean;
    tooltip?: string;
    onClick?: () => void;
}
declare function FooterStatusDot({ color, pulse, tooltip, onClick }: FooterStatusDotProps): import("react/jsx-runtime").JSX.Element;
export interface StatusTextProps {
    children: React.ReactNode;
    icon?: React.ReactNode;
    onClick?: () => void;
    tooltip?: string;
}
declare function StatusText({ children, icon, onClick, tooltip }: StatusTextProps): import("react/jsx-runtime").JSX.Element;
export interface StatusSpinnerProps {
    label?: string;
    tooltip?: string;
}
declare function StatusSpinner({ label, tooltip }: StatusSpinnerProps): import("react/jsx-runtime").JSX.Element;
export interface StatusProgressProps {
    /** 0–100 progress value. Omit for indeterminate. */
    value?: number;
    /** Width in px */
    width?: number;
    /** Bar color (CSS value) */
    color?: string;
    /** Label shown beside the bar */
    label?: string;
    /** Whether to show percentage text */
    showValue?: boolean;
    tooltip?: string;
}
declare function StatusProgress({ value, width, color, label, showValue, tooltip, }: StatusProgressProps): import("react/jsx-runtime").JSX.Element;
export interface StatusSeparatorProps {
    color?: string;
}
declare function StatusSeparator({ color }: StatusSeparatorProps): import("react/jsx-runtime").JSX.Element;
export interface StatusButtonProps {
    icon?: React.ReactNode;
    label?: string;
    onClick?: () => void;
    tooltip?: string;
    color?: string;
}
declare function StatusButton({ icon, label, onClick, tooltip, color }: StatusButtonProps): import("react/jsx-runtime").JSX.Element;
export interface StatusBadgeProps {
    count: number;
    icon?: React.ReactNode;
    maxCount?: number;
    onClick?: () => void;
    tooltip?: string;
    color?: string;
}
declare function StatusBadge({ count, icon, maxCount, onClick, tooltip, color }: StatusBadgeProps): import("react/jsx-runtime").JSX.Element;
export interface StatusTimerProps {
    /** Time string to display, e.g. "02:34" or "1h 23m" */
    time: string;
    icon?: React.ReactNode;
    running?: boolean;
    tooltip?: string;
}
declare function StatusTimer({ time, icon, running, tooltip }: StatusTimerProps): import("react/jsx-runtime").JSX.Element;
export interface StatusCircularProps {
    /** 0–100 value. Omit for indeterminate. */
    value?: number;
    /** Diameter in px */
    size?: number;
    /** Bar color */
    color?: string;
    tooltip?: string;
}
declare function StatusCircular({ value, size, color, tooltip }: StatusCircularProps): import("react/jsx-runtime").JSX.Element;
export interface IDEStatusFooterProps {
    left?: React.ReactNode;
    right?: React.ReactNode;
    height?: number;
    sx?: SxProps<Theme>;
}
declare function IDEStatusFooter({ left, right, height, sx, }: IDEStatusFooterProps): import("react/jsx-runtime").JSX.Element;
declare namespace IDEStatusFooter {
    var displayName: string;
    var Chip: typeof StatusChip;
    var Dot: typeof FooterStatusDot;
    var Text: typeof StatusText;
    var Spinner: typeof StatusSpinner;
    var Progress: typeof StatusProgress;
    var Circular: typeof StatusCircular;
    var Separator: typeof StatusSeparator;
    var Button: typeof StatusButton;
    var Badge: typeof StatusBadge;
    var Timer: typeof StatusTimer;
}
export default IDEStatusFooter;
