emissions-api-sdk 1.0.0 → 1.0.2

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 (155) hide show
  1. package/README.md +33 -2
  2. package/dist/Constants.js +23 -1
  3. package/dist/api/Calculation.js +78 -15
  4. package/dist/api/Factor.js +99 -18
  5. package/dist/api/FactorSets.js +1 -1
  6. package/dist/api/Fugitive.js +76 -13
  7. package/dist/api/Location.js +76 -15
  8. package/dist/api/Mobile.js +65 -1
  9. package/dist/api/Stationary.js +78 -15
  10. package/dist/api/TransportationAndDistribution.js +77 -14
  11. package/dist/coverage/clover.xml +191 -81
  12. package/dist/coverage/coverage-final.json +11 -11
  13. package/dist/coverage/lcov-report/index.html +16 -16
  14. package/dist/coverage/lcov-report/src/Client.ts.html +23 -23
  15. package/dist/coverage/lcov-report/src/Constants.ts.html +82 -4
  16. package/dist/coverage/lcov-report/src/api/Calculation.ts.html +245 -26
  17. package/dist/coverage/lcov-report/src/api/Factor.ts.html +313 -34
  18. package/dist/coverage/lcov-report/src/api/FactorSets.ts.html +8 -5
  19. package/dist/coverage/lcov-report/src/api/Fugitive.ts.html +246 -24
  20. package/dist/coverage/lcov-report/src/api/Location.ts.html +245 -26
  21. package/dist/coverage/lcov-report/src/api/Mobile.ts.html +240 -12
  22. package/dist/coverage/lcov-report/src/api/Stationary.ts.html +248 -26
  23. package/dist/coverage/lcov-report/src/api/TransportationAndDistribution.ts.html +250 -25
  24. package/dist/coverage/lcov-report/src/api/index.html +25 -25
  25. package/dist/coverage/lcov-report/src/index.html +7 -7
  26. package/dist/coverage/lcov-report/src/request.ts.html +1 -1
  27. package/dist/coverage/lcov-report/src/utils.ts.html +5 -5
  28. package/dist/coverage/lcov-report/test/index.html +1 -1
  29. package/dist/coverage/lcov-report/test/mocks/CommonRequest.ts.html +1 -1
  30. package/dist/coverage/lcov-report/test/mocks/FactorRequest.ts.html +1 -1
  31. package/dist/coverage/lcov-report/test/mocks/GenericCalculationRequest.ts.html +1 -1
  32. package/dist/coverage/lcov-report/test/mocks/LocationRequest.ts.html +1 -1
  33. package/dist/coverage/lcov-report/test/mocks/SearchRequest.ts.html +1 -1
  34. package/dist/coverage/lcov-report/test/mocks/index.html +1 -1
  35. package/dist/coverage/lcov-report/test/testUtils.ts.html +1 -1
  36. package/dist/coverage/lcov.info +287 -133
  37. package/dist/interfaces/response/AreaResponse.js +2 -0
  38. package/dist/interfaces/response/EmissionResponse.js +2 -0
  39. package/dist/interfaces/response/EmissionResponseWithDetails.js +2 -0
  40. package/dist/interfaces/response/FactorResponse.js +2 -0
  41. package/dist/interfaces/response/FactorSetResponse.js +2 -0
  42. package/dist/interfaces/response/SearchResponse.js +2 -0
  43. package/dist/interfaces/response/TypeResponse.js +2 -0
  44. package/dist/interfaces/response/UnitResponse.js +2 -0
  45. package/dist/types/Constants.d.ts +22 -0
  46. package/dist/types/api/Calculation.d.ts +59 -16
  47. package/dist/types/api/Factor.d.ts +73 -20
  48. package/dist/types/api/FactorSets.d.ts +3 -2
  49. package/dist/types/api/Fugitive.d.ts +57 -14
  50. package/dist/types/api/Location.d.ts +57 -16
  51. package/dist/types/api/Mobile.d.ts +46 -2
  52. package/dist/types/api/Stationary.d.ts +59 -16
  53. package/dist/types/api/TransportationAndDistribution.d.ts +58 -15
  54. package/dist/types/index.d.ts +8 -0
  55. package/dist/types/interfaces/response/AreaResponse.d.ts +20 -0
  56. package/dist/types/interfaces/response/EmissionResponse.d.ts +31 -0
  57. package/dist/types/interfaces/response/EmissionResponseWithDetails.d.ts +144 -0
  58. package/dist/types/interfaces/response/FactorResponse.d.ts +53 -0
  59. package/dist/types/interfaces/response/FactorSetResponse.d.ts +38 -0
  60. package/dist/types/interfaces/response/SearchResponse.d.ts +41 -0
  61. package/dist/types/interfaces/response/TypeResponse.d.ts +7 -0
  62. package/dist/types/interfaces/response/UnitResponse.d.ts +7 -0
  63. package/docs/.nojekyll +0 -0
  64. package/docs/_sources/authentication.rst.txt +164 -0
  65. package/docs/_sources/client.rst.txt +137 -0
  66. package/docs/_sources/getting_started.rst.txt +164 -0
  67. package/docs/_sources/index.rst.txt +30 -0
  68. package/docs/_sources/reference.rst.txt +129 -0
  69. package/docs/_sources/sdk.rst.txt +13 -0
  70. package/docs/_sources/troubleshooting.rst.txt +486 -0
  71. package/docs/_static/basic.css +914 -0
  72. package/docs/_static/custom.css +16 -0
  73. package/docs/_static/debug.css +69 -0
  74. package/docs/_static/doctools.js +149 -0
  75. package/docs/_static/documentation_options.js +13 -0
  76. package/docs/_static/file.png +0 -0
  77. package/docs/_static/language_data.js +192 -0
  78. package/docs/_static/minus.png +0 -0
  79. package/docs/_static/plus.png +0 -0
  80. package/docs/_static/pygments.css +232 -0
  81. package/docs/_static/scripts/furo-extensions.js +0 -0
  82. package/docs/_static/scripts/furo.js +3 -0
  83. package/docs/_static/scripts/furo.js.LICENSE.txt +7 -0
  84. package/docs/_static/scripts/furo.js.map +1 -0
  85. package/docs/_static/searchtools.js +632 -0
  86. package/docs/_static/skeleton.css +296 -0
  87. package/docs/_static/sphinx_highlight.js +154 -0
  88. package/docs/_static/sphinx_js.css +0 -0
  89. package/docs/_static/styles/furo-extensions.css +2 -0
  90. package/docs/_static/styles/furo-extensions.css.map +1 -0
  91. package/docs/_static/styles/furo.css +2 -0
  92. package/docs/_static/styles/furo.css.map +1 -0
  93. package/docs/authentication.html +523 -0
  94. package/docs/client.html +477 -0
  95. package/docs/genindex.html +492 -0
  96. package/docs/getting_started.html +491 -0
  97. package/docs/index.html +357 -0
  98. package/docs/objects.inv +0 -0
  99. package/docs/reference.html +1584 -0
  100. package/docs/sdk.html +334 -0
  101. package/docs/search.html +297 -0
  102. package/docs/searchindex.js +1 -0
  103. package/docs/troubleshooting.html +786 -0
  104. package/package.json +1 -1
  105. package/sphinx-build/Makefile +49 -0
  106. package/sphinx-build/requirements.txt +5 -0
  107. package/sphinx-build/source/_static/custom.css +16 -0
  108. package/sphinx-build/source/authentication.rst +164 -0
  109. package/sphinx-build/source/client.rst +137 -0
  110. package/sphinx-build/source/conf.py +56 -0
  111. package/sphinx-build/source/getting_started.rst +164 -0
  112. package/sphinx-build/source/index.rst +30 -0
  113. package/sphinx-build/source/reference.rst +129 -0
  114. package/sphinx-build/source/sdk.rst +13 -0
  115. package/sphinx-build/source/troubleshooting.rst +486 -0
  116. package/src/Constants.ts +26 -0
  117. package/src/api/Calculation.ts +94 -20
  118. package/src/api/Factor.ts +122 -28
  119. package/src/api/FactorSets.ts +4 -3
  120. package/src/api/Fugitive.ts +93 -18
  121. package/src/api/Location.ts +94 -20
  122. package/src/api/Mobile.ts +83 -6
  123. package/src/api/Stationary.ts +95 -20
  124. package/src/api/TransportationAndDistribution.ts +95 -19
  125. package/src/index.ts +33 -1
  126. package/src/interfaces/response/AreaResponse.ts +25 -0
  127. package/src/interfaces/response/EmissionResponse.ts +44 -0
  128. package/src/interfaces/response/EmissionResponseWithDetails.ts +183 -0
  129. package/src/interfaces/response/FactorResponse.ts +78 -0
  130. package/src/interfaces/response/FactorSetResponse.ts +52 -0
  131. package/src/interfaces/response/SearchResponse.ts +52 -0
  132. package/src/interfaces/response/TypeResponse.ts +7 -0
  133. package/src/interfaces/response/UnitResponse.ts +7 -0
  134. package/test/apiTest.test.ts +173 -6
  135. package/dist/api/Factors.js +0 -98
  136. package/dist/api/FugitiveEmission.js +0 -40
  137. package/dist/api/GenericCalculation.js +0 -41
  138. package/dist/api/LocationEmission.js +0 -41
  139. package/dist/api/MobileEmission.js +0 -41
  140. package/dist/api/StationaryEmission.js +0 -41
  141. package/dist/api/TransportationDistributionEmission.js +0 -40
  142. package/dist/coverage/lcov-report/src/api/Factors.ts.html +0 -403
  143. package/dist/coverage/lcov-report/src/api/FugitiveEmission.ts.html +0 -214
  144. package/dist/coverage/lcov-report/src/api/GenericCalculation.ts.html +0 -217
  145. package/dist/coverage/lcov-report/src/api/LocationEmission.ts.html +0 -214
  146. package/dist/coverage/lcov-report/src/api/MobileEmission.ts.html +0 -220
  147. package/dist/coverage/lcov-report/src/api/StationaryEmission.ts.html +0 -220
  148. package/dist/coverage/lcov-report/src/api/TransportationDistributionEmission.ts.html +0 -211
  149. package/dist/types/api/Factors.d.ts +0 -68
  150. package/dist/types/api/FugitiveEmission.d.ts +0 -27
  151. package/dist/types/api/GenericCalculation.d.ts +0 -28
  152. package/dist/types/api/LocationEmission.d.ts +0 -28
  153. package/dist/types/api/MobileEmission.d.ts +0 -28
  154. package/dist/types/api/StationaryEmission.d.ts +0 -28
  155. package/dist/types/api/TransportationDistributionEmission.d.ts +0 -27
