interface.d.ts 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. import { ActionMenuItemType } from "~/types/enum/layout";
  2. interface ActionMenuItem {
  3. type: ActionMenuItemType
  4. color: 'primary' | 'secondary',
  5. icon: string,
  6. text: string,
  7. url?: string,
  8. }
  9. interface MainMenuItem {
  10. label: string,
  11. to?: string,
  12. children?: Array<MainMenuItem>
  13. }
  14. interface CarouselItem {
  15. logo: string,
  16. description: string,
  17. descriptionSm: string,
  18. buttonClass: string,
  19. image: string,
  20. color: string,
  21. link: string,
  22. name: string,
  23. school: string,
  24. status: string,
  25. avatar: string
  26. }
  27. interface SolutionItem {
  28. name: string;
  29. description: string;
  30. image: string;
  31. link: string;
  32. class: string;
  33. solutions: string[];
  34. }
  35. interface Review {
  36. name: string,
  37. review: string
  38. status: string,
  39. structure: string,
  40. }
  41. interface MenuScroll {
  42. label: string,
  43. anchor: string
  44. }
  45. interface FeaturePicto {
  46. src: string,
  47. text: string
  48. }
  49. // TODO: vérifier l'utilité des props list et isMemberCmf
  50. interface Benefit {
  51. title: string;
  52. number: string;
  53. description: string;
  54. image: string;
  55. list?: string[],
  56. isMemberCMF?: boolean;
  57. }
  58. interface Functionality {
  59. logo: string,
  60. title: string,
  61. list: Array<string>,
  62. options?: Array<string>,
  63. }
  64. interface ComparisonItem {
  65. label: string,
  66. includedInStandard: boolean | string,
  67. includedInPremium: boolean | string,
  68. }
  69. interface Formation {
  70. image: string;
  71. overlayClass: string;
  72. sessions: string;
  73. title: string;
  74. description: string;
  75. buttonText: string;
  76. link: string;
  77. }
  78. interface Program {
  79. id: number;
  80. objectives: string[];
  81. }
  82. interface Training {
  83. number?: string;
  84. title: string;
  85. description: string;
  86. objectives: string[];
  87. duration: string;
  88. program?: Program[];
  89. price: string;
  90. downloadLink: string;
  91. imageUrl?: string
  92. additionalObjectives?: Program[];
  93. }
  94. interface FaqEntry {
  95. question: string,
  96. answer: string
  97. }
  98. interface SocietyValue {
  99. img: string,
  100. title: string,
  101. description: string
  102. }
  103. interface Event {
  104. rdv: string,
  105. title: string,
  106. localisation: string,
  107. date: string,
  108. img: string,
  109. tags: string[],
  110. }
  111. interface ChronologyItem {
  112. year: string,
  113. title: string,
  114. description: string,
  115. imageUrl: string
  116. }
  117. interface SocietyMember {
  118. name: string,
  119. position: string,
  120. photo: string,
  121. }
  122. interface SocialNetworkShareBtn {
  123. name: string,
  124. icon: string,
  125. colorOnHover?: string,
  126. url: string
  127. }
  128. interface ContactFormData {
  129. gender: string | null,
  130. postalCode: string | null,
  131. city: string | null,
  132. phone: string | null,
  133. requestType: string | null,
  134. concernedProduct: string | null,
  135. newsletterSubscription: boolean
  136. }