@ansible/ansible-ui-framework
Version:
A framework for building applications using PatternFly.
27 lines (26 loc) • 1.04 kB
TypeScript
import { Dispatch, SetStateAction } from 'react';
import { PageWizardStep } from './types';
export interface PageWizardState<DataT extends NonNullable<object> = object> {
steps: PageWizardStep[];
visibleSteps: PageWizardStep[];
visibleStepsFlattened: PageWizardStep[];
activeStep: PageWizardStep | null;
setActiveStep: (step: PageWizardStep) => void;
wizardData: DataT;
setWizardData: Dispatch<SetStateAction<DataT>>;
stepData: {
[stepID: string]: Partial<DataT>;
};
setStepData: Dispatch<SetStateAction<{
[stepID: string]: Partial<DataT>;
}>>;
stepError: Record<string, object>;
setStepError: Dispatch<SetStateAction<Record<string, object>>>;
onNext: (stepData: Partial<DataT>) => Promise<void>;
onBack: () => void;
isSubmitting: boolean;
submitError?: Error | undefined;
setSubmitError: Dispatch<SetStateAction<Error | undefined>>;
isToggleExpanded: boolean;
setToggleExpanded: (update: (toggleNavExpanded: boolean) => boolean) => void;
}