@@ -25,7 +25,7 @@
25
25
  <div class='fl pad1y space-right2'>
26
26
  <span class="strong">100% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>11/11</span>
28
+ <span class='fraction'>27/27</span>
29
29
  </div>
30
30
 
31
31
 
@@ -39,14 +39,14 @@
39
39
  <div class='fl pad1y space-right2'>
40
40
  <span class="strong">100% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>2/2</span>
42
+ <span class='fraction'>6/6</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
47
  <span class="strong">100% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>11/11</span>
49
+ <span class='fraction'>27/27</span>
50
50
  </div>
51
51
 
52
52
 
@@ -149,9 +149,107 @@
149
149
  <a name='L84'></a><a href='#L84'>84</a>
150
150
  <a name='L85'></a><a href='#L85'>85</a>
151
151
  <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
152
+ <a name='L87'></a><a href='#L87'>87</a>
153
+ <a name='L88'></a><a href='#L88'>88</a>
154
+ <a name='L89'></a><a href='#L89'>89</a>
155
+ <a name='L90'></a><a href='#L90'>90</a>
156
+ <a name='L91'></a><a href='#L91'>91</a>
157
+ <a name='L92'></a><a href='#L92'>92</a>
158
+ <a name='L93'></a><a href='#L93'>93</a>
159
+ <a name='L94'></a><a href='#L94'>94</a>
160
+ <a name='L95'></a><a href='#L95'>95</a>
161
+ <a name='L96'></a><a href='#L96'>96</a>
162
+ <a name='L97'></a><a href='#L97'>97</a>
163
+ <a name='L98'></a><a href='#L98'>98</a>
164
+ <a name='L99'></a><a href='#L99'>99</a>
165
+ <a name='L100'></a><a href='#L100'>100</a>
166
+ <a name='L101'></a><a href='#L101'>101</a>
167
+ <a name='L102'></a><a href='#L102'>102</a>
168
+ <a name='L103'></a><a href='#L103'>103</a>
169
+ <a name='L104'></a><a href='#L104'>104</a>
170
+ <a name='L105'></a><a href='#L105'>105</a>
171
+ <a name='L106'></a><a href='#L106'>106</a>
172
+ <a name='L107'></a><a href='#L107'>107</a>
173
+ <a name='L108'></a><a href='#L108'>108</a>
174
+ <a name='L109'></a><a href='#L109'>109</a>
175
+ <a name='L110'></a><a href='#L110'>110</a>
176
+ <a name='L111'></a><a href='#L111'>111</a>
177
+ <a name='L112'></a><a href='#L112'>112</a>
178
+ <a name='L113'></a><a href='#L113'>113</a>
179
+ <a name='L114'></a><a href='#L114'>114</a>
180
+ <a name='L115'></a><a href='#L115'>115</a>
181
+ <a name='L116'></a><a href='#L116'>116</a>
182
+ <a name='L117'></a><a href='#L117'>117</a>
183
+ <a name='L118'></a><a href='#L118'>118</a>
184
+ <a name='L119'></a><a href='#L119'>119</a>
185
+ <a name='L120'></a><a href='#L120'>120</a>
186
+ <a name='L121'></a><a href='#L121'>121</a>
187
+ <a name='L122'></a><a href='#L122'>122</a>
188
+ <a name='L123'></a><a href='#L123'>123</a>
189
+ <a name='L124'></a><a href='#L124'>124</a>
190
+ <a name='L125'></a><a href='#L125'>125</a>
191
+ <a name='L126'></a><a href='#L126'>126</a>
192
+ <a name='L127'></a><a href='#L127'>127</a>
193
+ <a name='L128'></a><a href='#L128'>128</a>
194
+ <a name='L129'></a><a href='#L129'>129</a>
195
+ <a name='L130'></a><a href='#L130'>130</a>
196
+ <a name='L131'></a><a href='#L131'>131</a>
197
+ <a name='L132'></a><a href='#L132'>132</a>
198
+ <a name='L133'></a><a href='#L133'>133</a>
199
+ <a name='L134'></a><a href='#L134'>134</a>
200
+ <a name='L135'></a><a href='#L135'>135</a>
201
+ <a name='L136'></a><a href='#L136'>136</a>
202
+ <a name='L137'></a><a href='#L137'>137</a>
203
+ <a name='L138'></a><a href='#L138'>138</a>
204
+ <a name='L139'></a><a href='#L139'>139</a>
205
+ <a name='L140'></a><a href='#L140'>140</a>
206
+ <a name='L141'></a><a href='#L141'>141</a>
207
+ <a name='L142'></a><a href='#L142'>142</a>
208
+ <a name='L143'></a><a href='#L143'>143</a>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a>
227
+ <a name='L162'></a><a href='#L162'>162</a>
228
+ <a name='L163'></a><a href='#L163'>163</a>
229
+ <a name='L164'></a><a href='#L164'>164</a>
230
+ <a name='L165'></a><a href='#L165'>165</a>
231
+ <a name='L166'></a><a href='#L166'>166</a>
232
+ <a name='L167'></a><a href='#L167'>167</a>
233
+ <a name='L168'></a><a href='#L168'>168</a>
234
+ <a name='L169'></a><a href='#L169'>169</a>
235
+ <a name='L170'></a><a href='#L170'>170</a>
236
+ <a name='L171'></a><a href='#L171'>171</a>
237
+ <a name='L172'></a><a href='#L172'>172</a>
238
+ <a name='L173'></a><a href='#L173'>173</a>
239
+ <a name='L174'></a><a href='#L174'>174</a>
240
+ <a name='L175'></a><a href='#L175'>175</a>
241
+ <a name='L176'></a><a href='#L176'>176</a>
242
+ <a name='L177'></a><a href='#L177'>177</a>
243
+ <a name='L178'></a><a href='#L178'>178</a>
244
+ <a name='L179'></a><a href='#L179'>179</a>
245
+ <a name='L180'></a><a href='#L180'>180</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
153
246
  <span class="cline-any cline-yes">1x</span>
