@unicity/design-system
Version:
A comprehensive React component library built on Material-UI with advanced theming capabilities including neumorphism design support
127 lines • 2.73 kB
TypeScript
import React from 'react';
export interface StepData {
/**
* Unique identifier for the step
*/
id: string;
/**
* Step label
*/
label: string;
/**
* Optional description
*/
description?: string;
/**
* Step content (for vertical stepper)
*/
content?: React.ReactNode;
/**
* Custom icon for the step
*/
icon?: React.ReactNode;
/**
* Whether the step is optional
*/
optional?: boolean;
/**
* Whether the step has an error
*/
error?: boolean;
/**
* Whether the step is disabled
*/
disabled?: boolean;
/**
* Color variant for the step
*/
color?: 'primary' | 'secondary' | 'success' | 'warning' | 'error';
}
export interface StepperProps {
/**
* Array of step data
*/
steps: StepData[];
/**
* Current active step (0-based)
*/
activeStep: number;
/**
* Callback fired when a step is clicked (for non-linear steppers)
*/
onStepClick?: (step: number) => void;
/**
* Stepper orientation
*/
orientation?: 'horizontal' | 'vertical';
/**
* Visual variant
*/
variant?: 'default' | 'outlined' | 'compact';
/**
* Whether the stepper is non-linear (allows clicking on any step)
*/
nonLinear?: boolean;
/**
* Whether to show progress indicator
*/
showProgress?: boolean;
/**
* Alternative stepper type
*/
alternativeLabel?: boolean;
/**
* Custom connector component
*/
connector?: React.ReactElement;
/**
* Whether to animate step transitions
*/
animated?: boolean;
}
export interface StepperControlsProps {
/**
* Current active step
*/
activeStep: number;
/**
* Total number of steps
*/
totalSteps: number;
/**
* Callback fired when next button is clicked
*/
onNext?: () => void;
/**
* Callback fired when back button is clicked
*/
onBack?: () => void;
/**
* Callback fired when reset button is clicked
*/
onReset?: () => void;
/**
* Whether the next button is disabled
*/
nextDisabled?: boolean;
/**
* Whether the back button is disabled
*/
backDisabled?: boolean;
/**
* Custom labels
*/
labels?: {
next?: string;
back?: string;
finish?: string;
reset?: string;
};
/**
* Whether to show reset button when completed
*/
showReset?: boolean;
}
export declare const Stepper: React.FC<StepperProps>;
export declare const StepperControls: React.FC<StepperControlsProps>;
//# sourceMappingURL=Stepper.d.ts.map