connectwise-rest 1.0.0 → 1.1.0

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 (219) hide show
  1. package/.eslintrc +23 -26
  2. package/README.md +67 -16
  3. package/api-extractor.json +364 -364
  4. package/dist/Automate/AVTemplatePoliciesAPI.d.ts +10 -1
  5. package/dist/Automate/AVTemplatePoliciesAPI.d.ts.map +1 -1
  6. package/dist/Automate/AVTemplatePoliciesAPI.js +6 -1
  7. package/dist/Automate/AVTemplatePoliciesAPI.js.map +1 -1
  8. package/dist/Automate/ClientsAPI.d.ts +11 -1
  9. package/dist/Automate/ClientsAPI.d.ts.map +1 -1
  10. package/dist/Automate/ClientsAPI.js +6 -1
  11. package/dist/Automate/ClientsAPI.js.map +1 -1
  12. package/dist/Automate/CommandsAPI.d.ts +6 -1
  13. package/dist/Automate/CommandsAPI.d.ts.map +1 -1
  14. package/dist/Automate/CommandsAPI.js +6 -1
  15. package/dist/Automate/CommandsAPI.js.map +1 -1
  16. package/dist/Automate/ComputersAPI.d.ts +38 -1
  17. package/dist/Automate/ComputersAPI.d.ts.map +1 -1
  18. package/dist/Automate/ComputersAPI.js +6 -1
  19. package/dist/Automate/ComputersAPI.js.map +1 -1
  20. package/dist/Automate/ContactsAPI.d.ts +7 -1
  21. package/dist/Automate/ContactsAPI.d.ts.map +1 -1
  22. package/dist/Automate/ContactsAPI.js +6 -1
  23. package/dist/Automate/ContactsAPI.js.map +1 -1
  24. package/dist/Automate/DataViewsAPI.d.ts +7 -1
  25. package/dist/Automate/DataViewsAPI.d.ts.map +1 -1
  26. package/dist/Automate/DataViewsAPI.js +6 -1
  27. package/dist/Automate/DataViewsAPI.js.map +1 -1
  28. package/dist/Automate/DrivesAPI.d.ts +7 -1
  29. package/dist/Automate/DrivesAPI.d.ts.map +1 -1
  30. package/dist/Automate/DrivesAPI.js +6 -1
  31. package/dist/Automate/DrivesAPI.js.map +1 -1
  32. package/dist/Automate/EventLogsAPI.d.ts +6 -1
  33. package/dist/Automate/EventLogsAPI.d.ts.map +1 -1
  34. package/dist/Automate/EventLogsAPI.js +6 -1
  35. package/dist/Automate/EventLogsAPI.js.map +1 -1
  36. package/dist/Automate/LocationsAPI.d.ts +16 -1
  37. package/dist/Automate/LocationsAPI.d.ts.map +1 -1
  38. package/dist/Automate/LocationsAPI.js +6 -1
  39. package/dist/Automate/LocationsAPI.js.map +1 -1
  40. package/dist/Automate/MaintenanceWindowDefinitionsAPI.d.ts +6 -1
  41. package/dist/Automate/MaintenanceWindowDefinitionsAPI.d.ts.map +1 -1
  42. package/dist/Automate/MaintenanceWindowDefinitionsAPI.js +6 -1
  43. package/dist/Automate/MaintenanceWindowDefinitionsAPI.js.map +1 -1
  44. package/dist/Automate/MonitorsAPI.d.ts +7 -1
  45. package/dist/Automate/MonitorsAPI.d.ts.map +1 -1
  46. package/dist/Automate/MonitorsAPI.js +6 -1
  47. package/dist/Automate/MonitorsAPI.js.map +1 -1
  48. package/dist/Automate/NetworkDevicesAPI.d.ts +7 -1
  49. package/dist/Automate/NetworkDevicesAPI.d.ts.map +1 -1
  50. package/dist/Automate/NetworkDevicesAPI.js +6 -1
  51. package/dist/Automate/NetworkDevicesAPI.js.map +1 -1
  52. package/dist/Automate/PatchingAPI.d.ts +7 -1
  53. package/dist/Automate/PatchingAPI.d.ts.map +1 -1
  54. package/dist/Automate/PatchingAPI.js +6 -1
  55. package/dist/Automate/PatchingAPI.js.map +1 -1
  56. package/dist/Automate/RemoteAgentAPI.d.ts +7 -1
  57. package/dist/Automate/RemoteAgentAPI.d.ts.map +1 -1
  58. package/dist/Automate/RemoteAgentAPI.js +6 -1
  59. package/dist/Automate/RemoteAgentAPI.js.map +1 -1
  60. package/dist/Automate/ScriptingAPI.d.ts +10 -1
  61. package/dist/Automate/ScriptingAPI.d.ts.map +1 -1
  62. package/dist/Automate/ScriptingAPI.js +6 -1
  63. package/dist/Automate/ScriptingAPI.js.map +1 -1
  64. package/dist/Automate/SearchesAPI.d.ts +7 -1
  65. package/dist/Automate/SearchesAPI.d.ts.map +1 -1
  66. package/dist/Automate/SearchesAPI.js +6 -1
  67. package/dist/Automate/SearchesAPI.js.map +1 -1
  68. package/dist/Automate/SystemAPI.d.ts +28 -3
  69. package/dist/Automate/SystemAPI.d.ts.map +1 -1
  70. package/dist/Automate/SystemAPI.js +8 -3
  71. package/dist/Automate/SystemAPI.js.map +1 -1
  72. package/dist/Automate/TicketsAPI.d.ts +5 -1
  73. package/dist/Automate/TicketsAPI.d.ts.map +1 -1
  74. package/dist/Automate/TicketsAPI.js +6 -1
  75. package/dist/Automate/TicketsAPI.js.map +1 -1
  76. package/dist/Automate/UserProfilesAPI.d.ts +6 -1
  77. package/dist/Automate/UserProfilesAPI.d.ts.map +1 -1
  78. package/dist/Automate/UserProfilesAPI.js +6 -1
  79. package/dist/Automate/UserProfilesAPI.js.map +1 -1
  80. package/dist/Automate.d.ts +13 -5
  81. package/dist/Automate.d.ts.map +1 -1
  82. package/dist/Automate.js +20 -5
  83. package/dist/Automate.js.map +1 -1
  84. package/dist/AutomateAPI.d.ts +55 -22
  85. package/dist/AutomateAPI.d.ts.map +1 -1
  86. package/dist/AutomateAPI.js +46 -39
  87. package/dist/AutomateAPI.js.map +1 -1
  88. package/dist/BaseAPI.d.ts +13 -0
  89. package/dist/BaseAPI.d.ts.map +1 -1
  90. package/dist/BaseAPI.js +68 -1
  91. package/dist/BaseAPI.js.map +1 -1
  92. package/dist/Manage/CompanyAPI.d.ts +90 -1
  93. package/dist/Manage/CompanyAPI.d.ts.map +1 -1
  94. package/dist/Manage/CompanyAPI.js +6 -1
  95. package/dist/Manage/CompanyAPI.js.map +1 -1
  96. package/dist/Manage/ConfigurationsAPI.d.ts +9 -1
  97. package/dist/Manage/ConfigurationsAPI.d.ts.map +1 -1
  98. package/dist/Manage/ConfigurationsAPI.js +6 -1
  99. package/dist/Manage/ConfigurationsAPI.js.map +1 -1
  100. package/dist/Manage/ExpenseAPI.d.ts +18 -1
  101. package/dist/Manage/ExpenseAPI.d.ts.map +1 -1
  102. package/dist/Manage/ExpenseAPI.js +6 -1
  103. package/dist/Manage/ExpenseAPI.js.map +1 -1
  104. package/dist/Manage/FinanceAPI.d.ts +79 -1
  105. package/dist/Manage/FinanceAPI.d.ts.map +1 -1
  106. package/dist/Manage/FinanceAPI.js +6 -1
  107. package/dist/Manage/FinanceAPI.js.map +1 -1
  108. package/dist/Manage/MarketingAPI.d.ts +23 -1
  109. package/dist/Manage/MarketingAPI.d.ts.map +1 -1
  110. package/dist/Manage/MarketingAPI.js +6 -1
  111. package/dist/Manage/MarketingAPI.js.map +1 -1
  112. package/dist/Manage/ProcurementAPI.d.ts +63 -1
  113. package/dist/Manage/ProcurementAPI.d.ts.map +1 -1
  114. package/dist/Manage/ProcurementAPI.js +6 -1
  115. package/dist/Manage/ProcurementAPI.js.map +1 -1
  116. package/dist/Manage/ProjectAPI.d.ts +37 -1
  117. package/dist/Manage/ProjectAPI.d.ts.map +1 -1
  118. package/dist/Manage/ProjectAPI.js +6 -1
  119. package/dist/Manage/ProjectAPI.js.map +1 -1
  120. package/dist/Manage/SalesAPI.d.ts +46 -1
  121. package/dist/Manage/SalesAPI.d.ts.map +1 -1
  122. package/dist/Manage/SalesAPI.js +6 -1
  123. package/dist/Manage/SalesAPI.js.map +1 -1
  124. package/dist/Manage/ScheduleAPI.d.ts +22 -1
  125. package/dist/Manage/ScheduleAPI.d.ts.map +1 -1
  126. package/dist/Manage/ScheduleAPI.js +6 -1
  127. package/dist/Manage/ScheduleAPI.js.map +1 -1
  128. package/dist/Manage/ServiceAPI.d.ts +75 -1
  129. package/dist/Manage/ServiceAPI.d.ts.map +1 -1
  130. package/dist/Manage/ServiceAPI.js +6 -1
  131. package/dist/Manage/ServiceAPI.js.map +1 -1
  132. package/dist/Manage/SystemAPI.d.ts +146 -1
  133. package/dist/Manage/SystemAPI.d.ts.map +1 -1
  134. package/dist/Manage/SystemAPI.js +6 -1
  135. package/dist/Manage/SystemAPI.js.map +1 -1
  136. package/dist/Manage/TimeAPI.d.ts +30 -1
  137. package/dist/Manage/TimeAPI.d.ts.map +1 -1
  138. package/dist/Manage/TimeAPI.js +6 -1
  139. package/dist/Manage/TimeAPI.js.map +1 -1
  140. package/dist/Manage.d.ts +13 -0
  141. package/dist/Manage.d.ts.map +1 -1
  142. package/dist/Manage.js +20 -2
  143. package/dist/Manage.js.map +1 -1
  144. package/dist/ManageAPI.d.ts +51 -15
  145. package/dist/ManageAPI.d.ts.map +1 -1
  146. package/dist/ManageAPI.js +27 -24
  147. package/dist/ManageAPI.js.map +1 -1
  148. package/dist/connectwise-rest.d.ts +108638 -0
  149. package/dist/index.d.ts +6 -3
  150. package/dist/index.d.ts.map +1 -1
  151. package/dist/index.js +0 -2
  152. package/dist/index.js.map +1 -1
  153. package/dist/tsdoc-metadata.json +11 -0
  154. package/dist/types.d.ts +4 -2
  155. package/dist/types.d.ts.map +1 -1
  156. package/dist/types.js.map +1 -1
  157. package/dist/utils/Callback.d.ts +3 -0
  158. package/dist/utils/Callback.d.ts.map +1 -1
  159. package/dist/utils/Callback.js.map +1 -1
  160. package/dist/utils/Series.d.ts +6 -0
  161. package/dist/utils/Series.d.ts.map +1 -1
  162. package/dist/utils/Series.js +6 -2
  163. package/dist/utils/Series.js.map +1 -1
  164. package/package.json +6 -3
  165. package/src/Automate/AVTemplatePoliciesAPI.ts +11 -1
  166. package/src/Automate/ClientsAPI.ts +12 -1
  167. package/src/Automate/CommandsAPI.ts +7 -1
  168. package/src/Automate/ComputersAPI.ts +39 -1
  169. package/src/Automate/ContactsAPI.ts +8 -1
  170. package/src/Automate/DataViewsAPI.ts +8 -1
  171. package/src/Automate/DrivesAPI.ts +8 -1
  172. package/src/Automate/EventLogsAPI.ts +7 -1
  173. package/src/Automate/LocationsAPI.ts +17 -1
  174. package/src/Automate/MaintenanceWindowDefinitionsAPI.ts +7 -1
  175. package/src/Automate/MonitorsAPI.ts +8 -1
  176. package/src/Automate/NetworkDevicesAPI.ts +8 -1
  177. package/src/Automate/PatchingAPI.ts +8 -1
  178. package/src/Automate/RemoteAgentAPI.ts +8 -1
  179. package/src/Automate/ScriptingAPI.ts +11 -1
  180. package/src/Automate/SearchesAPI.ts +8 -1
  181. package/src/Automate/SystemAPI.ts +29 -3
  182. package/src/Automate/TicketsAPI.ts +6 -1
  183. package/src/Automate/UserProfilesAPI.ts +7 -1
  184. package/src/Automate.ts +21 -15
  185. package/src/AutomateAPI.ts +77 -43
  186. package/src/AutomateTypes.ts +1 -1
  187. package/src/BaseAPI.ts +101 -0
  188. package/src/Manage/CompanyAPI.ts +91 -1
  189. package/src/Manage/ConfigurationsAPI.ts +10 -1
  190. package/src/Manage/ExpenseAPI.ts +19 -1
  191. package/src/Manage/FinanceAPI.ts +80 -1
  192. package/src/Manage/MarketingAPI.ts +24 -1
  193. package/src/Manage/ProcurementAPI.ts +64 -1
  194. package/src/Manage/ProjectAPI.ts +38 -1
  195. package/src/Manage/SalesAPI.ts +47 -1
  196. package/src/Manage/ScheduleAPI.ts +23 -1
  197. package/src/Manage/ServiceAPI.ts +76 -1
  198. package/src/Manage/SystemAPI.ts +147 -1
  199. package/src/Manage/TimeAPI.ts +31 -1
  200. package/src/Manage.ts +22 -3
  201. package/src/ManageAPI.ts +66 -29
  202. package/src/index.ts +6 -11
  203. package/src/types.ts +4 -2
  204. package/src/utils/Callback.ts +3 -0
  205. package/src/utils/Series.ts +6 -0
  206. package/swagger-errors.md +25 -30
  207. package/test/test-utils.js +19 -0
  208. package/test/{test.ts → test.js} +63 -38
  209. package/test/{test-utils.ts → ts-test-utils.ts} +0 -0
  210. package/.github/workflows/codeql-analysis.yml +0 -70
  211. package/.github/workflows/node.js.yml +0 -42
  212. package/.travis.yml +0 -11
  213. package/generator/automate-generator.js +0 -75
  214. package/generator/automate-json.js +0 -61
  215. package/generator/automate-types.js +0 -15
  216. package/generator/generator.d.ts +0 -67
  217. package/generator/generator.js +0 -255
  218. package/generator/manage-generator.js +0 -71
  219. package/generator/manage-types.js +0 -14
