← Files TeleCallARCHIVED FILE

src/types/userNeeds.ts

940 Bytes · Sep 30, 2026 · 23:16 UTC

↓ Download file

export type UserIntent =
  | "fiber"
  | "mobile"
  | "fiber_mobile"
  | "tv"
  | "additional_line"
  | "second_residence"
  | "roaming"
  | "pricing"
  | "comparison"
  | "coverage"
  | "existing_customer"
  | "general_information";

export interface UserNeeds {
  people?: number;
  mobileLines?: number;

  fiberRequired?: boolean;
  fiberSpeedRequired?: number; // e.g. 300, 600, 1000

  mobileDataRequired?: number; // e.g. 35, 50, 60, 100, 150, 300, 350

  teleworking?: boolean;
  gaming?: boolean;
  streaming?: boolean;

  netflix?: boolean;
  disneyPlus?: boolean;
  movistarPlus?: boolean;

  sports?: boolean;
  football?: boolean;

  secondResidence?: boolean;

  budget?: number; // Max monthly budget in EUR

  existingCustomer?: boolean;

  country?: string; // For roaming queries
}

export interface IntentDetectionResult {
  intents: UserIntent[];
  extractedNeeds: UserNeeds;
  confidence: number;
  rawQuery: string;
}

SHA-256: 127f22f6f08800b08c4f10c5441e2005ffaefea95210a4ac9de74b5297c6eac3