/** Vocabulaires du référentiel (R1) — partagés API / web / seed. */

export const ASSET_STATUSES = [
  'IN_SERVICE',
  'OUT_OF_SERVICE',
  'UNDER_MAINTENANCE',
] as const;
export type AssetStatus = (typeof ASSET_STATUSES)[number];

/** Libellés métier (charte §7 : vocabulaire du carnet). */
export const ASSET_STATUS_LABELS: Record<AssetStatus, string> = {
  IN_SERVICE: 'En service',
  OUT_OF_SERVICE: 'À l’arrêt',
  UNDER_MAINTENANCE: 'En maintenance',
};

export const CATEGORY_KINDS = ['EQUIPMENT', 'COMPONENT_TYPE'] as const;
export type CategoryKind = (typeof CATEGORY_KINDS)[number];

export const CATEGORY_KIND_LABELS: Record<CategoryKind, string> = {
  EQUIPMENT: 'Catégorie d’équipement',
  COMPONENT_TYPE: 'Type d’organe',
};

/** Hiérarchie d'emplacements : site → zone, jamais plus profond (invariant R1). */
export const LOCATION_MAX_DEPTH = 2;

/** Durée de validité d'un lien d'activation (invitation). */
export const INVITATION_TTL_DAYS = 7;