@@ -5,152 +5,298 @@ import { CommonParameters, CWMOptions } from '../ManageAPI'
5
5
  import { NoContentResponse, OctetStreamResponse, PDFResponse, HTMLResponse } from '../types'
6
6
  type schemas = components['schemas']
7
7
 
8
+ /** {@link AllowedFileType} */
8
9
  export type AllowedFileType = schemas['AllowedFileType']
10
+ /** {@link AllowedOrigin} */
9
11
  export type AllowedOrigin = schemas['AllowedOrigin']
12
+ /** {@link ApiMember} */
10
13
  export type ApiMember = schemas['ApiMember']
14
+ /** {@link AuditTrailEntry} */
11
15
  export type AuditTrailEntry = schemas['AuditTrailEntry']
16
+ /** {@link AuthAnvil} */
12
17
  export type AuthAnvil = schemas['AuthAnvil']
18
+ /** {@link AutoSyncTime} */
13
19
  export type AutoSyncTime = schemas['AutoSyncTime']
20
+ /** {@link BulkResult} */
14
21
  export type BulkResult = schemas['BulkResult']
22
+ /** {@link BundleRequestsCollection} */
15
23
  export type BundleRequestsCollection = schemas['BundleRequestsCollection']
24
+ /** {@link BundleResultsCollection} */
16
25
  export type BundleResultsCollection = schemas['BundleResultsCollection']