154
247
  <span class="cline-any cline-neutral">&nbsp;</span>
248
+ <span class="cline-any cline-neutral">&nbsp;</span>
249
+ <span class="cline-any cline-neutral">&nbsp;</span>
250
+ <span class="cline-any cline-neutral">&nbsp;</span>
251
+ <span class="cline-any cline-neutral">&nbsp;</span>
252
+ <span class="cline-any cline-neutral">&nbsp;</span>
155
253
  <span class="cline-any cline-yes">1x</span>
156
254
  <span class="cline-any cline-neutral">&nbsp;</span>
157
255
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -187,6 +285,40 @@
187
285
  <span class="cline-any cline-neutral">&nbsp;</span>
188
286
  <span class="cline-any cline-neutral">&nbsp;</span>
189
287
  <span class="cline-any cline-neutral">&nbsp;</span>
288
+ <span class="cline-any cline-yes">1x</span>
289
+ <span class="cline-any cline-neutral">&nbsp;</span>
290
+ <span class="cline-any cline-neutral">&nbsp;</span>
291
+ <span class="cline-any cline-yes">1x</span>
292
+ <span class="cline-any cline-yes">1x</span>
293
+ <span class="cline-any cline-neutral">&nbsp;</span>
294
+ <span class="cline-any cline-yes">1x</span>
295
+ <span class="cline-any cline-neutral">&nbsp;</span>
296
+ <span class="cline-any cline-neutral">&nbsp;</span>
297
+ <span class="cline-any cline-neutral">&nbsp;</span>
298
+ <span class="cline-any cline-neutral">&nbsp;</span>
299
+ <span class="cline-any cline-neutral">&nbsp;</span>
300
+ <span class="cline-any cline-neutral">&nbsp;</span>
301
+ <span class="cline-any cline-neutral">&nbsp;</span>
302
+ <span class="cline-any cline-neutral">&nbsp;</span>
303
+ <span class="cline-any cline-neutral">&nbsp;</span>
304
+ <span class="cline-any cline-neutral">&nbsp;</span>
305
+ <span class="cline-any cline-neutral">&nbsp;</span>
306
+ <span class="cline-any cline-neutral">&nbsp;</span>
307
+ <span class="cline-any cline-neutral">&nbsp;</span>
308
+ <span class="cline-any cline-neutral">&nbsp;</span>
309
+ <span class="cline-any cline-neutral">&nbsp;</span>
310
+ <span class="cline-any cline-neutral">&nbsp;</span>
311
+ <span class="cline-any cline-neutral">&nbsp;</span>
312
+ <span class="cline-any cline-neutral">&nbsp;</span>
313
+ <span class="cline-any cline-neutral">&nbsp;</span>
314
+ <span class="cline-any cline-neutral">&nbsp;</span>
315
+ <span class="cline-any cline-neutral">&nbsp;</span>
316
+ <span class="cline-any cline-neutral">&nbsp;</span>
317
+ <span class="cline-any cline-neutral">&nbsp;</span>
318
+ <span class="cline-any cline-neutral">&nbsp;</span>
319
+ <span class="cline-any cline-neutral">&nbsp;</span>
320
+ <span class="cline-any cline-neutral">&nbsp;</span>
321
+ <span class="cline-any cline-neutral">&nbsp;</span>
190
322
  <span class="cline-any cline-neutral">&nbsp;</span>
