type UserRole =
  | 'UNKNOWN'
  | 'EXECUTIVE'
  | 'EXECUTIVE_ASSISTANCE'
  | 'FINANCE'
  | 'HR'
  | 'OPERATIONS'
  | 'OFFICE_MANAGER'
  | 'PROCUREMENT_MANAGER'
  | 'TRAVEL_MANAGER'
  | 'TRAVELER';
type SignupReason =
  | 'SETUP_COMPANY'
  | 'EVALUATE_CORPORATE_TRAVEL'
  | 'TRAVEL_AND_EXPENSE_SOLUTION'
  | 'TRAVEL_SOLUTION'
  | 'BOOK_TRIP'
  | 'TEAM_OFFSITE';
type ChangeBookingTool =
  | 'YES'
  | 'NO'
  | 'TRAVEL_AND_EXPENSE'
  | 'TRAVEL_ONLY'
  | 'EXPENSE_ONLY'
  | 'NONE';
type NumberOfDaysToTransact = 'FOURTEEN_DAYS' | 'THIRTY_DAYS' | 'SIXTY_DAYS' | 'NOT_SOON';
type MaxEmployeeCount = 10 | 50 | 100 | 800 | 2500 | 5000;

export interface PersonaQuestionsData {
  changeBookingTool?: ChangeBookingTool;
  userRole?: UserRole;
  numberOfDaysToTransact?: NumberOfDaysToTransact;
  maxEmployeeCount?: MaxEmployeeCount;
}

export interface OnboardParams {
  firstName: string;
  lastName?: string;
  leadPhoneNumber?: string;
  accountType?: 'TRAVEL' | 'LIQUID' | 'TRAVEL_AND_LIQUID';
  signupReason?: SignupReason;
}

export const defaultPersonaData: PersonaQuestionsData = {
  changeBookingTool: 'YES',
  userRole: 'OFFICE_MANAGER',
  numberOfDaysToTransact: 'NOT_SOON',
  maxEmployeeCount: 100
};

export enum GrowthRegistrationUrls {
  delegate = 'https://preview.navan.com/sign-up/delegates',
  comtravoMigrate = 'https://navan.com/de/sign-up/all-in-one/comtravo-migrate',
  travel = 'https://preview.navan.com/sign-up?env=staging-prime',
  travelAndExpense = 'https://preview.navan.com/sign-up/travel-and-expense',
  marketingHomePage = 'https://preview.navan.com'
}
