import { BaseService } from './base.service'; import { ConfigService } from './config.service'; /** * Service for managing multi-step form navigation */ export declare class StepperService extends BaseService { private configService; constructor(initialStepIndex: number, configService: ConfigService); /** * Navigate to the next step if possible * @param validateCallback Optional validation callback that determines if navigation is allowed * @returns New step index or current step if navigation isn't possible */ nextStep(validateCallback?: () => boolean): number; /** * Validate current step and navigate to next if valid * @param currentStepId Current step ID for touch marking * @param markStepTouched Function to mark all fields in step as touched * @param validateStep Function to validate the current step * @returns New step index or current step if validation fails */ validateAndNext(currentStepId: string, markStepTouched: (stepId: string, touched: boolean) => void, validateStep: (showErrors: boolean) => boolean): number; /** * Navigate to the previous step if possible * @returns New step index or 0 if already at first step */ prevStep(): number; /** * Go to a specific step by index * @param stepIndex Target step index * @returns True if navigation was successful, false otherwise */ goToStep(stepIndex: number): boolean; /** * Check if currently on the first step * @returns True if on first step */ get isFirstStep(): boolean; /** * Check if currently on the last step * @returns True if on last step */ get isLastStep(): boolean; }