26
+ /** {@link CallbackEntry} */
17
27
  export type CallbackEntry = schemas['CallbackEntry']
28
+ /** {@link Certification} */
18
29
  export type Certification = schemas['Certification']
30
+ /** {@link ConnectWiseHostedScreen} */
19
31
  export type ConnectWiseHostedScreen = schemas['ConnectWiseHostedScreen']
32
+ /** {@link ConnectWiseHostedSetup} */
20
33
  export type ConnectWiseHostedSetup = schemas['ConnectWiseHostedSetup']
34
+ /** {@link CorporateStructure} */
21
35
  export type CorporateStructure = schemas['CorporateStructure']
36
+ /** {@link CorporateStructureInfo} */
22
37
  export type CorporateStructureInfo = schemas['CorporateStructureInfo']
38
+ /** {@link CorporateStructureLevel} */
23
39
  export type CorporateStructureLevel = schemas['CorporateStructureLevel']
40
+ /** {@link Count} */
24
41
  export type Count = schemas['Count']
42
+ /** {@link Crm} */
25
43
  export type Crm = schemas['Crm']
44
+ /** {@link CrmInfo} */
26
45
  export type CrmInfo = schemas['CrmInfo']
46
+ /** {@link CustomReport} */
27
47
  export type CustomReport = schemas['CustomReport']