191
323
  <span class="cline-any cline-yes">1x</span>
192
324
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -211,6 +343,16 @@
211
343
  <span class="cline-any cline-neutral">&nbsp;</span>
212
344
  <span class="cline-any cline-neutral">&nbsp;</span>
213
345
  <span class="cline-any cline-neutral">&nbsp;</span>
346
+ <span class="cline-any cline-yes">1x</span>
347
+ <span class="cline-any cline-neutral">&nbsp;</span>
348
+ <span class="cline-any cline-yes">1x</span>
349
+ <span class="cline-any cline-yes">1x</span>
350
+ <span class="cline-any cline-neutral">&nbsp;</span>
351
+ <span class="cline-any cline-yes">1x</span>
352
+ <span class="cline-any cline-neutral">&nbsp;</span>
353
+ <span class="cline-any cline-neutral">&nbsp;</span>
354
+ <span class="cline-any cline-neutral">&nbsp;</span>
355
+ <span class="cline-any cline-neutral">&nbsp;</span>
214
356
  <span class="cline-any cline-neutral">&nbsp;</span>
215
357
  <span class="cline-any cline-neutral">&nbsp;</span>
216
358
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -222,12 +364,30 @@
222
364
  <span class="cline-any cline-neutral">&nbsp;</span>
223
365
  <span class="cline-any cline-neutral">&nbsp;</span>
