/**
 * @file fichier de typage de l'API pour améliorer l'intellisense
 */

/**
 * Type pour un état d'affectation BMOB
 * @typedef {string} EtatFeBmob
 **/

/**
 * Forme des données de référence
 * @typedef DonneesReferenceApi
 * @property {Object[]} groupesMarques
 * @property {Object[]} marques
 * @property {Object[]} domaines
 * @property {Object[]} filieres
 * @property {Object[]} grades
 * @property {Object[]} competences
 * @property {Object[]} FEs
 * @property {Object[]} statutFutur
 * @property {Object[]} Zones
 * @property {Object[]} decisions
 * @property {Object[]} avisAdministre
 * @property {Object[]} avisPoste
 * @property {EtatFeBmob[]} etatsFeBmob
 * @property {Object[]} etr
 */

/**
 * Forme des données de référence
 * @typedef ProfilsUtilisateurApi
 * @property {string[]} lecture
 * @property {strint[]} ecriture
 */

/**
 * ID d'un administré
 * @typedef {number} IdAdministreApi
 */

/**
 * Forme de l'administré
 * @typedef AdministreApi
 * @property {IdAdministreApi} a_id_sap
 * @property {ProfilsUtilisateurApi} profils
 */

/**
 * @typedef FormationEmploiUtilisateurApi
 * @property {string} fe_mere_credo
 * @property {string} fe_mere_la
 */

/**
 * ID d'un poste
 * @typedef {string} IdPosteApi
 */

/**
 * @typedef SousVivierUtilisateurApi
 * @property {?boolean} admin
 */

/**
 * @typedef {string} IdSousVivierApi
 */

/**
 * Forme des données de référence
 * @typedef UtilisateurApi
 * @property {number} id
 * @property {string} username
 * @property {?string} first_name
 * @property {?string} last_name
 * @property {?string} email
 * @property {?string} grade
 * @property {?number} administre
 * @property {SousVivierUtilisateurApi[]} sous_viviers
 * @property {FormationEmploiUtilisateurApi[]} formation_emplois
 * @property {Object} fe_groupe
 * @property {ProfilsUtilisateurApi} profils
 */

 export {};