import type { AuthUser } from "@/lib/auth";

export interface AccountMeResponse {
  user: AuthUser;
  lifecycle: {
    status: "active" | "blocked" | "pending_deletion";
    deletionRequestedAt: string | null;
    deletionScheduledFor: string | null;
    deletedAt: string | null;
  };
  hasPassword: boolean;
  notificationPreferences: NotificationPreferences;
}

export interface AccountProfileResponse {
  token: string;
  user: AuthUser;
  requiresEmailVerification: boolean;
  requiresLegalAcceptance?: boolean;
}

export interface AccountPasswordResponse {
  user: AuthUser;
}

export interface NotificationPreferences {
  warrantyEmailEnabled: boolean;
  warrantyPushEnabled: boolean;
}

export interface AccountNotificationPreferencesResponse {
  notificationPreferences: NotificationPreferences;
}
