/** @module @airtable/blocks/ui: ProgressBar */ /** */ import * as PropTypes from 'prop-types'; import * as React from 'react'; import { BackgroundColorProps, MaxWidthProps, MinWidthProps, WidthProps, HeightProps, FlexItemSetProps, PositionSetProps, MarginProps } from './system'; import { OptionalResponsiveProp } from './system/utils/types'; import { TooltipAnchorProps } from './types/tooltip_anchor_props'; /** * Style props for the {@link ProgressBar} component. Also accepts: * * {@link BackgroundColorProps} * * {@link FlexItemSetProps} * * {@link HeightProps} * * {@link MarginProps} * * {@link MaxWidthProps} * * {@link MinWidthProps} * * {@link PositionSetProps} * * {@link WidthProps} * * @noInheritDoc */ interface ProgressBarStyleProps extends BackgroundColorProps, MaxWidthProps, MinWidthProps, WidthProps, HeightProps, FlexItemSetProps, PositionSetProps, MarginProps { /** Defines the display type of an element, which consists of the two basic qualities of how an element generates boxes — the outer display type defining how the box participates in flow layout, and the inner display type defining how the children of the box are laid out. */ display?: OptionalResponsiveProp<'block' | 'inline' | 'inline-block'>; } export declare const progressBarStylePropTypes: { [x: string]: PropTypes.Validator; }; /** * Props for the {@link ProgressBar} component. Also accepts: * * {@link ProgressBarStyleProps} * * @docsPath UI/components/ProgressBar * @noInheritDoc */ interface ProgressBarProps extends ProgressBarStyleProps, TooltipAnchorProps { /** A CSS color, such as `#ff9900`. Defaults to a blue color. */ barColor?: string; /** A number between 0 and 1. 0 is 0% complete, 0.5 is 50% complete, 1 is 100% complete. If you include a number outside of the range, the value will be clamped to be inside of the range. */ progress: number; /** Extra `className`s to apply to the element, separated by spaces. */ className?: string; /** Extra styles to apply to the progress bar. */ style?: React.CSSProperties; } /** * A progress bar. * * @example * ```js * import {ProgressBar} from '@airtable/blocks/ui'; * * function MyComponent() { * return ( * * ); * } * ``` * @docsPath UI/components/ProgressBar * @component */ declare const ProgressBar: { (props: ProgressBarProps): JSX.Element; propTypes: { onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>; onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>; onClick: PropTypes.Requireable<(...args: any[]) => any>; hasOnClick: PropTypes.Requireable; progress: PropTypes.Validator; barColor: PropTypes.Requireable; className: PropTypes.Requireable; style: PropTypes.Requireable; }; defaultProps: { barColor: "blueBright"; backgroundColor: "grayLight1"; width: string; height: number; }; }; export default ProgressBar;