224
366
  <span class="cline-any cline-neutral">&nbsp;</span>
367
+ <span class="cline-any cline-yes">1x</span>
225
368
  <span class="cline-any cline-neutral">&nbsp;</span>
226
369
  <span class="cline-any cline-yes">1x</span>
370
+ <span class="cline-any cline-yes">1x</span>
371
+ <span class="cline-any cline-neutral">&nbsp;</span>
372
+ <span class="cline-any cline-yes">1x</span>
373
+ <span class="cline-any cline-neutral">&nbsp;</span>
374
+ <span class="cline-any cline-neutral">&nbsp;</span>
375
+ <span class="cline-any cline-neutral">&nbsp;</span>
376
+ <span class="cline-any cline-neutral">&nbsp;</span>
377
+ <span class="cline-any cline-neutral">&nbsp;</span>
378
+ <span class="cline-any cline-neutral">&nbsp;</span>
379
+ <span class="cline-any cline-neutral">&nbsp;</span>
380
+ <span class="cline-any cline-neutral">&nbsp;</span>
381
+ <span class="cline-any cline-neutral">&nbsp;</span>
382
+ <span class="cline-any cline-neutral">&nbsp;</span>
383
+ <span class="cline-any cline-neutral">&nbsp;</span>
384
+ <span class="cline-any cline-neutral">&nbsp;</span>
385
+ <span class="cline-any cline-neutral">&nbsp;</span>
227
386
  <span class="cline-any cline-neutral">&nbsp;</span>