48
+ /** {@link CustomReportParameter} */
28
49
  export type CustomReportParameter = schemas['CustomReportParameter']
50
+ /** {@link CwTimeZone} */
29
51
  export type CwTimeZone = schemas['CwTimeZone']
52
+ /** {@link Department} */
30
53
  export type Department = schemas['Department']
54
+ /** {@link DepartmentInfo} */
31
55
  export type DepartmentInfo = schemas['DepartmentInfo']
56
+ /** {@link DepartmentLocation} */
32
57
  export type DepartmentLocation = schemas['DepartmentLocation']
58
+ /** {@link DepartmentLocationInfo} */
33
59
  export type DepartmentLocationInfo = schemas['DepartmentLocationInfo']
60
+ /** {@link DocumentFormData} */
34
61
  export type DocumentFormData = schemas['DocumentFormData']
62
+ /** {@link DocumentInfo} */
35
63
  export type DocumentInfo = schemas['DocumentInfo']
64
+ /** {@link DocumentSetup} */
36
65
  export type DocumentSetup = schemas['DocumentSetup']
66
+ /** {@link EPayConfiguration} */
37
67
  export type EPayConfiguration = schemas['EPayConfiguration']
68
+ /** {@link EmailConnector} */
38
69
  export type EmailConnector = schemas['EmailConnector']
70
+ /** {@link EmailConnectorInfo} */
39
71
  export type EmailConnectorInfo = schemas['EmailConnectorInfo']
72
+ /** {@link EmailConnectorParsingRule} */
40
73
  export type EmailConnectorParsingRule = schemas['EmailConnectorParsingRule']
74
+ /** {@link EmailConnectorParsingStyle} */
41
75
  export type EmailConnectorParsingStyle = schemas['EmailConnectorParsingStyle']
76
+ /** {@link EmailExclusion} */
42
77
  export type EmailExclusion = schemas['EmailExclusion']
78
+ /** {@link EmailToken} */
43
79
  export type EmailToken = schemas['EmailToken']
80
+ /** {@link Experiment} */
44
81
  export type Experiment = schemas['Experiment']
82
+ /** {@link FileUploadSetting} */
45
83
  export type FileUploadSetting = schemas['FileUploadSetting']
84
+ /** {@link GoogleEmailSetup} */
46
85
  export type GoogleEmailSetup = schemas['GoogleEmailSetup']
86
+ /** {@link IdCollection} */
47
87
  export type IdCollection = schemas['IdCollection']
88
+ /** {@link Imap} */
48
89
  export type Imap = schemas['Imap']
90
+ /** {@link ImapInfo} */
49
91
  export type ImapInfo = schemas['ImapInfo']
92
+ /** {@link ImportMassMaintenance} */
50
93
  export type ImportMassMaintenance = schemas['ImportMassMaintenance']
94
+ /** {@link InOutBoard} */
51
95
  export type InOutBoard = schemas['InOutBoard']
96
+ /** {@link InOutType} */
52
97
  export type InOutType = schemas['InOutType']
98
+ /** {@link InOutTypeInfo} */
53
99
  export type InOutTypeInfo = schemas['InOutTypeInfo']
100
+ /** {@link Info} */
54
101
  export type Info = schemas['Info']
102
+ /** {@link IntegratorLogin} */
55
103
  export type IntegratorLogin = schemas['IntegratorLogin']
104
+ /** {@link IntegratorTag} */
56
105
  export type IntegratorTag = schemas['IntegratorTag']
106
+ /** {@link KPI} */
57
107
  export type KPI = schemas['KPI']
108
+ /** {@link KPICategory} */
58
109
  export type KPICategory = schemas['KPICategory']
110
+ /** {@link LdapConfiguration} */
59
111
  export type LdapConfiguration = schemas['LdapConfiguration']
112
+ /** {@link LdapConfigurationInfo} */
60
113
  export type LdapConfigurationInfo = schemas['LdapConfigurationInfo']
114
+ /** {@link LdapConfigurationTestLink} */
61
115
  export type LdapConfigurationTestLink = schemas['LdapConfigurationTestLink']
116
+ /** {@link Link} */
62
117
  export type Link = schemas['Link']
118
+ /** {@link LinkInfo} */
63
119
  export type LinkInfo = schemas['LinkInfo']
120
+ /** {@link LinkResolveUrlInfo} */
64
121
  export type LinkResolveUrlInfo = schemas['LinkResolveUrlInfo']
122
+ /** {@link LocaleInfo} */
65
123
  export type LocaleInfo = schemas['LocaleInfo']
124
+ /** {@link Location} */
66
125
  export type Location = schemas['Location']
126
+ /** {@link LocationDepartment} */
67
127
  export type LocationDepartment = schemas['LocationDepartment']
128
+ /** {@link LocationInfo} */
68
129
  export type LocationInfo = schemas['LocationInfo']
130
+ /** {@link LocationWorkRole} */
69
131
  export type LocationWorkRole = schemas['LocationWorkRole']
132
+ /** {@link ManagedDeviceAccount} */
70
133
  export type ManagedDeviceAccount = schemas['ManagedDeviceAccount']
134
+ /** {@link ManagementNetworkSecurity} */
71
135
  export type ManagementNetworkSecurity = schemas['ManagementNetworkSecurity']
136
+ /** {@link MarketplaceImport} */
72
137
  export type MarketplaceImport = schemas['MarketplaceImport']
138
+ /** {@link Member} */
73
139
  export type Member = schemas['Member']
140
+ /** {@link MemberAccrual} */
74
141
  export type MemberAccrual = schemas['MemberAccrual']
142
+ /** {@link MemberCertification} */
75
143
  export type MemberCertification = schemas['MemberCertification']
144
+ /** {@link MemberDeactivation} */
76
145
  export type MemberDeactivation = schemas['MemberDeactivation']
