import React from 'react';
import { ButtonProps } from '@mui/material';
export interface LoadingButtonProps extends Omit<ButtonProps, 'startIcon' | 'endIcon'> {
    /**
     * Whether button is in loading state
     */
    loading?: boolean;
    /**
     * Position of loading indicator
     */
    loadingPosition?: 'start' | 'end' | 'center';
    /**
     * Loading indicator type
     */
    loadingIndicator?: 'circular' | 'linear' | 'dots' | React.ReactNode;
    /**
     * Size of loading indicator
     */
    loadingSize?: number;
    /**
     * Color of loading indicator
     */
    loadingColor?: 'primary' | 'secondary' | 'inherit';
    /**
     * Text to show when loading
     */
    loadingText?: string;
    /**
     * Whether to show progress percentage (for linear indicator)
     */
    showProgress?: boolean;
    /**
     * Progress value (0-100)
     */
    progress?: number;
    /**
     * Start icon when not loading
     */
    startIcon?: React.ReactNode;
    /**
     * End icon when not loading
     */
    endIcon?: React.ReactNode;
    /**
     * Whether to disable button interactions when loading
     */
    disableOnLoading?: boolean;
    /**
     * Custom loading component
     */
    customLoadingComponent?: React.ReactNode;
}
export declare const LoadingButton: React.FC<LoadingButtonProps>;
//# sourceMappingURL=LoadingButton.d.ts.map