228
387
  <span class="cline-any cline-neutral">&nbsp;</span>
229
388
  <span class="cline-any cline-yes">1x</span>
230
389
  <span class="cline-any cline-yes">1x</span>
390
+ <span class="cline-any cline-yes">1x</span>
231
391
  <span class="cline-any cline-neutral">&nbsp;</span>
232
392
  <span class="cline-any cline-yes">1x</span>
233
393
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -235,9 +395,40 @@
235
395
  <span class="cline-any cline-neutral">&nbsp;</span>
236
396
  <span class="cline-any cline-neutral">&nbsp;</span>
237
397
  <span class="cline-any cline-neutral">&nbsp;</span>
398
+ <span class="cline-any cline-neutral">&nbsp;</span>
399
+ <span class="cline-any cline-neutral">&nbsp;</span>
400
+ <span class="cline-any cline-neutral">&nbsp;</span>
401
+ <span class="cline-any cline-neutral">&nbsp;</span>
402
+ <span class="cline-any cline-neutral">&nbsp;</span>
403
+ <span class="cline-any cline-neutral">&nbsp;</span>
404
+ <span class="cline-any cline-neutral">&nbsp;</span>
405
+ <span class="cline-any cline-neutral">&nbsp;</span>
406
+ <span class="cline-any cline-neutral">&nbsp;</span>
407
+ <span class="cline-any cline-neutral">&nbsp;</span>
408
+ <span class="cline-any cline-neutral">&nbsp;</span>
409
+ <span class="cline-any cline-neutral">&nbsp;</span>
410
+ <span class="cline-any cline-neutral">&nbsp;</span>
411
+ <span class="cline-any cline-neutral">&nbsp;</span>
412
+ <span class="cline-any cline-neutral">&nbsp;</span>
413
+ <span class="cline-any cline-yes">1x</span>
414
+ <span class="cline-any cline-neutral">&nbsp;</span>
415
+ <span class="cline-any cline-neutral">&nbsp;</span>
416
+ <span class="cline-any cline-yes">1x</span>
417
+ <span class="cline-any cline-yes">1x</span>
418
+ <span class="cline-any cline-neutral">&nbsp;</span>
419
+ <span class="cline-any cline-yes">1x</span>
420
+ <span class="cline-any cline-neutral">&nbsp;</span>
421
+ <span class="cline-any cline-neutral">&nbsp;</span>
422
+ <span class="cline-any cline-neutral">&nbsp;</span>
423
+ <span class="cline-any cline-neutral">&nbsp;</span>
238
424
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Client } from "../Client";
239
- import { FACTOR_API_PATH, POST, SEARCH_API_PATH } from "../Constants";
425
+ import { FACTOR_API_AREA, FACTOR_API_PATH, FACTOR_API_TYPES, FACTOR_API_UNITS, GET, POST, SEARCH_API_AREA, SEARCH_API_PATH } from "../Constants";
240
426
  import { FactorRequest, SearchRequest } from "../interfaces/Api";
427
+ import { AreaResponse } from "../interfaces/response/AreaResponse";
428
+ import { FactorResponse } from "../interfaces/response/FactorResponse";
429
+ import { SearchResponse } from "../interfaces/response/SearchResponse";
430
+ import { TypeResponse } from "../interfaces/response/TypeResponse";
431
+ import { UnitResponse } from "../interfaces/response/UnitResponse";
241
432
  import { makeApiRequest } from "../request";
242
433
  &nbsp;
243
434
  /**
@@ -245,42 +436,41 @@ import { makeApiRequest } from "../request";
245
436
  *
246
437
  * @export
247
438
  * @param {FactorRequest} payload - The factor request data to be sent to the API
248
- * @return {Promise&lt;string&gt;} A promise that resolves to the factor string returned by the API
439
+ * @return {Promise&lt;FactorResponse&gt;} A promise that resolves to the FactorResponse returned by the API
249
440
  * @throws {Error} May throw an error if the API request fails
250
441
  *
251
442
  * @example
252
443
  * const factorRequest = {
253
-
254
- "activity": {
255
- "factorId": 12345
256
- }
444
+ "activity": {
445
+ "factorId": 12345
446
+ }
257
447
  };
258
448
 
259
- or
449
+ OR
260
450
  &nbsp;
261
451
  const factorRequest = {
262
- "time" : {
263
- "date": "2025-01-04"
264
- },
265
- "location": {
266
- "country": "usa",
267
- "stateProvince": "new york"
268
- },
269
- "activity": {
270
- "type":"natural gas"
271
- },
272
- "includeDetails": true
273
- };
452
+ "time" : {
453
+ "date": "2025-01-04"
454
+ },
455
+ "location": {
456
+ "country": "usa",
457
+ "stateProvince": "new york"
458
+ },
459
+ "activity": {
460
+ "type":"natural gas"
461
+ },
462
+ "includeDetails": true
463
+ };
274
464
  * const factor = await retrieveFactor(factorRequest);
275
465
  */