146
+ /** {@link MemberDelegation} */
77
147
  export type MemberDelegation = schemas['MemberDelegation']
148
+ /** {@link MemberInfo} */
78
149
  export type MemberInfo = schemas['MemberInfo']
150
+ /** {@link MemberLinkSsoUser} */
79
151
  export type MemberLinkSsoUser = schemas['MemberLinkSsoUser']
152
+ /** {@link MemberNotificationSetting} */
80
153
  export type MemberNotificationSetting = schemas['MemberNotificationSetting']
154
+ /** {@link MemberPersona} */
81
155
  export type MemberPersona = schemas['MemberPersona']
156
+ /** {@link MemberSkill} */
82
157
  export type MemberSkill = schemas['MemberSkill']
158
+ /** {@link MemberSsoToken} */
83
159
  export type MemberSsoToken = schemas['MemberSsoToken']
160
+ /** {@link MemberType} */
84
161
  export type MemberType = schemas['MemberType']
162
+ /** {@link MemberTypeInfo} */
85
163
  export type MemberTypeInfo = schemas['MemberTypeInfo']
164
+ /** {@link MenuEntry} */
86
165
  export type MenuEntry = schemas['MenuEntry']
166
+ /** {@link MenuEntryLocation} */
87
167
  export type MenuEntryLocation = schemas['MenuEntryLocation']
168
+ /** {@link MyAccount} */
88
169
  export type MyAccount = schemas['MyAccount']
170
+ /** {@link MyMember} */
89
171
  export type MyMember = schemas['MyMember']
172
+ /** {@link MyMemberInfo} */
90
173
  export type MyMemberInfo = schemas['MyMemberInfo']
174
+ /** {@link MySecurity} */
91
175
  export type MySecurity = schemas['MySecurity']
176
+ /** {@link MySecurityCustomizeItem} */
92
177
  export type MySecurityCustomizeItem = schemas['MySecurityCustomizeItem']
178
+ /** {@link NotificationRecipient} */
93
179
  export type NotificationRecipient = schemas['NotificationRecipient']
180
+ /** {@link Office365EmailSetup} */
94
181
  export type Office365EmailSetup = schemas['Office365EmailSetup']
182
+ /** {@link OsGradeWeight} */
95
183
  export type OsGradeWeight = schemas['OsGradeWeight']
184
+ /** {@link Other} */
96
185
  export type Other = schemas['Other']
186
+ /** {@link ParsingType} */
97
187
  export type ParsingType = schemas['ParsingType']
188
+ /** {@link ParsingVariable} */
98
189
  export type ParsingVariable = schemas['ParsingVariable']
190
+ /** {@link PatchOperation} */
99
191
  export type PatchOperation = schemas['PatchOperation']
192
+ /** {@link PersonasInfo} */
100
193
  export type PersonasInfo = schemas['PersonasInfo']
194
+ /** {@link PortalReport} */
101
195
  export type PortalReport = schemas['PortalReport']
196
+ /** {@link QuoteLink} */
102
197
  export type QuoteLink = schemas['QuoteLink']
198
+ /** {@link Report} */
103
199
  export type Report = schemas['Report']
200
+ /** {@link ReportCard} */
104
201
  export type ReportCard = schemas['ReportCard']
202
+ /** {@link ReportCardDetail} */
105
203
  export type ReportCardDetail = schemas['ReportCardDetail']
204
+ /** {@link ReportCardInfo} */
106
205
  export type ReportCardInfo = schemas['ReportCardInfo']
206
+ /** {@link ReportColumnDefinition} */
107
207
  export type ReportColumnDefinition = schemas['ReportColumnDefinition']
208
+ /** {@link ReportDataResponse} */
108
209
  export type ReportDataResponse = schemas['ReportDataResponse']
210
+ /** {@link ReportingService} */
109
211
  export type ReportingService = schemas['ReportingService']
212
+ /** {@link SecurityRole} */
110
213
  export type SecurityRole = schemas['SecurityRole']
214
+ /** {@link SecurityRoleInfo} */
111
215
  export type SecurityRoleInfo = schemas['SecurityRoleInfo']
216
+ /** {@link SecurityRoleSetting} */
112
217
  export type SecurityRoleSetting = schemas['SecurityRoleSetting']
218
+ /** {@link Service} */
113
219
  export type Service = schemas['Service']
220
+ /** {@link ServiceInfo} */
114
221
  export type ServiceInfo = schemas['ServiceInfo']
222
+ /** {@link SetupScreen} */
115
223
  export type SetupScreen = schemas['SetupScreen']
224
+ /** {@link Skill} */
116
225
  export type Skill = schemas['Skill']
226
+ /** {@link SkillCategory} */
117
227
  export type SkillCategory = schemas['SkillCategory']
228
+ /** {@link SkillInfo} */
118
229
  export type SkillInfo = schemas['SkillInfo']
230
+ /** {@link SsoConfiguration} */
119
231
  export type SsoConfiguration = schemas['SsoConfiguration']
232
+ /** {@link SsoUser} */
120
233
  export type SsoUser = schemas['SsoUser']
234
+ /** {@link StandardNote} */
121
235
  export type StandardNote = schemas['StandardNote']
236
+ /** {@link StandardNoteInfo} */
122
237
  export type StandardNoteInfo = schemas['StandardNoteInfo']
238
+ /** {@link SuccessResponse} */
123
239
  export type SuccessResponse = schemas['SuccessResponse']
240
+ /** {@link Survey} */
124
241
  export type Survey = schemas['Survey']
242
+ /** {@link SurveyInfo} */
125
243
  export type SurveyInfo = schemas['SurveyInfo']
244
+ /** {@link SurveyQuestion} */
126
245
  export type SurveyQuestion = schemas['SurveyQuestion']
246
+ /** {@link SurveyQuestionValue} */
127
247
  export type SurveyQuestionValue = schemas['SurveyQuestionValue']
248
+ /** {@link SystemSetting} */
128
249
  export type SystemSetting = schemas['SystemSetting']
