@trakit/objects 0.0.14 → 0.0.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (275) hide show
  1. package/API/Base.d.ts +1 -6
  2. package/Accounts/Contact.d.ts +2 -2
  3. package/Accounts/Machine.d.ts +2 -1
  4. package/Accounts/Session.d.ts +1 -16
  5. package/Accounts/User.d.ts +2 -3
  6. package/Accounts/UserAdvanced.d.ts +2 -1
  7. package/Accounts/UserAuthentication.d.ts +2 -1
  8. package/Accounts/UserGeneral.d.ts +2 -1
  9. package/Accounts/UserGroup.d.ts +2 -1
  10. package/Assets/Asset.d.ts +35 -5
  11. package/Assets/AssetAdvanced.d.ts +2 -1
  12. package/Assets/AssetDispatch.d.ts +18 -2
  13. package/Assets/AssetGeneral.d.ts +34 -2
  14. package/Behaviours/Behaviour.d.ts +1 -0
  15. package/Behaviours/BehaviourLog.d.ts +1 -0
  16. package/Behaviours/BehaviourScript.d.ts +1 -0
  17. package/Billing/BillingProfile.d.ts +1 -0
  18. package/Billing/Hosting/BillableHostingLicense.d.ts +1 -0
  19. package/Billing/Hosting/BillableHostingRule.d.ts +1 -0
  20. package/Billing/Report/BillingReport.d.ts +1 -0
  21. package/Companies/Company.d.ts +3 -24
  22. package/Companies/CompanyDirectory.d.ts +2 -9
  23. package/Companies/CompanyGeneral.d.ts +2 -1
  24. package/Companies/CompanyPolicy.d.ts +2 -1
  25. package/Companies/CompanyReseller.d.ts +2 -1
  26. package/Companies/CompanyStyle.d.ts +2 -1
  27. package/Dispatch/DispatchJob.d.ts +2 -1
  28. package/Dispatch/DispatchTask.d.ts +1 -0
  29. package/Hosting/Document.d.ts +2 -1
  30. package/Hosting/FormResult.d.ts +2 -1
  31. package/Hosting/FormTemplate.d.ts +2 -1
  32. package/Images/Dashcam.d.ts +3 -2
  33. package/Images/DashcamLive.d.ts +3 -2
  34. package/Images/Icon.d.ts +15 -2
  35. package/Images/Picture.d.ts +2 -1
  36. package/Maintenance/MaintenanceJob.d.ts +2 -1
  37. package/Maintenance/MaintenanceSchedule.d.ts +2 -1
  38. package/Messaging/AssetAlert.d.ts +2 -1
  39. package/Messaging/AssetMessage.d.ts +2 -1
  40. package/Places/Place.d.ts +2 -1
  41. package/Providers/Config/ProviderConfig.d.ts +2 -1
  42. package/Providers/Config/ProviderRegistration.d.ts +2 -1
  43. package/Providers/Config/ProviderScript.d.ts +2 -1
  44. package/Providers/Configuration/ProviderConfiguration.d.ts +2 -1
  45. package/Providers/Configuration/ProviderConfigurationType.d.ts +2 -1
  46. package/Providers/Provider.d.ts +3 -13
  47. package/Providers/ProviderAdvanced.d.ts +2 -1
  48. package/Providers/ProviderControl.d.ts +2 -1
  49. package/Providers/ProviderGeneral.d.ts +2 -1
  50. package/README.md +24 -24
  51. package/Reports/ReportBreakdown.d.ts +32 -1
  52. package/Reports/ReportBreakdownJob.d.ts +32 -1
  53. package/Reports/ReportBreakdownMessage.d.ts +32 -1
  54. package/Reports/ReportBreakdownTask.d.ts +32 -1
  55. package/Reports/ReportResult.d.ts +2 -1
  56. package/Reports/ReportSchedule.d.ts +2 -1
  57. package/Reports/ReportSummary.d.ts +64 -2
  58. package/Reports/ReportTemplate.d.ts +2 -1
  59. package/index.d.ts +1 -1
  60. package/objects/API/Arrays.d.ts +46 -0
  61. package/objects/API/Base.d.ts +19 -0
  62. package/objects/API/BaseComponent.d.ts +40 -0
  63. package/objects/API/BaseCompound.d.ts +19 -0
  64. package/objects/API/Codifier.d.ts +15 -0
  65. package/objects/API/Constants.d.ts +39 -0
  66. package/objects/API/Conversion.d.ts +255 -0
  67. package/objects/API/Encoding.d.ts +9 -0
  68. package/objects/API/Files.d.ts +21 -0
  69. package/objects/API/Functions.d.ts +196 -0
  70. package/objects/API/Geography/Functions.d.ts +236 -0
  71. package/objects/API/Geography/Interfaces.d.ts +150 -0
  72. package/objects/API/Geography/LatLng.d.ts +86 -0
  73. package/objects/API/Geography/LatLngBounds.d.ts +146 -0
  74. package/objects/API/Geography/Position.d.ts +74 -0
  75. package/objects/API/Geography/StreetAddress.d.ts +59 -0
  76. package/objects/API/Geometry/Functions.d.ts +114 -0
  77. package/objects/API/Geometry/Interfaces.d.ts +111 -0
  78. package/objects/API/Geometry/Point.d.ts +81 -0
  79. package/objects/API/Geometry/Radial.d.ts +110 -0
  80. package/objects/API/Geometry/Rectangle.d.ts +159 -0
  81. package/objects/API/Geometry/Size.d.ts +58 -0
  82. package/objects/API/Guid.d.ts +4 -0
  83. package/objects/API/Interfaces/IAmCompany.d.ts +11 -0
  84. package/objects/API/Interfaces/IBelongAsset.d.ts +15 -0
  85. package/objects/API/Interfaces/IBelongBillingProfile.d.ts +15 -0
  86. package/objects/API/Interfaces/IBelongCompany.d.ts +15 -0
  87. package/objects/API/Interfaces/IDeserializable.d.ts +13 -0
  88. package/objects/API/Interfaces/IEnabled.d.ts +10 -0
  89. package/objects/API/Interfaces/IFileSize.d.ts +9 -0
  90. package/objects/API/Interfaces/IGlobal.d.ts +11 -0
  91. package/objects/API/Interfaces/IHavePermissions.d.ts +20 -0
  92. package/objects/API/Interfaces/IHavePreferences.d.ts +29 -0
  93. package/objects/API/Interfaces/IIconic.d.ts +15 -0
  94. package/objects/API/Interfaces/IIdUlong.d.ts +10 -0
  95. package/objects/API/Interfaces/ILabelled.d.ts +10 -0
  96. package/objects/API/Interfaces/INamed.d.ts +13 -0
  97. package/objects/API/Interfaces/IPictured.d.ts +15 -0
  98. package/objects/API/Interfaces/IRequestable.d.ts +22 -0
  99. package/objects/API/Interfaces/ISerializable.d.ts +10 -0
  100. package/objects/API/Interfaces/ISuspendable.d.ts +16 -0
  101. package/objects/API/Interfaces/IVisual.d.ts +18 -0
  102. package/objects/API/Maps.d.ts +28 -0
  103. package/objects/API/Objects.d.ts +5 -0
  104. package/objects/API/SearchPattern.d.ts +46 -0
  105. package/objects/API/TimeSpan.d.ts +109 -0
  106. package/objects/API/Timezone.d.ts +44 -0
  107. package/objects/API/Timezones.d.ts +7 -0
  108. package/objects/API/Types.d.ts +132 -0
  109. package/objects/Accounts/Contact.d.ts +139 -0
  110. package/objects/Accounts/Machine.d.ts +139 -0
  111. package/objects/Accounts/MultiFactorType.d.ts +17 -0
  112. package/objects/Accounts/NotificationMethod.d.ts +17 -0
  113. package/objects/Accounts/Permissions/Authorizer.d.ts +204 -0
  114. package/objects/Accounts/Permissions/Permission.d.ts +56 -0
  115. package/objects/Accounts/Permissions/PermissionEscalation.d.ts +41 -0
  116. package/objects/Accounts/Permissions/PermissionEscalationState.d.ts +19 -0
  117. package/objects/Accounts/Permissions/PermissionEscalationType.d.ts +13 -0
  118. package/objects/Accounts/Permissions/PermissionLevel.d.ts +17 -0
  119. package/objects/Accounts/Permissions/PermissionMethod.d.ts +13 -0
  120. package/objects/Accounts/Permissions/PermissionType.d.ts +280 -0
  121. package/objects/Accounts/SSOIdentityProvider.d.ts +25 -0
  122. package/objects/Accounts/Session.d.ts +89 -0
  123. package/objects/Accounts/SessionStatus.d.ts +29 -0
  124. package/objects/Accounts/SystemsOfUnits.d.ts +13 -0
  125. package/objects/Accounts/User.d.ts +167 -0
  126. package/objects/Accounts/UserAdvanced.d.ts +53 -0
  127. package/objects/Accounts/UserAuthentication.d.ts +55 -0
  128. package/objects/Accounts/UserGeneral.d.ts +98 -0
  129. package/objects/Accounts/UserGroup.d.ts +51 -0
  130. package/objects/Accounts/UserMFA.d.ts +47 -0
  131. package/objects/Accounts/UserNotifications.d.ts +76 -0
  132. package/objects/Accounts/UserSSO.d.ts +37 -0
  133. package/objects/Assets/Asset.d.ts +218 -0
  134. package/objects/Assets/AssetAdvanced.d.ts +77 -0
  135. package/objects/Assets/AssetAttribute.d.ts +71 -0
  136. package/objects/Assets/AssetDispatch.d.ts +55 -0
  137. package/objects/Assets/AssetGeneral.d.ts +127 -0
  138. package/objects/Assets/AssetPlaceStatus.d.ts +31 -0
  139. package/objects/Assets/AssetPlaceStatusType.d.ts +17 -0
  140. package/objects/Assets/AssetType.d.ts +21 -0
  141. package/objects/Behaviours/Behaviour.d.ts +78 -0
  142. package/objects/Behaviours/BehaviourLog.d.ts +95 -0
  143. package/objects/Behaviours/BehaviourLogType.d.ts +21 -0
  144. package/objects/Behaviours/BehaviourParameter.d.ts +38 -0
  145. package/objects/Behaviours/BehaviourParameterType.d.ts +21 -0
  146. package/objects/Behaviours/BehaviourScript.d.ts +83 -0
  147. package/objects/Billing/BillableBase.d.ts +83 -0
  148. package/objects/Billing/BillableSmsProfile.d.ts +26 -0
  149. package/objects/Billing/BillingCurrency.d.ts +17 -0
  150. package/objects/Billing/BillingCycle.d.ts +17 -0
  151. package/objects/Billing/BillingProfile.d.ts +104 -0
  152. package/objects/Billing/Hosting/BillableHostingBase.d.ts +41 -0
  153. package/objects/Billing/Hosting/BillableHostingLicense.d.ts +30 -0
  154. package/objects/Billing/Hosting/BillableHostingLicenseType.d.ts +20 -0
  155. package/objects/Billing/Hosting/BillableHostingRule.d.ts +30 -0
  156. package/objects/Billing/Hosting/BillableHostingType.d.ts +41 -0
  157. package/objects/Billing/Report/BillingReport.d.ts +112 -0
  158. package/objects/Billing/Report/BillingReportBreakdown.d.ts +34 -0
  159. package/objects/Billing/Report/BillingReportHostingSummary.d.ts +36 -0
  160. package/objects/Billing/Report/BillingReportLicenseBreakdown.d.ts +79 -0
  161. package/objects/Billing/Report/BillingReportServiceBreakdown.d.ts +124 -0
  162. package/objects/Billing/Report/BillingReportStatus.d.ts +25 -0
  163. package/objects/Billing/Report/BillingReportSummary.d.ts +49 -0
  164. package/objects/Companies/ColourStyle.d.ts +25 -0
  165. package/objects/Companies/Company.d.ts +167 -0
  166. package/objects/Companies/CompanyDirectory.d.ts +52 -0
  167. package/objects/Companies/CompanyGeneral.d.ts +55 -0
  168. package/objects/Companies/CompanyPolicy.d.ts +66 -0
  169. package/objects/Companies/CompanyReseller.d.ts +166 -0
  170. package/objects/Companies/CompanyStyle.d.ts +50 -0
  171. package/objects/Companies/LabelStyle.d.ts +46 -0
  172. package/objects/Companies/NotificationServerEmail.d.ts +99 -0
  173. package/objects/Companies/NotificationServerSms.d.ts +25 -0
  174. package/objects/Companies/PasswordExpiryMode.d.ts +17 -0
  175. package/objects/Companies/PasswordPolicy.d.ts +51 -0
  176. package/objects/Companies/SessionMultiUser.d.ts +17 -0
  177. package/objects/Companies/SessionPolicy.d.ts +47 -0
  178. package/objects/Dispatch/DispatchDirection.d.ts +53 -0
  179. package/objects/Dispatch/DispatchJob.d.ts +107 -0
  180. package/objects/Dispatch/DispatchJobPriority.d.ts +25 -0
  181. package/objects/Dispatch/DispatchStep.d.ts +99 -0
  182. package/objects/Dispatch/DispatchStepState.d.ts +27 -0
  183. package/objects/Dispatch/DispatchStepStatus.d.ts +21 -0
  184. package/objects/Dispatch/DispatchTask.d.ts +154 -0
  185. package/objects/Dispatch/DispatchTaskStatus.d.ts +50 -0
  186. package/objects/Hosting/Document.d.ts +70 -0
  187. package/objects/Hosting/Fields/FormFieldAttachments.d.ts +31 -0
  188. package/objects/Hosting/Fields/FormFieldBase.d.ts +56 -0
  189. package/objects/Hosting/Fields/FormFieldBase_fromJSON.d.ts +1 -0
  190. package/objects/Hosting/Fields/FormFieldBoolean.d.ts +38 -0
  191. package/objects/Hosting/Fields/FormFieldChoice.d.ts +46 -0
  192. package/objects/Hosting/Fields/FormFieldDate.d.ts +26 -0
  193. package/objects/Hosting/Fields/FormFieldNumeric.d.ts +54 -0
  194. package/objects/Hosting/Fields/FormFieldNumericSize.d.ts +32 -0
  195. package/objects/Hosting/Fields/FormFieldSignature.d.ts +17 -0
  196. package/objects/Hosting/Fields/FormFieldText.d.ts +32 -0
  197. package/objects/Hosting/Fields/FormFieldTime.d.ts +37 -0
  198. package/objects/Hosting/Fields/FormFieldTimezone.d.ts +14 -0
  199. package/objects/Hosting/FormFieldType.d.ts +127 -0
  200. package/objects/Hosting/FormResult.d.ts +95 -0
  201. package/objects/Hosting/FormTemplate.d.ts +80 -0
  202. package/objects/Images/Dashcam.d.ts +63 -0
  203. package/objects/Images/DashcamBase.d.ts +97 -0
  204. package/objects/Images/DashcamLive.d.ts +36 -0
  205. package/objects/Images/DashcamMediaType.d.ts +17 -0
  206. package/objects/Images/Icon.d.ts +66 -0
  207. package/objects/Images/IconGlyph.d.ts +47 -0
  208. package/objects/Images/IconLabel.d.ts +29 -0
  209. package/objects/Images/IconLayer.d.ts +33 -0
  210. package/objects/Images/Picture.d.ts +72 -0
  211. package/objects/Maintenance/MaintenanceInterval.d.ts +48 -0
  212. package/objects/Maintenance/MaintenanceJob.d.ts +134 -0
  213. package/objects/Maintenance/MaintenanceJobStatus.d.ts +21 -0
  214. package/objects/Maintenance/MaintenanceSchedule.d.ts +118 -0
  215. package/objects/Messaging/AlertPriority.d.ts +17 -0
  216. package/objects/Messaging/AssetAlert.d.ts +29 -0
  217. package/objects/Messaging/AssetMessage.d.ts +40 -0
  218. package/objects/Messaging/MessageBase.d.ts +99 -0
  219. package/objects/Messaging/MessageFolder.d.ts +13 -0
  220. package/objects/Messaging/MessageStatus.d.ts +29 -0
  221. package/objects/Messaging/MessageType.d.ts +33 -0
  222. package/objects/Places/Place.d.ts +114 -0
  223. package/objects/Places/PlaceType.d.ts +25 -0
  224. package/objects/Providers/Config/ProviderConfig.d.ts +70 -0
  225. package/objects/Providers/Config/ProviderRegistration.d.ts +119 -0
  226. package/objects/Providers/Config/ProviderScript.d.ts +86 -0
  227. package/objects/Providers/Config/ProviderScriptBlock.d.ts +41 -0
  228. package/objects/Providers/Config/ProviderScriptParameter.d.ts +49 -0
  229. package/objects/Providers/Config/ProviderScriptParameterType.d.ts +17 -0
  230. package/objects/Providers/Configuration/ProviderConfiguration.d.ts +66 -0
  231. package/objects/Providers/Configuration/ProviderConfigurationNode.d.ts +66 -0
  232. package/objects/Providers/Configuration/ProviderConfigurationType.d.ts +62 -0
  233. package/objects/Providers/Configuration/ProviderGeofenceBase.d.ts +29 -0
  234. package/objects/Providers/Configuration/ProviderGeofenceBase_fromJSON.d.ts +1 -0
  235. package/objects/Providers/Configuration/ProviderGeofenceCircular.d.ts +28 -0
  236. package/objects/Providers/Configuration/ProviderGeofencePoint.d.ts +12 -0
  237. package/objects/Providers/Configuration/ProviderGeofencePolygon.d.ts +23 -0
  238. package/objects/Providers/Configuration/ProviderGeofenceRectangle.d.ts +28 -0
  239. package/objects/Providers/Provider.d.ts +205 -0
  240. package/objects/Providers/ProviderAdvanced.d.ts +50 -0
  241. package/objects/Providers/ProviderCommand.d.ts +36 -0
  242. package/objects/Providers/ProviderCommandStatus.d.ts +29 -0
  243. package/objects/Providers/ProviderCommandType.d.ts +37 -0
  244. package/objects/Providers/ProviderControl.d.ts +41 -0
  245. package/objects/Providers/ProviderData.d.ts +30 -0
  246. package/objects/Providers/ProviderGeneral.d.ts +121 -0
  247. package/objects/Providers/ProviderType.d.ts +106 -0
  248. package/objects/Reports/ReportBreakdown.d.ts +49 -0
  249. package/objects/Reports/ReportBreakdownJob.d.ts +37 -0
  250. package/objects/Reports/ReportBreakdownMessage.d.ts +40 -0
  251. package/objects/Reports/ReportBreakdownTask.d.ts +46 -0
  252. package/objects/Reports/ReportBreakdown_fromJSON.d.ts +1 -0
  253. package/objects/Reports/ReportFilterMode.d.ts +17 -0
  254. package/objects/Reports/ReportNotifications.d.ts +31 -0
  255. package/objects/Reports/ReportOptions.d.ts +52 -0
  256. package/objects/Reports/ReportParameter.d.ts +26 -0
  257. package/objects/Reports/ReportParameterType.d.ts +59 -0
  258. package/objects/Reports/ReportRecurrence.d.ts +54 -0
  259. package/objects/Reports/ReportRecurrenceType.d.ts +34 -0
  260. package/objects/Reports/ReportResult.d.ts +169 -0
  261. package/objects/Reports/ReportResultData.d.ts +17 -0
  262. package/objects/Reports/ReportSchedule.d.ts +111 -0
  263. package/objects/Reports/ReportScorecard.d.ts +38 -0
  264. package/objects/Reports/ReportScorecardParameter.d.ts +31 -0
  265. package/objects/Reports/ReportScorecardRules.d.ts +26 -0
  266. package/objects/Reports/ReportStatus.d.ts +29 -0
  267. package/objects/Reports/ReportSummary.d.ts +90 -0
  268. package/objects/Reports/ReportSummaryReason.d.ts +27 -0
  269. package/objects/Reports/ReportTemplate.d.ts +81 -0
  270. package/objects/Reports/ReportTotal.d.ts +47 -0
  271. package/objects/Reports/ReportType.d.ts +42 -0
  272. package/objects/index.d.ts +406 -0
  273. package/objects/storage.d.ts +176 -0
  274. package/package.json +36 -36
  275. package/trakit-objects.min.js +2 -2
