import { Color } from '@ionic/core';
/**
 * Step status.
 */
export type StepStatus = 'pending' | 'current' | 'completed' | 'error';
/**
 * Single step configuration.
 */
export interface StepMetadata {
    /** Unique step identifier */
    value: string;
    /** Step label */
    label?: string;
    /** Step description/subtitle */
    description?: string;
    /** Step icon (overrides number) */
    icon?: string;
    /** Step status */
    status?: StepStatus;
    /** Whether step is optional */
    optional?: boolean;
    /** Whether step is editable (can go back) */
    editable?: boolean;
    /** Whether step is disabled */
    disabled?: boolean;
    /** Reactive content key for label */
    contentKey?: string;
    /** Component class name for content lookup */
    contentClass?: string;
    /** Fallback for label */
    contentFallback?: string;
}
/**
 * Metadata for the stepper component.
 */
export interface StepperMetadata {
    /** Step items */
    steps: StepMetadata[];
    /** Current step value */
    currentStep?: string;
    /** Current step index (alternative to currentStep) */
    currentIndex?: number;
    /** Stepper orientation */
    orientation?: 'horizontal' | 'vertical';
    /** Linear mode (must complete in order) */
    linear?: boolean;
    /** Stepper color */
    color?: Color;
    /** Show step numbers */
    showNumbers?: boolean;
    /** Connector line style */
    connectorStyle?: 'solid' | 'dashed' | 'none';
    /** Unique token identifier */
    token?: string;
}
/**
 * Event emitted when step changes.
 */
export interface StepChangeEvent {
    /** New step */
    step: StepMetadata;
    /** New step index */
    index: number;
    /** Previous step index */
    previousIndex: number;
}
