interfaces.d.ts 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. /**
  2. * Structures data as returned by the API and consumed by the structures page
  3. */
  4. interface Address {
  5. type: string,
  6. // type: 'ADDRESS_PRACTICE' | 'ADDRESS_OTHER' | 'ADDRESS_HEAD_OFFICE' | 'ADDRESS_CONTACT' | 'ADDRESS_BILL',
  7. latitude: number,
  8. longitude: number,
  9. streetAddress: string,
  10. postalCode: string,
  11. addressCity: string,
  12. country: string
  13. }
  14. interface Article {
  15. id: number,
  16. date: string,
  17. link: string,
  18. title: string
  19. }
  20. interface Structure {
  21. readonly id: number,
  22. name: string,
  23. logoId: string | null,
  24. type: string | null,
  25. website: string | null,
  26. mapAddress: Address | null,
  27. postalAddress: Address | null,
  28. addresses: Array<Address>,
  29. phone: string | null,
  30. mobilePhone: string | null,
  31. email: string | null,
  32. facebook: string | null,
  33. twitter: string | null,
  34. instagram: string | null,
  35. youtube: string | null,
  36. practices: Array<string>,
  37. parentId: number | null,
  38. parentName: string | null,
  39. parents: Array<number>,
  40. description: string | null,
  41. imageId: string | null,
  42. articles: Array<Article>
  43. }
  44. interface Coordinates {
  45. latitude: number,
  46. longitude: number
  47. }
  48. /**
  49. * Items of the UiSearchAddress component
  50. */
  51. interface UiSearchAddressItem {
  52. text: string,
  53. value: Coordinates,
  54. disabled?: boolean
  55. }
  56. interface PublicEvent {
  57. uuid: string,
  58. organizationId: number,
  59. name: string,
  60. description: string,
  61. url: string,
  62. datetimeStart: Date,
  63. datetimeEnd: Date,
  64. address: Address | null,
  65. roomName: string,
  66. roomDescription: string,
  67. roomCapacity: string,
  68. roomFloorSize: string,
  69. imageId: number,
  70. categories: Array<string>,
  71. origin: string,
  72. entityId: number
  73. }
  74. interface DateRange {
  75. start: string,
  76. end: string
  77. }
  78. interface DateRangePreset {
  79. label: string,
  80. range: DateRange
  81. }
  82. interface HydraCollection<T> {
  83. iri: string,
  84. totalItems: number,
  85. page: number | null,
  86. previousPage: number | null,
  87. nextPage: number | null,
  88. firstPage: number | null,
  89. lastPage: number | null
  90. items: Array<T>,
  91. }