@@ -0,0 +1,204 @@
1
+ import { codified, ulong } from '../../API/Types';
2
+ import { Permission } from './Permission';
3
+ import { PermissionEscalation } from './PermissionEscalation';
4
+ import { PermissionLevel } from './PermissionLevel';
5
+ import { PermissionType } from './PermissionType';
6
+ /**
7
+ * Users have implied read access to their company's general, labels, policies, icons, and pictures.
8
+ */
9
+ export declare const IMPLIED_PERMS: PermissionType[];
10
+ /**
11
+ * These are the permissions which require label-based calculations.
12
+ */
13
+ export declare const LABEL_BASED_PERMS: PermissionType[];
14
+ /**
15
+ * Creates a {@link Dictionary} where the key is a {@link Company#id} and the values are well ordered arrays of {@link Permission}s which can be used to further calculate a user's permissions.
16
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
17
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
18
+ * @param fromUser The User's user-specific permissions.
19
+ * @param skipImpliedPermissions When true, does not automatically add implied permissions for the user's company.
20
+ */
21
+ export declare function computeAll(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], skipImpliedPermissions?: boolean): Map<number, Permission[]>;
22
+ /**
23
+ * Creates a well ordered array of {@link Permission}s which can be used to further calculate a user's permissions for the target company.
24
+ * @param userCompanyId Unique identifier of the {@link Company#id} to which the User belongs.
25
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
26
+ * @param fromUser The User's user-specific permissions.
27
+ * @param targetCompanyId Unique identifier of the {@link Company#id} being tested for access.
28
+ * @param skipImpliedPermissions When true, does not automatically add implied permissions for the user's company.
29
+ */
30
+ export declare function compute(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId?: ulong, skipImpliedPermissions?: boolean): Permission[];
31
+ /**
32
+ * Creates a {@link Dictionary} where the key is a {@link Company#id} and the values are well ordered arrays of simple {@link Permission}s which can be used to further calculate a user's permissions.
33
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
34
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
35
+ * @param fromUser The User's user-specific permissions.
36
+ */
37
+ export declare function computeAllSimple(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[]): Map<number, Permission[]>;
38
+ /**
39
+ * Creates a well ordered array of simple {@link Permission}s which can be used to further calculate a user's permissions.
40
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
41
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
42
+ * @param fromUser The User's user-specific permissions.
43
+ * @param targetCompanyId Unique identifier of the {@link Company} being tested for access.
44
+ */
45
+ export declare function computeSimple(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId: ulong): Permission[];
46
+ /**
47
+ * Creates a {@link Dictionary} where the key is a {@link PermissionType} and the values are {@link PermissionLevel}s.
48
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
49
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
50
+ * @param fromUser The User's user-specific permissions.
51
+ * @param targetCompanyId Unique identifier of the {@link Company} being tested for access.
52
+ */
53
+ export declare function computeSimpleLevels(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId: ulong): Map<PermissionType, PermissionLevel>;
54
+ /**
55
+ * Gets the permission level of the given simple permission type.
56
+ * If the permission type specified is not found, undefined is returned instead.
57
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
58
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
59
+ * @param fromUser The User's user-specific permissions.
60
+ * @param targetCompanyId Unique identifier of the {@link Company} being tested for access.
61
+ * @param targetType The specific {@link PermissionType}s to check.
62
+ */
63
+ export declare function getSimpleLevel(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId: ulong, targetType: PermissionType): PermissionLevel | undefined;
64
+ /**
65
+ * Checks a specific simple permission type and level, and returns true if access is granted.
66
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
67
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
68
+ * @param fromUser The User's user-specific permissions.
69
+ * @param targetCompanyId Unique identifier of the {@link Company} being tested for access.
70
+ * @param targetType The specific {@link PermissionType}s to check.
71
+ * @param targetLevel Minimum requested level of access.
72
+ */
73
+ export declare function hasSimple(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId: ulong, targetType: PermissionType, targetLevel: PermissionLevel): boolean;
74
+ /**
75
+ * Checks a specific simple permission type and level from a pre-computed array of permissions, and returns true if access is granted.
76
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
77
+ * @param permissions Pre-computed and ordered array of {@link Permission} like the kind returned by {@link authorizer.computeSimple}.
78
+ * @param targetType The specific {@link PermissionType}s to check.
79
+ * @param targetLevel Minimum requested level of access.
80
+ */
81
+ export declare function findSimple(userCompanyId: ulong, permissions: Permission[], targetType: PermissionType, targetLevel: PermissionLevel): boolean;
82
+ /**
83
+ * Retrieves the specified simple permission level from a pre-computed array of permissions.
84
+ * If the permission type specified is not found, undefined is returned instead.
85
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
86
+ * @param permissions Pre-computed and ordered array of {@link Permission} like the kind returned by {@link authorizer.computeSimple}.
87
+ * @param targetType The specific {@link PermissionType}s to check.
88
+ */
89
+ export declare function findSimpleLevel(userCompanyId: ulong, permissions: Permission[], targetType: PermissionType): PermissionLevel | undefined;
90
+ /**
91
+ * Creates a {@link Dictionary} where the key is a {@link Company#id} and the values are well ordered arrays of complex {@link Permission}s which can be used to further calculate a user's permissions.
92
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
93
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
94
+ * @param fromUser The User's user-specific permissions.
95
+ */
96
+ export declare function computeAllComplex(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[]): Map<number, Permission[]>;
97
+ /**
98
+ * Creates a well ordered array of complex {@link Permission}s which can be used to further calculate a user's permissions.
99
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
100
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
101
+ * @param fromUser The User's user-specific permissions.
102
+ * @param targetCompanyId Unique identifier of the {@link Company} being tested for access.
103
+ */
104
+ export declare function computeComplex(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId?: ulong): Permission[];
105
+ /**
106
+ * Gets the permission level of the given complex permission type.
107
+ * If the permission type specified is not found, undefined is returned instead.
108
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
109
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
110
+ * @param fromUser The User's user-specific permissions.
111
+ * @param targetCompanyId Unique identifier of the {@link Company} being tested for access.
112
+ * @param targetCompanyLabels List of codified {@link LabelStyle} names available in the Company.
113
+ * @param targetType The specific {@link PermissionType}s to check.
114
+ * @param targetLabels List of codified {@link LabelStyle} names used by the target.
115
+ */
116
+ export declare function getComplexLevel(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId: ulong, targetCompanyLabels: codified[], targetType: PermissionType, targetLabels: codified[]): PermissionLevel | undefined;
117
+ /**
118
+ * Checks a specific complex permission type, level, and labels, and returns true if access is granted.
119
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
120
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
121
+ * @param fromUser The User's user-specific permissions.
122
+ * @param targetCompanyId Unique identifier of the {@link Company} being tested for access.
123
+ * @param targetCompanyLabels List of codified {@link LabelStyle} names available in the Company.
124
+ * @param targetType The specific {@link PermissionType}s to check.
125
+ * @param targetLabels List of codified {@link LabelStyle} names used by the target.
126
+ * @param targetLevel Minimum requested level of access.
127
+ */
128
+ export declare function hasComplex(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId: ulong, targetCompanyLabels: codified[], targetType: PermissionType, targetLabels: codified[], targetLevel: PermissionLevel): boolean;
129
+ /**
130
+ * Checks a specific complex permission type, level, and labels from a pre-computed array of permissions, and returns true if access is granted.
131
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
132
+ * @param permissions Pre-computed and ordered array of {@link Permission} like the kind returned by {@link authorizer.computeComplex}.
133
+ * @param targetCompanyLabels List of codified {@link LabelStyle} names available in the Company
134
+ * @param targetType The specific {@link PermissionType}s to check.
135
+ * @param targetLabels List of codified {@link LabelStyle} names used by the target.
136
+ * @param targetLevel Minimum requested level of access.
137
+ */
138
+ export declare function findComplex(userCompanyId: ulong, permissions: Permission[], targetCompanyLabels: codified[], targetType: PermissionType, targetLabels: codified[], targetLevel: PermissionLevel): boolean;
139
+ /**
140
+ * Retrieves the specified complex permission level from a pre-computed array of permissions.
141
+ * If the permission type specified is not found, undefined is returned instead.
142
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
143
+ * @param permissions Pre-computed and ordered array of {@link Permission} like the kind returned by {@link authorizer.computeComplex}.
144
+ * @param targetCompanyLabels List of codified {@link LabelStyle} names available in the Company
145
+ * @param targetType The specific {@link PermissionType}s to check.
146
+ * @param targetLabels List of codified {@link LabelStyle} names used by the target.
147
+ */
148
+ export declare function findComplexLevel(userCompanyId: ulong, permissions: Permission[], targetCompanyLabels: codified[], targetType: PermissionType, targetLabels: codified[]): PermissionLevel | undefined;
149
+ /**
150
+ * Checks a specific complex permission type, level, but not the labels, and returns true if access is granted.
151
+ * This method can be used as a short-circuit to diving deeper into check label specific permissions.
152
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
153
+ * @param fromGroups Collection of permissions from {@link UserGroup}s to which the User belongs.
154
+ * @param fromUser The User's user-specific permissions.
155
+ * @param targetCompanyId Unique identifier of the {@link Company} being tested for access.
156
+ * @param targetType The specific {@link PermissionType}s to check.
157
+ * @param targetLevel Optional level of access. If not specified, default is {@link PermissionLevel.read}.
158
+ */
159
+ export declare function hasAnyComplex(userCompanyId: ulong, fromGroups: Permission[], fromUser: Permission[], targetCompanyId: ulong, targetType: PermissionType, targetLevel: PermissionLevel): boolean;
160
+ /**
161
+ * Checks a specific complex permission type, level, but not the labels, and returns true if access is granted.
162
+ * This method can be used as a short-circuit to diving deeper into check label specific permissions.
163
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
164
+ * @param permissions Pre-computed and ordered array of {@link Permission} like the kind returned by {@link authorizer.computeComplex}.
165
+ * @param targetType The specific {@link PermissionType}s to check.
166
+ * @param targetLevel Optional level of access. If not specified, default is {@link PermissionLevel.read}.
167
+ */
168
+ export declare function findAnyComplex(userCompanyId: ulong, permissions: Permission[], targetType: PermissionType, targetLevel: PermissionLevel): boolean;
169
+ /**
170
+ * Generates a {@link Dictionary} (company identifier as the key) of permissions being escalated between two computed permission states.
171
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
172
+ * @param before Initial state of fully computed list of permissions (like returned by returned by {@link authorizer.computeAll}).
173
+ * @param after Proposed state of computed permissions (like returned by {@link authorizer.computeAll}).
174
+ * @param targetCompaniesLabels {@link Dictionary} of company and list of codified {@link LabelStyle} names available. If not specified, complex permissions will not be evaluated correctly.
175
+ */
176
+ export declare function findAllEscalations(userCompanyId: ulong, before: Map<ulong, Permission[]>, after: Map<ulong, Permission[]>, targetCompaniesLabels: Map<ulong, codified[]>): Map<number, PermissionEscalation[]>;
177
+ /**
178
+ * Generates an array of permissions being escalated between two computed permission states for a target company.
179
+ * @param userCompanyId Unique identifier of the {@link Company} to which the User belongs.
180
+ * @param before Initial list of computed permissions for a company (like returned by {@link authorizer.compute}).
181
+ * @param after Proposed list of computed permissions for a company (like returned by {@link authorizer.compute}).
182
+ * @param targetCompanyLabels List of codified {@link LabelStyle} names available in the Company. If not specified, complex permissions will not be evaluated correctly.
183
+ */
184
+ export declare function findEscalations(userCompanyId: ulong, before: Permission[], after: Permission[], targetCompanyLabels: codified[]): PermissionEscalation[];
185
+ /**
186
+ * Generates a list of labels that create an escalated permission state after the proposed modification.
187
+ * @param userCompanyId Unique identifier of the Company to which the User belongs.
188
+ * @param targetCompanyPermissions List of computed permissions for a company (like returned by {@link authorizer.compute}).
189
+ * @param targetTypes List of {@link PermissionType}s to check.
190
+ * @param targetCompanyLabels List of codified {@link LabelStyle} names available in the {@link Company}.
191
+ * @param targetBeforeLabels The labels appled to the ILabelled object before the proposed change.
192
+ * @param targetAfterLabels The labels appled to the ILabelled object after the proposed change.
193
+ */
194
+ export declare function findAllLabelEscalations(userCompanyId: ulong, targetCompanyPermissions: Permission[], targetTypes: PermissionType[], targetCompanyLabels: codified[], targetBeforeLabels: codified[], targetAfterLabels: codified[]): PermissionEscalation[];
195
+ /**
196
+ * Generates a list of labels that create an escalated permission state after the proposed modification to an labelled object.
197
+ * @param userCompanyId Unique identifier of the Company to which the User belongs.
198
+ * @param targetCompanyPermissions List of computed permissions for a single company (like returned by {@link authorizer.compute}).
199
+ * @param targetType The specific {@link PermissionType} to check.
200
+ * @param targetCompanyLabels List of codified {@link LabelStyle} names available in the {@link Company}.
201
+ * @param targetBeforeLabels The labels appled to the ILabelled object before the proposed change.
202
+ * @param targetAfterLabels The labels appled to the ILabelled object after the proposed change.
203
+ */
204
+ export declare function findLabelEscalation(userCompanyId: ulong, targetCompanyPermissions: Permission[], targetType: PermissionType, targetCompanyLabels: codified[], targetBeforeLabels?: codified[], targetAfterLabels?: codified[]): PermissionEscalation | null;
@@ -0,0 +1,56 @@
1
+ import { IBelongCompany } from '../../API/Interfaces/IBelongCompany';
2
+ import { ISerializable } from '../../API/Interfaces/ISerializable';
3
+ import { codified, JsonObject, nothing, ulong } from '../../API/Types';
4
+ import { Company } from '../../Companies/Company';
5
+ import { PermissionLevel } from './PermissionLevel';
6
+ import { PermissionMethod } from './PermissionMethod';
7
+ import { PermissionType } from './PermissionType';
8
+ /**
9
+ * A defined permission for {@link User}s, {@link UserGroup}s, and {@link Machine}s.
10
+ */
11
+ export declare class Permission implements IBelongCompany, ISerializable {
12
+ /**
13
+ *
14
+ * @param json
15
+ * @returns
16
+ */
17
+ static fromJSON(json: JsonObject): Permission;
18
+ /**
19
+ * The {@link Company.id} that this permission targets.
20
+ */
21
+ companyId: ulong;
22
+ /**
23
+ * The {@link Company} that this permission targets.
24
+ */
25
+ get company(): Company;
26
+ /**
27
+ * The type of permission.
28
+ */
29
+ kind: PermissionType;
30
+ /**
31
+ * The kind of permission.
32
+ * @deprecated Use {@link kind} instead.
33
+ */
34
+ get type(): string;
35
+ set type(value: string);
36
+ /**
37
+ * The level of access being defined.
38
+ */
39
+ level: PermissionLevel;
40
+ /**
41
+ * The way the access is used.
42
+ */
43
+ method: PermissionMethod;
44
+ /**
45
+ * Codified names of {@link LabelStyle}s. If list is empty, this permission applies for all labels.
46
+ */
47
+ labels: codified[];
48
+ constructor(company?: ulong | nothing, kind?: PermissionType | nothing, level?: PermissionLevel | nothing, method?: PermissionMethod | nothing, labels?: codified[] | nothing);
49
+ toJSON(): {
50
+ company: number | null;
51
+ kind: PermissionType;
52
+ level: PermissionLevel;
53
+ method: PermissionMethod;
54
+ labels: string[];
55
+ };
56
+ }
@@ -0,0 +1,41 @@
1
+ import { ISerializable } from "../../API/Interfaces/ISerializable";
2
+ import { codified, JsonObject, nothing, ulong } from "../../API/Types";
3
+ import { PermissionEscalationState } from "./PermissionEscalationState";
4
+ import { PermissionEscalationType } from "./PermissionEscalationType";
5
+ import { PermissionLevel } from "./PermissionLevel";
6
+ import { PermissionType } from "./PermissionType";
7
+ /**
8
+ * Used to throw permission escalation exceptions, this is similar to a {@link Permission},
9
+ * but defines a {@link before} and {@link after} for a proposed change.
10
+ */
11
+ export declare class PermissionEscalation implements ISerializable {
12
+ /**
13
+ * Parses a JSON object into a PermissionEscalation instance.
14
+ * @param json The JSON to parse.
15
+ * @returns A PermissionEscalation instance.
16
+ */
17
+ static fromJSON(json: JsonObject): PermissionEscalation;
18
+ /**
19
+ * Gets the direction of the escalation.
20
+ */
21
+ direction: PermissionEscalationType;
22
+ /**
23
+ * The {@link Company} that this permission targets.
24
+ * {@link Company.id}
25
+ */
26
+ company: ulong;
27
+ /**
28
+ * The type of permission.
29
+ */
30
+ kind: PermissionType;
31
+ /**
32
+ * Effective permission after the proposed change.
33
+ */
34
+ after: PermissionEscalationState;
35
+ /**
36
+ * Effective permission before the proposed change.
37
+ */
38
+ before: PermissionEscalationState;
39
+ constructor(direction: PermissionEscalationType, company: ulong, kind: PermissionType, levelAfter: PermissionLevel, labelsAfter?: codified[] | nothing, levelBefore?: PermissionLevel | nothing, labelsBefore?: codified[] | nothing);
40
+ toJSON(): JsonObject;
41
+ }
@@ -0,0 +1,19 @@
1
+ import { ISerializable } from "../../API/Interfaces/ISerializable";
2
+ import { codified, JsonObject, nothing } from "../../API/Types";
3
+ import { PermissionLevel } from "./PermissionLevel";
4
+ /**
5
+ * Describes the changes in state that raised the escalation.
6
+ */
7
+ export declare class PermissionEscalationState implements ISerializable {
8
+ /**
9
+ * The level of access defined before the proposed change.
10
+ */
11
+ level: PermissionLevel | null;
12
+ /**
13
+ * Codified names of {@link LabelStyle}s.
14
+ * If list is empty, this permission applies for all labels.
15
+ */
16
+ labels: codified[] | null;
17
+ constructor(level?: PermissionLevel | nothing, labels?: codified[] | nothing);
18
+ toJSON(): JsonObject;
19
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Definition for the kinds of permission escalations.
3
+ */
4
+ export declare enum PermissionEscalationType {
5
+ /**
6
+ * Increase in privileges.
7
+ */
8
+ vertical = "vertical",
9
+ /**
10
+ * Increase in access to an object.
11
+ */
12
+ horizontal = "horizontal"
13
+ }
@@ -0,0 +1,17 @@
1
+ /**
2
+ * The levels of permission available.
3
+ */
4
+ export declare enum PermissionLevel {
5
+ /**
6
+ * Read-only access, no changes allowed.
7
+ */
8
+ read = "read",
9
+ /**
10
+ * Read and write access, but things cannot be deleted or new things created.
11
+ */
12
+ update = "update",
13
+ /**
14
+ * Full control to read, write, delete and create things.
15
+ */
16
+ full = "full"
17
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * How a permission is applied.
3
+ */
4
+ export declare enum PermissionMethod {
5
+ /**
6
+ * Permission is given.
7
+ */
8
+ grant = "grant",
9
+ /**
10
+ * Permission is taken away.
11
+ */
12
+ revoke = "revoke"
13
+ }
@@ -0,0 +1,280 @@
1
+ /**
2
+ * The kinds of permissions available for a UserPermission.
3
+ */
4
+ export declare enum PermissionType {
5
+ /**
6
+ * Basic information about a {@link Company}.
7
+ * This permissions is required to have access to other aspects of the company.
8
+ * {@link Company}
9
+ * {@link CompanyGeneral}
10
+ */
11
+ companyGeneral = "companyGeneral",
12
+ /**
13
+ * Updating the company's {@link CompanyDirectory|directory} of {@link Contact}s. Not the same as {@link PermissionType.contact}.
14
+ * {@link CompanyDirectory}
15
+ */
16
+ companyDirectory = "companyDirectory",
17
+ /**
18
+ * Company's {@link CompanyStyles|label and tag styles}.
19
+ * {@link CompanyStyles}
20
+ */
21
+ companyLabels = "companyLabels",
22
+ /**
23
+ * Company's {@link SessionPolicy} and {@link PasswordPolicy}.
24
+ * {@link CompanyPolicies}
25
+ */
26
+ companyPolicies = "companyPolicies",
27
+ /**
28
+ * {@link CompanyReseller|White-labeler} specific settings.
29
+ * {@link CompanyReseller}
30
+ */
31
+ companyReseller = "companyReseller",
32
+ /**
33
+ * Access to add a new child {@link Company}.
34
+ * {@link CompanyGeneral}
35
+ */
36
+ companyCreate = "companyCreate",
37
+ /**
38
+ * Assets' {@link AssetGeneral|general properties} such as name = "* Assets' {@link AssetGeneral|general properties} such as name", icon, and labels.
39
+ * {@link Asset}
40
+ * {@link AssetGeneral}
41
+ * {@link Person}
42
+ * {@link PersonGeneral}
43
+ * {@link Vehicle}
44
+ * {@link VehicleGeneral}
45
+ * {@link Trailer}
46
+ * {@link TrailerGeneral}
47
+ */
48
+ assetGeneral = "assetGeneral",
49
+ /**
50
+ * Assets' {@link AssetAdvanced|advanced properties} such as position = "* Assets' {@link AssetAdvanced|advanced properties} such as position", attributes, and status tags.
51
+ * {@link AssetAdvanced}
52
+ * {@link VehicleAdvanced}
53
+ */
54
+ assetAdvanced = "assetAdvanced",
55
+ /**
56
+ * {@link AssetMessage}s from assets and {@link AssetAlert}s.
57
+ * {@link AssetMessage}
58
+ * {@link PndMessage}
59
+ */
60
+ assetMessage = "assetMessage",
61
+ /**
62
+ * {@link Asset}'s {@link DispatchTask} order = "* {@link Asset}'s {@link DispatchTask} order", turn by turn directions, and required route.
63
+ * {@link AssetDispatch}
64
+ */
65
+ assetDispatch = "assetDispatch",
66
+ /**
67
+ * {@link Place} information.
68
+ * {@link Place}
69
+ * {@link Place}
70
+ */
71
+ placeGeneral = "placeGeneral",
72
+ /**
73
+ * {@link Provider} information like name = "* {@link Provider} information like name", notes, and selected asset.
74
+ * {@link Provider}
75
+ * {@link ProviderGeneral}
76
+ */
77
+ providerGeneral = "providerGeneral",
78
+ /**
79
+ * Raw {@link Provider} data like GPS coordinates and parsed ODB-II values.
80
+ * {@link ProviderAdvanced}
81
+ */
82
+ providerAdvanced = "providerAdvanced",
83
+ /**
84
+ * Sending and reading {@link Provider} commands.
85
+ * {@link ProviderControl}
86
+ */
87
+ providerControl = "providerControl",
88
+ /**
89
+ * {@link Provider} configurations.
90
+ * {@link ProviderConfig}
91
+ * {@link ProviderConfiguration}
92
+ * {@link ProviderConfigurationType}
93
+ */
94
+ providerConfiguration = "providerConfiguration",
95
+ /**
96
+ * Legacy {@link Provider} configuration types.
97
+ * {@link ProviderConfigurationType}
98
+ * @deprecated Use {@link providerConfiguration} instead
99
+ */
100
+ providerConfigType = "providerConfigType",
101
+ /**
102
+ * Allows access to {@link Provider} logic scripts.
103
+ * {@link ProviderScript}
104
+ */
105
+ providerScript = "providerScript",
106
+ /**
107
+ * Sending and reading {@link Provider} commands.
108
+ * {@link ProviderCommand}
109
+ * @deprecated Use {@link providerControl} instead
110
+ */
111
+ providerCommand = "providerCommand",
112
+ /**
113
+ * Historical {@link Asset} details like breadcrumb trails.
114
+ * {@link ReportResult}
115
+ */
116
+ reportResult = "reportResult",
117
+ /**
118
+ * {@link ReportTemplate} configurations.
119
+ * {@link ReportTemplate}
120
+ */
121
+ reportTemplate = "reportTemplate",
122
+ /**
123
+ * {@link ReportSchedule}s used to automatically create {@link ReportResult}s overnight.
124
+ * {@link ReportSchedule}
125
+ */
126
+ reportSchedule = "reportSchedule",
127
+ /**
128
+ * General {@link UserGeneral|user information} such as name = "* General {@link UserGeneral|user information} such as name", contact information, and preferences.
129
+ * {@link UserGeneral}
130
+ */
131
+ userGeneral = "userGeneral",
132
+ /**
133
+ * {@link UserAdvanced|User information} such as permissions and group membership.
134
+ * {@link UserAdvanced}
135
+ */
136
+ userAdvanced = "userAdvanced",
137
+ /**
138
+ * {@link UserGroup} information for easy access control.
139
+ * {@link UserGroup}
140
+ */
141
+ userGroup = "userGroup",
142
+ /**
143
+ * {@link Machine} information and permissions.
144
+ * {@link Machine}
145
+ */
146
+ machine = "machine",
147
+ /**
148
+ * Access to retrieve a list of active sessions and kill sessions.
149
+ * {@link Tentacles.RespSession}
150
+ * {@link Tentacles.RespSessionFull}
151
+ */
152
+ session = "session",
153
+ /**
154
+ * Configured {@link Behaviour}.
155
+ * {@link Behaviour}
156
+ */
157
+ behaviour = "behaviour",
158
+ /**
159
+ * View and clear the log of debug messages for a {@link BehaviourScript} or {@link Behaviour}.
160
+ * {@link BehaviourLog}
161
+ */
162
+ behaviourLog = "behaviourLog",
163
+ /**
164
+ * {@link BehaviourScript} logic.
165
+ * {@link BehaviourScript}
166
+ */
167
+ behaviourScript = "behaviourScript",
168
+ /**
169
+ * {@link Asset}'s tasks information.
170
+ * {@link DispatchTask}
171
+ */
172
+ dispatchTask = "dispatchTask",
173
+ /**
174
+ * Pre-set routes = "* Pre-set routes", lists of {@link DispatchJob}s, and driving directions.
175
+ * {@link DispatchTemplate}
176
+ */
177
+ dispatchTemplate = "dispatchTemplate",
178
+ /**
179
+ * {@link Contact} information.
180
+ * {@link Contact}
181
+ */
182
+ contact = "contact",
183
+ /**
184
+ * Hours of Service {@link HosCarrier|Carrier}s.
185
+ * {@link HosCarrier}
186
+ * @deprecated Feature retired
187
+ */
188
+ hosCarrier = "hosCarrier",
189
+ /**
190
+ * Driver's {@link HosEvent|E-log event} records.
191
+ * {@link HosEvent}
192
+ * @deprecated Feature retired
193
+ */
194
+ hosEvent = "hosEvent",
195
+ /**
196
+ * Driver {@link HosInspection|vehicle inspection} reports.
197
+ * {@link HosInspection}
198
+ * @deprecated Feature retired
199
+ */
200
+ hosInspection = "hosInspection",
201
+ /**
202
+ * Historical {@link Vehicle} and {@link Trailer} maintenance work.
203
+ * {@link MaintenanceJob}
204
+ */
205
+ maintenanceJob = "maintenanceJob",
206
+ /**
207
+ * Recurring {@link MaintenanceJob}s for {@link Vehicle} and {@link Trailer}.
208
+ * {@link MaintenanceSchedule}
209
+ */
210
+ maintenanceSchedule = "maintenanceSchedule",
211
+ /**
212
+ * Rules definiting real-time analytic calculations.
213
+ * {@link AnalyticRule}
214
+ * @deprecated Feature retired
215
+ */
216
+ analyticRule = "analyticRule",
217
+ /**
218
+ * Updates to the calculations of real-time analytics.
219
+ * {@link AnalyticSummary}
220
+ * @deprecated Feature retired
221
+ */
222
+ analyticSummary = "analyticSummary",
223
+ /**
224
+ * {@link Icon} information.
225
+ * {@link Icon}
226
+ */
227
+ icon = "icon",
228
+ /**
229
+ * {@link Picture} information.
230
+ * {@link Picture}
231
+ */
232
+ picture = "picture",
233
+ /**
234
+ * Hosted {@link Document} information.
235
+ * {@link Document}
236
+ */
237
+ document = "document",
238
+ /**
239
+ * Profile used to generate {@link BillingReport} for a customer.
240
+ * {@link BillingProfile}
241
+ */
242
+ billingProfile = "billingProfile",
243
+ /**
244
+ * Billing rule for {@link Asset}s.
245
+ * {@link BillableHostingRule}
246
+ */
247
+ billingHosting = "billingHosting",
248
+ /**
249
+ * Discount rule for {@link Asset}s.
250
+ * {@link BillableHostingDiscount}
251
+ * @deprecated Feature retired
252
+ */
253
+ billingDiscount = "billingDiscount",
254
+ /**
255
+ * Hardware License for {@link Provider}s.
256
+ * {@link BillableHostingLicense}
257
+ */
258
+ billingLicense = "billingLicense",
259
+ /**
260
+ * Generated bill for a {@link Company|customer}.
261
+ * {@link BillingReport}
262
+ */
263
+ billingReport = "billingReport",
264
+ /**
265
+ * Custom {@link FormTemplate|forms} to be filled.
266
+ * {@link FormTemplate}
267
+ */
268
+ formTemplate = "formTemplate",
269
+ /**
270
+ * Filled out {@link FormResult|forms}.
271
+ * {@link FormResult}
272
+ */
273
+ formResult = "formResult",
274
+ /**
275
+ * Some work that needs to be completed by an {@link Asset}.
276
+ * Like a multi-step {@link DispatchTask}.
277
+ * {@link DispatchJob}
278
+ */
279
+ dispatchJob = "dispatchJob"
280
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Supported SSO Identity Providers.
3
+ */
4
+ export declare enum SSOIdentityProvider {
5
+ /**
6
+ * Google Identity Provider.
7
+ */
8
+ google = "google",
9
+ /**
10
+ * Apple Identity Provider.
11
+ */
12
+ apple = "apple",
13
+ /**
14
+ * Facebook Identity Provider.
15
+ */
16
+ facebook = "facebook",
17
+ /**
18
+ * X Identity Provider, formerly known as Twitter.
19
+ */
20
+ twitter = "twitter",
21
+ /**
22
+ * Microsoft Identity Provider.
23
+ */
24
+ microsoft = "microsoft"
25
+ }