250
+ /** {@link TimeExpense} */
129
251
  export type TimeExpense = schemas['TimeExpense']
252
+ /** {@link TimeZoneSetup} */
130
253
  export type TimeZoneSetup = schemas['TimeZoneSetup']
254
+ /** {@link TimeZoneSetupInfo} */
131
255
  export type TimeZoneSetupInfo = schemas['TimeZoneSetupInfo']
256
+ /** {@link TodayPageCategory} */
132
257
  export type TodayPageCategory = schemas['TodayPageCategory']
258
+ /** {@link Token} */
133
259
  export type Token = schemas['Token']
260
+ /** {@link Usage} */
134
261
  export type Usage = schemas['Usage']
262
+ /** {@link UserDefinedField} */
135
263
  export type UserDefinedField = schemas['UserDefinedField']
264
+ /** {@link UserDefinedFieldInfo} */
136
265
  export type UserDefinedFieldInfo = schemas['UserDefinedFieldInfo']
266
+ /** {@link Workflow} */
137
267
  export type Workflow = schemas['Workflow']
268
+ /** {@link WorkflowAction} */
138
269
  export type WorkflowAction = schemas['WorkflowAction']
270
+ /** {@link WorkflowActionAutomateParameter} */
139
271
  export type WorkflowActionAutomateParameter = schemas['WorkflowActionAutomateParameter']
272
+ /** {@link WorkflowActionUserDefinedField} */
140
273
  export type WorkflowActionUserDefinedField = schemas['WorkflowActionUserDefinedField']
274
+ /** {@link WorkflowAttachment} */
141
275
  export type WorkflowAttachment = schemas['WorkflowAttachment']
276
+ /** {@link WorkflowEvent} */
142
277
  export type WorkflowEvent = schemas['WorkflowEvent']
278
+ /** {@link WorkflowNotifyType} */
143
279
  export type WorkflowNotifyType = schemas['WorkflowNotifyType']
280
+ /** {@link WorkflowNotifyTypeInfo} */
144
281
  export type WorkflowNotifyTypeInfo = schemas['WorkflowNotifyTypeInfo']
282
+ /** {@link WorkflowTableType} */
145
283
  export type WorkflowTableType = schemas['WorkflowTableType']
284
+ /** {@link WorkflowTableTypeInfo} */
146
285
  export type WorkflowTableTypeInfo = schemas['WorkflowTableTypeInfo']
286
+ /** {@link WorkflowTrigger} */
147
287
  export type WorkflowTrigger = schemas['WorkflowTrigger']
288
+ /** {@link WorkflowTriggerOption} */
148
289
  export type WorkflowTriggerOption = schemas['WorkflowTriggerOption']
149
290
 
150
291
  /**
292
+ * @module SystemAPI
293
+ */
294
+
295
+ /**
296
+ * System module
151
297
  * @public
152
298
  */
