/** @module @airtable/blocks/ui: Loader */ /** */
import * as PropTypes from 'prop-types';
import * as React from 'react';
import { FlexItemSetProps, PositionSetProps, MarginProps } from './system';
/**
 * Style props for the {@link Loader} component. Accepts:
 * * {@link FlexItemSetProps}
 * * {@link MarginProps}
 * * {@link PositionSetProps}
 */
interface LoaderStyleProps extends FlexItemSetProps, PositionSetProps, MarginProps {
}
export declare const loaderStylePropTypes: {
    [x: string]: PropTypes.Validator<any>;
};
/**
 * Props for the {@link Loader} component. Also accepts:
 * * {@link LoaderStyleProps}
 *
 * @docsPath UI/components/Loader
 * @noInheritDoc
 */
interface LoaderProps extends LoaderStyleProps {
    /** The color of the loading spinner. Defaults to `'#888'` */
    fillColor: string;
    /** A scalar for the loading spinner. Increasing the scale increases the size of the loading spinner. Defaults to `0.3`. */
    scale: number;
    /** Additional class names to apply to the loading spinner. */
    className?: string;
    /** Additional styles to apply to the loading spinner. */
    style?: React.CSSProperties;
}
/**
 * A loading spinner component.
 *
 * [[ Story id="loader--example" title="Loader example" ]]
 *
 * @docsPath UI/components/Loader
 * @component
 */
declare function Loader(props: LoaderProps): JSX.Element;
declare namespace Loader {
    var propTypes: {
        fillColor: PropTypes.Validator<string>;
        scale: PropTypes.Validator<number>;
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
    };
    var defaultProps: {
        fillColor: string;
        scale: number;
    };
}
export default Loader;
