import type { HTMLProps } from 'react';

export interface WizardPageConfig {
  title: string;
  subtitle: string;
  activeStep: string;
  steps: WizardPageStepsConfig;
  videoGuidePlacementKey?: string;
  relatedDocs?: WizardDocsLink[];
  welcomePageConfig?: WizardWelcomePageConfig;
  isOnWelcomePage?: boolean;
}

export interface WizardDocsLink {
  link: string;
  label: string;
}

export interface WizardPageStep {
  id: string;
  order: number;
  label: string;
  description?: string;
  hidden?: boolean;
}

export interface WizardWelcomePageConfig {
  title: string;
  subtitle: string;
  content: React.ReactNode;
  media?: React.ReactNode;
  docsLink?: string;
  docsText?: string;
  onClose?: () => void;
  displayDocs?: boolean;
  containerProps?: HTMLProps<HTMLDivElement>;
}

export type WizardPageStepsConfig = Record<string, WizardPageStep>;