153
- export default class SystemAPI extends Manage {
299
+ export class SystemAPI extends Manage {
154
300
  constructor(props: CWMOptions) {
155
301
  super(props)
156
302
  }
@@ -5,36 +5,66 @@ import { CommonParameters, CWMOptions } from '../ManageAPI'
5
5
  import { NoContentResponse, OctetStreamResponse, PDFResponse, HTMLResponse } from '../types'
6
6
  type schemas = components['schemas']
7
7
 
8
+ /** {@link ActivityStopwatch} */
8
9
  export type ActivityStopwatch = schemas['ActivityStopwatch']
10
+ /** {@link ChargeCode} */
9
11
  export type ChargeCode = schemas['ChargeCode']
12
+ /** {@link ChargeCodeExpenseType} */
10
13
  export type ChargeCodeExpenseType = schemas['ChargeCodeExpenseType']
14
+ /** {@link ChargeCodeInfo} */
11
15
  export type ChargeCodeInfo = schemas['ChargeCodeInfo']
16
+ /** {@link Count} */
12
17
  export type Count = schemas['Count']
18
+ /** {@link PatchOperation} */
13
19
  export type PatchOperation = schemas['PatchOperation']
20
+ /** {@link ScheduleStopwatch} */
14
21
  export type ScheduleStopwatch = schemas['ScheduleStopwatch']
22
+ /** {@link SuccessResponse} */
15
23
  export type SuccessResponse = schemas['SuccessResponse']
24
+ /** {@link TicketStopwatch} */
16
25
  export type TicketStopwatch = schemas['TicketStopwatch']
26
+ /** {@link TimeAccrual} */
17
27
  export type TimeAccrual = schemas['TimeAccrual']
28
+ /** {@link TimeAccrualDetail} */
18
29
  export type TimeAccrualDetail = schemas['TimeAccrualDetail']
30
+ /** {@link TimeEntry} */
19
31
  export type TimeEntry = schemas['TimeEntry']
32
+ /** {@link TimeEntryAudit} */
20
33
  export type TimeEntryAudit = schemas['TimeEntryAudit']
34
+ /** {@link TimePeriod} */
21
35
  export type TimePeriod = schemas['TimePeriod']
36
+ /** {@link TimePeriodSetup} */
22
37
  export type TimePeriodSetup = schemas['TimePeriodSetup']
38
+ /** {@link TimePeriodSetupDefaults} */
23
39
  export type TimePeriodSetupDefaults = schemas['TimePeriodSetupDefaults']
40
+ /** {@link TimeSheet} */
24
41
  export type TimeSheet = schemas['TimeSheet']
42
+ /** {@link TimeSheetAudit} */
25
43
  export type TimeSheetAudit = schemas['TimeSheetAudit']
44
+ /** {@link TimeSheetTierUpdate} */
26
45
  export type TimeSheetTierUpdate = schemas['TimeSheetTierUpdate']
46
+ /** {@link Usage} */
27
47
  export type Usage = schemas['Usage']
48
+ /** {@link WorkRole} */
28
49
  export type WorkRole = schemas['WorkRole']
50
+ /** {@link WorkRoleInfo} */
29
51
  export type WorkRoleInfo = schemas['WorkRoleInfo']
52
+ /** {@link WorkRoleLocation} */
30
53
  export type WorkRoleLocation = schemas['WorkRoleLocation']
54
+ /** {@link WorkType} */
31
55
  export type WorkType = schemas['WorkType']
56
+ /** {@link WorkTypeInfo} */
32
57
  export type WorkTypeInfo = schemas['WorkTypeInfo']
33
58
 
34
59
  /**
60
+ * @module TimeAPI
61
+ */
62
+
63
+ /**
64
+ * Time module
35
65
  * @public
36
66
  */
37
- export default class TimeAPI extends Manage {
67
+ export class TimeAPI extends Manage {
38
68
  constructor(props: CWMOptions) {
39
69
  super(props)
40
70
  }
package/src/Manage.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import axios, { AxiosError, AxiosInstance, AxiosResponse } from 'axios'
2
- import { makeRequest } from './BaseAPI'
2
+ import { makeRequest, makePaginate, PaginationOptions, PaginationApiMethod } from './BaseAPI'
3
3
  import promiseRetry from 'promise-retry'
4
4
  import type { CWMOptions } from './ManageAPI'
5
5
  import { CWLogger, DataResponse, ErrorResponse, RequestOptions, RetryOptions } from './types'
@@ -60,11 +60,29 @@ export interface ManageConfig extends CWMOptions {
60
60
  export default class Manage {
61
61
  config: ManageConfig
62
62
  private instance: AxiosInstance
63
+
63
64
  /**
64
65
  * @public
65
66
  */
66
67
  request: (args: RequestOptions) => Promise<any>
67
68
 
69
+ /**
70
+ * @public
71
+ * Pass the function to be paginated first, then arguments to paginate itself,
72
+ * then any additional arguments to the function in order
73
+ *
74
+ * @example
75
+ * ```javascript
76
+ * cwm.paginate(cwm.FinanceAPI.getFinanceAgreements, {startPage: 1, pageSize: 500}, {conditions: 'inactiveFlag = false'})
77
+ *
78
+ * ```
79
+ */
80
+ paginate: (
81
+ apiMethod: PaginationApiMethod,
82
+ paginateArgs: PaginationOptions,
83
+ ...methodArgs: Record<string, unknown>[]
84
+ ) => Promise<unknown[]>
85
+
68
86
  constructor({
69
87
  companyId,
70
88
  publicKey,
@@ -116,6 +134,7 @@ export default class Manage {
116
134
  })
117
135
 
118
136
  this.request = makeRequest({ config: this.config, api: this.api, thisObj: this })
137
+ this.paginate = makePaginate({ thisObj: this })
119
138
  }
120
139
 
121
140
  /**
@@ -137,8 +156,8 @@ export default class Manage {
137
156
 
138
157
  return result?.data
139
158
  } catch (error: any) {
140
- if (error.isAxiosError()) {
141
- return {
159
+ if (error.isAxiosError) {
160
+ throw {
142
161
  status: error.response?.status,
143
162
  data: error.response?.data,
144
163
  message: error?.message,
package/src/ManageAPI.ts CHANGED
@@ -1,39 +1,44 @@
1
1
  import Manage from './Manage'
2
- import CompanyAPI from './Manage/CompanyAPI'
3
- import ConfigurationsAPI from './Manage/ConfigurationsAPI'
4
- import ExpenseAPI from './Manage/ExpenseAPI'
5
- import FinanceAPI from './Manage/FinanceAPI'
6
- import MarketingAPI from './Manage/MarketingAPI'
7
- import ProcurementAPI from './Manage/ProcurementAPI'
8
- import ProjectAPI from './Manage/ProjectAPI'
9
- import SalesAPI from './Manage/SalesAPI'
10
- import ScheduleAPI from './Manage/ScheduleAPI'
11
- import ServiceAPI from './Manage/ServiceAPI'
12
- import SystemAPI from './Manage/SystemAPI'
13
- import TimeAPI from './Manage/TimeAPI'
2
+ import { CompanyAPI } from './Manage/CompanyAPI'
3
+ import { ConfigurationsAPI } from './Manage/ConfigurationsAPI'
4
+ import { ExpenseAPI } from './Manage/ExpenseAPI'
5
+ import { FinanceAPI } from './Manage/FinanceAPI'
6
+ import { MarketingAPI } from './Manage/MarketingAPI'
7
+ import { ProcurementAPI } from './Manage/ProcurementAPI'
8
+ import { ProjectAPI } from './Manage/ProjectAPI'
9
+ import { SalesAPI } from './Manage/SalesAPI'
10
+ import { ScheduleAPI } from './Manage/ScheduleAPI'
11
+ import { ServiceAPI } from './Manage/ServiceAPI'
12
+ import { SystemAPI } from './Manage/SystemAPI'
13
+ import { TimeAPI } from './Manage/TimeAPI'
14
+ import type * as CompanyAPITypes from './Manage/CompanyAPI'
15
+ import type * as ConfigurationsAPITypes from './Manage/ConfigurationsAPI'
16
+ import type * as ExpenseAPITypes from './Manage/ExpenseAPI'
17
+ import type * as FinanceAPITypes from './Manage/FinanceAPI'
18
+ import type * as MarketingAPITypes from './Manage/MarketingAPI'
19
+ import type * as ProcurementAPITypes from './Manage/ProcurementAPI'
20
+ import type * as ProjectAPITypes from './Manage/ProjectAPI'
21
+ import type * as SalesAPITypes from './Manage/SalesAPI'
22
+ import type * as ScheduleAPITypes from './Manage/ScheduleAPI'
23
+ import type * as ServiceAPITypes from './Manage/ServiceAPI'
24
+ import type * as SystemAPITypes from './Manage/SystemAPI'
25
+ import type * as TimeAPITypes from './Manage/TimeAPI'
14
26
  import { CWLogger, RetryOptions } from './types'
15
27
 
16
- export type {
17
- CompanyAPI,
18
- ConfigurationsAPI,
19
- ExpenseAPI,
20
- FinanceAPI,
21
- MarketingAPI,
22
- ProcurementAPI,
23
- ProjectAPI,
24
- SalesAPI,
25
- ScheduleAPI,
26
- ServiceAPI,
27
- SystemAPI,
28
- TimeAPI,
29
- }
30
-
28
+ /**
29
+ * @public
30
+ * Manage patch operation input object, usually passed in an array of operations
31
+ */
31
32
  export type PatchOperation = {
32
33
  op: 'add' | 'replace' | 'remove'
33
34
  path: string
34
35
  value: Record<string, unknown> | Record<string, unknown>[] | string | null
35
36
  }
36
37
 
38
+ /**
39
+ * @public
40
+ * Manage common parameters
41
+ */
37
42
  export type CommonParameters = {
38
43
  conditions?: string
39
44
  childConditions?: string
@@ -45,15 +50,21 @@ export type CommonParameters = {
45
50
  pageId?: number
46
51
  }
47
52
 
53
+ /**
54
+ * @public
55
+ */
48
56
  export interface CWMOptions {
49
57
  /**
50
58
  * Your CW Manage Company ID
51
59
  */
52
60
  companyId: string
53
61
  /**
54
- *
62
+ * api public key
55
63
  */
56
64
  publicKey: string
65
+ /**
66
+ * api private key
67
+ */
57
68
  privateKey: string
58
69
  /**
59
70
  * Your CW Manage instance URI
@@ -80,6 +91,9 @@ export interface CWMOptions {
80
91
  * Enable automatic retry. Defaults to false.
81
92
  */
82
93
  retry?: boolean
94
+ /**
95
+ * @see {@link RetryOptions} type
96
+ */
83
97
  retryOptions?: RetryOptions
84
98
  /**
85
99
  * Pass in a custom logger function, otherwise the default
@@ -100,7 +114,7 @@ export interface CWMOptions {
100
114
  /**
101
115
  * @public
102
116
  */
103
- export default class ManageAPI extends Manage {
117
+ class ManageAPI extends Manage {
104
118
  CompanyAPI: CompanyAPI
105
119
  ConfigurationsAPI: ConfigurationsAPI
106
120
  ExpenseAPI: ExpenseAPI
@@ -131,3 +145,26 @@ export default class ManageAPI extends Manage {
131
145
  this.TimeAPI = new TimeAPI(options)
132
146
  }
133
147
  }
148
+
149
+ /**
150
+ * @public
151
+ */
152
+ export default ManageAPI
153
+
154
+ /**
155
+ * @public
156
+ */
157
+ export type {
158
+ CompanyAPITypes,
159
+ ConfigurationsAPITypes,
160
+ ExpenseAPITypes,
161
+ FinanceAPITypes,
162
+ MarketingAPITypes,
163
+ ProcurementAPITypes,
164
+ ProjectAPITypes,
165
+ SalesAPITypes,
166
+ ScheduleAPITypes,
167
+ ServiceAPITypes,
168
+ SystemAPITypes,
169
+ TimeAPITypes,
170
+ }
package/src/index.ts CHANGED
@@ -1,18 +1,13 @@
1
1
  import ManageAPI, { CWMOptions, CommonParameters, PatchOperation } from './ManageAPI'
2
2
  import AutomateAPI, { CWAOptions } from './AutomateAPI'
3
3
  import type * as types from './types'
4
+ import type * as Automate from './AutomateAPI'
5
+ import type * as Manage from './ManageAPI'
4
6
  import * as utils from './utils'
5
- import * as AutomateAPIs from './AutomateAPI'
6
- import * as ManageAPIs from './ManageAPI'
7
7
 
8
- export type {
9
- AutomateAPIs,
10
- ManageAPIs,
11
- CWMOptions,
12
- CommonParameters,
13
- PatchOperation,
14
- CWAOptions,
15
- types,
16
- }
8
+ export type { CWMOptions, CommonParameters, PatchOperation, CWAOptions, types, Automate, Manage }
17
9
 
10
+ /**
11
+ * @public
12
+ */
18
13
  export { AutomateAPI, ManageAPI, utils }
package/src/types.ts CHANGED
@@ -1,4 +1,5 @@
1
- import * as ManageAPI from './ManageAPI'
1
+ import type * as ManageAPIs from './ManageAPI'
2
+ import type * as AutomateApis from './AutomateAPI'
2
3
 
3
4
  export enum StatusCode {
4
5
  OK = 200,
@@ -63,4 +64,5 @@ export type NoContentResponse = undefined
63
64
  export type OctetStreamResponse = Buffer
64
65
  export type PDFResponse = Blob
65
66
  export type HTMLResponse = string
66
- export type PatchOperation = ManageAPI.PatchOperation
67
+ export type PatchOperation = ManageAPIs.PatchOperation
68
+ export type { ManageAPIs, AutomateApis }
@@ -10,6 +10,9 @@ export interface ExpressRequest extends ClientRequest {
10
10
  headers: Record<string, string>
11
11
  }
12
12
 
13
+ /**
14
+ * @public
15
+ */
13
16
  export type CallbackPayload = {
14
17
  Action: string
15
18
  CompanyId: string | number
@@ -10,6 +10,9 @@ export type PromiseLikeFunction =
10
10
  | (() => unknown)
11
11
  | { then: () => void }
12
12
 
13
+ /**
14
+ * @public
15
+ */
13
16
  export type SeriesOptions = {
14
17
  series: Array<PromiseLikeFunction>
15
18
  concurrent?: number
@@ -78,6 +81,9 @@ function all({ series = [], concurrent = 1, delay = 0 }: SeriesOptions): Promise
78
81
  })
79
82
  }
80
83
 
84
+ /**
85
+ * @public
86
+ */
81
87
  const Series = { all }
82
88
 
83
89
  export default Series