UNPKG

watercolor-ui

Version:

A modern minimalist cross-framework component library

185 lines 4.9 kB
/** * 验证进度值 * @param {number} value - 进度值 * @param {number} min - 最小值 * @param {number} max - 最大值 * @returns {number} 有效的进度值 */ export function validateProgress(value: number, min?: number, max?: number): number; /** * 计算进度百分比 * @param {number} current - 当前值 * @param {number} total - 总值 * @returns {number} 百分比 */ export function calculatePercentage(current: number, total: number): number; /** * 格式化进度文本 * @param {number} value - 进度值 * @param {Object} options - 格式化选项 * @returns {string} 格式化后的文本 */ export function formatProgressText(value: number, options?: Object): string; /** * 生成 Progress 组件的 CSS 类名 * @param {Object} options - 配置选项 * @returns {Object} 各部分的类名 */ export function getProgressClasses(options?: Object): Object; /** * 根据进度值获取颜色 * @param {number} value - 进度值 * @param {Array} thresholds - 阈值配置 * @returns {string} 颜色名称 */ export function getColorByProgress(value: number, thresholds?: any[]): string; /** * 创建圆形进度条的CSS * @param {number} percentage - 百分比 * @param {string} color - 颜色 * @returns {Object} CSS样式对象 */ export function createCircularProgressCSS(percentage: number, color?: string): Object; export namespace colors { let PRIMARY: string; let SUCCESS: string; let WARNING: string; let ERROR: string; let PURPLE: string; let ORANGE: string; let CYAN: string; let PINK: string; } export namespace sizes { let SM: string; let MD: string; let LG: string; let XL: string; } export namespace types { let LINEAR: string; let CIRCULAR: string; } export namespace animations { let NONE: string; let PULSE: string; let STRIPED: string; let STRIPED_ANIMATED: string; let INDETERMINATE: string; let LOADING: string; } /** * Progress 控制器类 */ export class ProgressController { constructor(options?: {}); options: { duration: number; easing: string; onUpdate: null; onComplete: null; autoStart: boolean; }; currentValue: number; targetValue: number; isRunning: boolean; startTime: number | null; rafId: number | null; /** * 设置进度值 * @param {number} value - 目标值 * @param {boolean} animate - 是否动画 */ setProgress(value: number, animate?: boolean): void; /** * 增加进度 * @param {number} increment - 增量 * @param {boolean} animate - 是否动画 */ increment(increment?: number, animate?: boolean): void; /** * 减少进度 * @param {number} decrement - 减量 * @param {boolean} animate - 是否动画 */ decrement(decrement?: number, animate?: boolean): void; /** * 开始动画 */ start(): void; /** * 停止动画 */ stop(): void; /** * 重置进度 */ reset(): void; /** * 完成进度 */ complete(): void; /** * 动画循环 */ animate(): void; /** * 应用缓动函数 * @param {number} t - 进度值 (0-1) * @returns {number} 缓动后的值 */ applyEasing(t: number): number; /** * 销毁控制器 */ destroy(): void; } export namespace utils { /** * 创建进度控制器实例 * @param {Object} options - 配置选项 * @returns {ProgressController} 控制器实例 */ function createController(options?: Object): ProgressController; /** * 检测是否应该减少动画 * @returns {boolean} 是否减少动画 */ function shouldReduceMotion(): boolean; /** * 估算剩余时间 * @param {number} current - 当前值 * @param {number} total - 总值 * @param {number} startTime - 开始时间 * @returns {number} 预计剩余时间(毫秒) */ function estimateRemainingTime(current: number, total: number, startTime: number): number; /** * 格式化时间 * @param {number} ms - 毫秒 * @returns {string} 格式化的时间字符串 */ function formatTime(ms: number): string; /** * 调试信息 * @param {string} message - 消息 * @param {*} data - 数据 */ function debug(message: string, data: any): void; } declare namespace _default { export { ProgressController }; export { validateProgress }; export { calculatePercentage }; export { formatProgressText }; export { getProgressClasses }; export { getColorByProgress }; export { createCircularProgressCSS }; export { utils }; export { colors }; export { sizes }; export { types }; export { animations }; } export default _default; //# sourceMappingURL=utils.d.ts.map