276
466
  &nbsp;
277
467
  export async function retrieveFactor(
278
468
  payload: FactorRequest
279
- ): Promise&lt;string&gt; {
469
+ ): Promise&lt;FactorResponse&gt; {
280
470
  const client = Client.getInstance();
281
471
  const url = client.getDomain() + FACTOR_API_PATH;
282
472
  &nbsp;
283
- return makeApiRequest&lt;string&gt;({
473
+ return makeApiRequest&lt;FactorResponse&gt;({
284
474
  method: POST,
285
475
  url,
286
476
  data: payload,
@@ -290,20 +480,20 @@ export async function retrieveFactor(
290
480
  &nbsp;
291
481
  /**
292
482
  * Performs a search operation by making a POST request to the search API endpoint.
293
- *
483
+ *
294
484
  * @export
295
485
  * @param {SearchRequest} payload - The search request data to be sent to the API
296
- * @return {Promise&lt;string&gt;} A promise that resolves to the search results string returned by the API
486
+ * @return {Promise&lt;SearchResponse&gt;} A promise that resolves to the search results returned by the API
297
487
  * @throws {Error} May throw an error if the API request fails
298
- *
488
+ *
299
489
  * @example
300
- * const searchRequest = {
490
+ * const searchRequest = {
301
491
  "time":{
302
492
  "date": "2020-06-10"
303
493
  },
304
494
  "activity": {
305
495
  "search" : "travel"},
306
- "location": {
496
+ "location": {
307
497
  "country": "USA"
308
498
  }
309
499
  };
@@ -311,24 +501,113 @@ export async function retrieveFactor(
311
501
  */
312
502
  export async function search(
313
503
  payload: SearchRequest
314
- ): Promise&lt;string&gt; {
504
+ ): Promise&lt;SearchResponse&gt; {
315
505
  const client = Client.getInstance();
316
506
  const url = client.getDomain() + SEARCH_API_PATH;
317
507
  &nbsp;
318
- return makeApiRequest&lt;string&gt;({
508
+ return makeApiRequest&lt;SearchResponse&gt;({
319
509
  method: POST,
320
510
  url,
321
511
  data: payload,
322
512
  });
323
513
  }
324
- &nbsp;</pre></td></tr></table></pre>
514
+ &nbsp;
515
+ /**
516
+ * Retrieves available emission factor types by making a GET request to the API endpoint.
517
+ *
518
+ * @export
519
+ * @return {Promise&lt;TypeResponse&gt;} A promise that resolves to a TypeResponse containing the available emission factor types
520
+ * @throws {Error} May throw an error if the API request fails
521
+ *
522
+ * @example
523
+ * const types = await getTypes();
524
+ */
525
+ export async function getTypes(
526
+ ): Promise&lt;TypeResponse&gt; {
527
+ const client = Client.getInstance();
528
+ const url = client.getDomain() + FACTOR_API_TYPES;
529
+ &nbsp;
530
+ return makeApiRequest&lt;TypeResponse&gt;({
531
+ method: GET,
532
+ url
533
+ });
534
+ }
535
+ &nbsp;
536
+ /**
537
+ * Retrieves information about geographical areas supported by the factor search API.
538
+ *
539
+ * @export
540
+ * @return {Promise&lt;AreaResponse&gt;} A promise that resolves to an AreaResponse containing the supported geographical areas
541
+ * @throws {Error} May throw an error if the API request fails
542
+ *
543
+ * @example
544
+ * const areas = await getSearchArea();
545
+ */
546
+ export async function getSearchArea(
547
+ ): Promise&lt;AreaResponse&gt; {
548
+ const client = Client.getInstance();
549
+ const url = client.getDomain() + SEARCH_API_AREA;
550
+ &nbsp;
551
+ return makeApiRequest&lt;AreaResponse&gt;({
552
+ method: GET,
553
+ url
554
+ });
555
+ }
556
+ &nbsp;
557
+ /**
558
+ * Retrieves information about geographical areas supported by the factor API.
559
+ *
560
+ * @export
561
+ * @return {Promise&lt;AreaResponse&gt;} A promise that resolves to an AreaResponse containing the supported geographical areas
562
+ * @throws {Error} May throw an error if the API request fails
563
+ *
564
+ * @example
565
+ * const areas = await getArea();
566
+ */
567
+ export async function getArea(): Promise&lt;AreaResponse&gt; {
568
+ const client = Client.getInstance();
569
+ const url = client.getDomain() + FACTOR_API_AREA;
570
+ &nbsp;
571
+ return makeApiRequest&lt;AreaResponse&gt;({
572
+ method: GET,
573
+ url
574
+ });
575
+ }
576
+ &nbsp;
577
+ /**
578
+ * Retrieves available units for a specific emission factor type.
579
+ *
580
+ * @export
581
+ * @param {string} type - The emission factor type to get units for (e.g., "Natural Gas - Scope 3:AAA")
582
+ * @return {Promise&lt;UnitResponse&gt;} A promise that resolves to a UnitResponse containing the available units
583
+ * @throws {Error} May throw an error if the API request fails
584
+ *
585
+ * @example
586
+ * // Get units for the "Natural Gas - Scope 3:AAA" emission factor type with subtype
587
+ * const units = await getUnits("Natural Gas - Scope 3:AAA");
588
+ &nbsp;
589
+ * // Get units for the "HFC-263fb" emission factor type without subtype
590
+ * const units = await getUnits("HFC-263fb");
591
+ */
592
+ export async function getUnits(
593
+ type : string
594
+ ): Promise&lt;UnitResponse&gt; {
595
+ const client = Client.getInstance();
596
+ const url = client.getDomain() + FACTOR_API_UNITS;
597
+ &nbsp;
598
+ return makeApiRequest&lt;UnitResponse&gt;({
599
+ method: GET,
600
+ url,
601
+ params : { type }
602
+ });
603
+ }</pre></td></tr></table></pre>
325
604
 
326
605
  <div class='push'></div><!-- for sticky footer -->
327
606
  </div><!-- /wrapper -->
328
607
  <div class='footer quiet pad2 space-top1 center small'>
329
608
  Code coverage generated by
330
609
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
331
- at 2025-09-29T10:08:48.327Z
610
+ at 2025-12-11T17:06:20.018Z
332
611
  </div>
333
612
  <script src="../../prettify.js"></script>
334
613
  <script>
@@ -86,8 +86,10 @@
86
86
  <a name='L21'></a><a href='#L21'>21</a>
87
87
  <a name='L22'></a><a href='#L22'>22</a>
88
88
  <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
90
91
  <span class="cline-any cline-yes">1x</span>
92
+ <span class="cline-any cline-neutral">&nbsp;</span>
91
93
  <span class="cline-any cline-yes">1x</span>
92
94
  <span class="cline-any cline-neutral">&nbsp;</span>
93
95
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -111,24 +113,25 @@
111
113
  <span class="cline-any cline-neutral">&nbsp;</span>
112
114
  <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Client } from "../Client";
113
115
  import { FACTOR_SET_API_PATH, GET } from "../Constants";
116
+ import { FactorSetResponse } from "../interfaces/response/FactorSetResponse";
114
117
  import { makeApiRequest } from "../request";
115
118
  &nbsp;
116
119
  /**
117
120
  * Retrieves factor sets by making a GET request to the factor set API endpoint.
118
121
  *
119
122
  * @export
120
- * @return {Promise&lt;string&gt;} A promise that resolves to the factor sets string returned by the API
123
+ * @return {Promise&lt;FactorSetResponse&gt;} A promise that resolves to the FactorSetResponse returned by the API
121
124
  * @throws {Error} May throw an error if the API request fails
122
125
  *
123
126
  * @example
124
127
  * const factorSets = await get();
125
128
  */
126
129
  export async function get(
127
- ): Promise&lt;string&gt; {
130
+ ): Promise&lt;FactorSetResponse&gt; {
128
131
  const client = Client.getInstance();
129
132
  const url = client.getDomain() + FACTOR_SET_API_PATH;
130
133
  &nbsp;
131
- return makeApiRequest&lt;string&gt;({
134
+ return makeApiRequest&lt;FactorSetResponse&gt;({
132
135
  method: GET,
133
136
  url
134
137
  });
@@ -139,7 +142,7 @@ const client = Client.getInstance();
139
142
  <div class='footer quiet pad2 space-top1 center small'>
140
143
  Code coverage generated by
141
144
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
142
- at 2025-09-29T10:08:48.327Z
145
+ at 2025-12-11T17:06:20.018Z
143
146
  </div>
144
147
  <script src="../../prettify.js"></script>
145
148
  <script>