@drivy/cobalt
Version:
Opinionated design system for Drivy's projects.
25 lines (24 loc) • 836 B
TypeScript
import React from "react";
import { ModalPropsType } from ".";
type StepComponentType<T> = (props: {
navigation: {
nextStep: () => void;
previousStep: () => void;
closeModal: () => void;
};
data: T;
}) => React.ReactNode;
export type ModalStepType<T> = {
title: StepComponentType<T>;
content: StepComponentType<T>;
footer?: StepComponentType<T>;
};
type MultiStepsModalProps<T = null> = {
stepData?: T;
close: () => void;
onHidden?: (currentStepIndex: number) => void;
steps: ModalStepType<T>[];
useMidSizeHeight?: boolean;
} & Omit<ModalPropsType, "children" | "onHidden" | "close">;
declare const MultiStepModal: <T>({ stepData, close, steps, onHidden, useMidSizeHeight, ...modalProps }: MultiStepsModalProps<T>) => React.JSX.Element;
export default MultiStepModal;