import type { StepStatus } from '../types';
/**
 * 计算当前步骤的进度百分比
 *
 * @param current - 当前步骤索引
 * @param total - 总步骤数
 * @returns 进度百分比（0-100）
 */
export declare function calculateProgress(current: number, total: number): number;
/**
 * 判断步骤是否可点击
 *
 * @param index - 步骤索引
 * @param current - 当前步骤索引
 * @param status - 步骤状态
 * @param clickable - 全局是否可点击
 * @param allowClickFinished - 是否允许点击已完成步骤
 * @returns 是否可点击
 */
export declare function isStepClickable(index: number, current: number, status: StepStatus, clickable: boolean, allowClickFinished: boolean): boolean;
/**
 * 获取步骤状态
 *
 * @param index - 步骤索引
 * @param current - 当前步骤索引
 * @param customStatus - 自定义状态（优先级最高）
 * @returns 步骤状态
 */
export declare function getStepStatus(index: number, current: number, customStatus?: StepStatus): StepStatus;
/**
 * 合并步骤类名
 *
 * @param baseClass - 基础类名
 * @param status - 步骤状态
 * @param customClass - 自定义类名
 * @returns 合并后的类名
 */
export declare function mergeStepClassName(baseClass: string, status: StepStatus, customClass?: string): string;
/**
 * 判断步骤变更方向
 *
 * @param from - 原步骤索引
 * @param to - 目标步骤索引
 * @returns 变更方向
 */
export declare function getChangeDirection(from: number, to: number): 'forward' | 'backward';
/**
 * 验证步骤索引是否有效
 *
 * @param index - 步骤索引
 * @param total - 总步骤数
 * @returns 是否有效
 */
export declare function isValidStepIndex(index: number, total: number): boolean;
