export enum EDirectionOnboarding {
  LEFT = "left",
  RIGHT = "right",
  TOP = "top",
  BOTTOM = "bottom",
}

export interface FormField<T> {
  name: string;
  value: T;
  label?: string | null;
  placeholder?: string | null;
  inputClassName?: string;
  onValid: (value: string) => void;
  onInvalid: () => void;
}

export interface SignupForm {
  email: string;
  birthdate: string;
  birthtime: string;
}

export type UserStatus = "lead" | "registred" | "subscribed" | "unsubscribed";

declare global {
  interface Window {
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    ym: any;
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    ymab: any;
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    klaviyo: any;
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    fbq: any;
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    CollectJS: any;
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    gtag: any;
  }
}