tesla-fleet-api 0.3.0 → 0.5.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 (342) hide show
  1. package/README.md +284 -1
  2. package/dist/_virtual/_rolldown/runtime.cjs +32 -0
  3. package/dist/_virtual/_rolldown/runtime.mjs +12 -0
  4. package/dist/bluetooth/adapters/shared.cjs +38 -0
  5. package/dist/bluetooth/adapters/shared.mjs +36 -0
  6. package/dist/bluetooth/async.cjs +121 -0
  7. package/dist/bluetooth/async.d.cts +10 -0
  8. package/dist/bluetooth/async.d.mts +10 -0
  9. package/dist/bluetooth/async.mjs +116 -0
  10. package/dist/bluetooth/broadcast.cjs +153 -0
  11. package/dist/bluetooth/broadcast.d.cts +59 -0
  12. package/dist/bluetooth/broadcast.d.mts +59 -0
  13. package/dist/bluetooth/broadcast.mjs +151 -0
  14. package/dist/bluetooth/constants.cjs +99 -0
  15. package/dist/bluetooth/constants.d.cts +70 -0
  16. package/dist/bluetooth/constants.d.mts +70 -0
  17. package/dist/bluetooth/constants.mjs +72 -0
  18. package/dist/bluetooth/esphome.cjs +292 -0
  19. package/dist/bluetooth/esphome.d.cts +83 -0
  20. package/dist/bluetooth/esphome.d.mts +83 -0
  21. package/dist/bluetooth/esphome.mjs +291 -0
  22. package/dist/bluetooth/framing.cjs +125 -0
  23. package/dist/bluetooth/framing.d.cts +45 -0
  24. package/dist/bluetooth/framing.d.mts +45 -0
  25. package/dist/bluetooth/framing.mjs +122 -0
  26. package/dist/bluetooth/homey.cjs +155 -0
  27. package/dist/bluetooth/homey.d.cts +75 -0
  28. package/dist/bluetooth/homey.d.mts +75 -0
  29. package/dist/bluetooth/homey.mjs +150 -0
  30. package/dist/bluetooth/names.cjs +24 -0
  31. package/dist/bluetooth/names.d.cts +10 -0
  32. package/dist/bluetooth/names.d.mts +10 -0
  33. package/dist/bluetooth/names.mjs +20 -0
  34. package/dist/bluetooth/noble.cjs +178 -0
  35. package/dist/bluetooth/noble.d.cts +58 -0
  36. package/dist/bluetooth/noble.d.mts +58 -0
  37. package/dist/bluetooth/noble.mjs +177 -0
  38. package/dist/bluetooth/streamglue.cjs +157 -0
  39. package/dist/bluetooth/streamglue.d.cts +37 -0
  40. package/dist/bluetooth/streamglue.d.mts +37 -0
  41. package/dist/bluetooth/streamglue.mjs +154 -0
  42. package/dist/bluetooth/teslabluetooth.cjs +67 -0
  43. package/dist/bluetooth/teslabluetooth.d.cts +41 -0
  44. package/dist/bluetooth/teslabluetooth.d.mts +41 -0
  45. package/dist/bluetooth/teslabluetooth.mjs +66 -0
  46. package/dist/bluetooth/transport.cjs +10 -0
  47. package/dist/bluetooth/transport.d.cts +95 -0
  48. package/dist/bluetooth/transport.d.mts +95 -0
  49. package/dist/bluetooth/transport.mjs +10 -0
  50. package/dist/bluetooth/vehiclebluetooth.cjs +1272 -0
  51. package/dist/bluetooth/vehiclebluetooth.d.cts +495 -0
  52. package/dist/bluetooth/vehiclebluetooth.d.mts +495 -0
  53. package/dist/bluetooth/vehiclebluetooth.mjs +1270 -0
  54. package/dist/bluetooth/verify.cjs +93 -0
  55. package/dist/bluetooth/verify.d.cts +35 -0
  56. package/dist/bluetooth/verify.d.mts +35 -0
  57. package/dist/bluetooth/verify.mjs +91 -0
  58. package/dist/bluetooth.cjs +53 -0
  59. package/dist/bluetooth.d.cts +10 -0
  60. package/dist/bluetooth.d.mts +10 -0
  61. package/dist/bluetooth.mjs +9 -0
  62. package/dist/charging.cjs +53 -0
  63. package/dist/charging.d.cts +31 -0
  64. package/dist/charging.d.mts +30 -0
  65. package/dist/charging.mjs +53 -0
  66. package/dist/commands.cjs +1797 -0
  67. package/dist/commands.d.cts +881 -0
  68. package/dist/commands.d.mts +881 -0
  69. package/dist/commands.mjs +1791 -0
  70. package/dist/const.cjs +322 -0
  71. package/dist/const.d.cts +308 -0
  72. package/dist/const.d.mts +308 -0
  73. package/dist/const.mjs +282 -0
  74. package/dist/energy.cjs +142 -0
  75. package/dist/energy.d.cts +101 -0
  76. package/dist/energy.d.mts +100 -0
  77. package/dist/energy.mjs +142 -0
  78. package/dist/energyisland.cjs +38 -0
  79. package/dist/energyisland.mjs +37 -0
  80. package/dist/energyparsers.cjs +118 -0
  81. package/dist/energyparsers.d.cts +39 -0
  82. package/dist/energyparsers.d.mts +39 -0
  83. package/dist/energyparsers.mjs +116 -0
  84. package/dist/energyspecific.cjs +457 -0
  85. package/dist/energyspecific.d.cts +258 -0
  86. package/dist/energyspecific.d.mts +258 -0
  87. package/dist/energyspecific.mjs +451 -0
  88. package/dist/exceptions.cjs +1488 -0
  89. package/dist/exceptions.d.cts +1143 -0
  90. package/dist/exceptions.d.mts +1143 -0
  91. package/dist/exceptions.mjs +1325 -0
  92. package/dist/funnel.cjs +297 -0
  93. package/dist/funnel.d.cts +118 -0
  94. package/dist/funnel.d.mts +118 -0
  95. package/dist/funnel.mjs +292 -0
  96. package/dist/index.cjs +287 -0
  97. package/dist/index.d.cts +28 -0
  98. package/dist/index.d.mts +28 -0
  99. package/dist/index.mjs +27 -0
  100. package/dist/log.cjs +75 -0
  101. package/dist/log.d.cts +4 -0
  102. package/dist/log.d.mts +4 -0
  103. package/dist/log.mjs +71 -0
  104. package/dist/oauth.cjs +143 -0
  105. package/dist/oauth.d.cts +69 -0
  106. package/dist/oauth.d.mts +69 -0
  107. package/dist/oauth.mjs +143 -0
  108. package/dist/partner.cjs +32 -0
  109. package/dist/partner.d.cts +24 -0
  110. package/dist/partner.d.mts +23 -0
  111. package/dist/partner.mjs +32 -0
  112. package/dist/powerwall/client.cjs +818 -0
  113. package/dist/powerwall/client.d.cts +297 -0
  114. package/dist/powerwall/client.d.mts +297 -0
  115. package/dist/powerwall/client.mjs +807 -0
  116. package/dist/powerwall/components.cjs +188 -0
  117. package/dist/powerwall/components.d.cts +45 -0
  118. package/dist/powerwall/components.d.mts +45 -0
  119. package/dist/powerwall/components.mjs +182 -0
  120. package/dist/powerwall/energysite.cjs +216 -0
  121. package/dist/powerwall/energysite.d.cts +104 -0
  122. package/dist/powerwall/energysite.d.mts +104 -0
  123. package/dist/powerwall/energysite.mjs +214 -0
  124. package/dist/powerwall/exceptions.cjs +59 -0
  125. package/dist/powerwall/exceptions.d.cts +38 -0
  126. package/dist/powerwall/exceptions.d.mts +38 -0
  127. package/dist/powerwall/exceptions.mjs +51 -0
  128. package/dist/powerwall/gateway.cjs +102 -0
  129. package/dist/powerwall/gateway.d.cts +57 -0
  130. package/dist/powerwall/gateway.d.mts +57 -0
  131. package/dist/powerwall/gateway.mjs +101 -0
  132. package/dist/powerwall/merge.cjs +163 -0
  133. package/dist/powerwall/merge.d.cts +63 -0
  134. package/dist/powerwall/merge.d.mts +63 -0
  135. package/dist/powerwall/merge.mjs +159 -0
  136. package/dist/powerwall/models.d.cts +95 -0
  137. package/dist/powerwall/models.d.mts +95 -0
  138. package/dist/powerwall/queries.cjs +17 -0
  139. package/dist/powerwall/queries.mjs +10 -0
  140. package/dist/powerwall/transport.cjs +232 -0
  141. package/dist/powerwall/transport.mjs +227 -0
  142. package/dist/powerwall.cjs +47 -0
  143. package/dist/powerwall.d.cts +9 -0
  144. package/dist/powerwall.d.mts +9 -0
  145. package/dist/powerwall.mjs +8 -0
  146. package/dist/router/base.cjs +203 -0
  147. package/dist/router/base.d.cts +112 -0
  148. package/dist/router/base.d.mts +112 -0
  149. package/dist/router/base.mjs +200 -0
  150. package/dist/router/energysite.cjs +65 -0
  151. package/dist/router/energysite.d.cts +47 -0
  152. package/dist/router/energysite.d.mts +47 -0
  153. package/dist/router/energysite.mjs +60 -0
  154. package/dist/router.cjs +13 -0
  155. package/dist/router.d.cts +3 -0
  156. package/dist/router.d.mts +3 -0
  157. package/dist/router.mjs +3 -0
  158. package/dist/signing/crypto.cjs +59 -0
  159. package/dist/signing/crypto.mjs +52 -0
  160. package/dist/signing/energy.cjs +123 -0
  161. package/dist/signing/energy.d.cts +45 -0
  162. package/dist/signing/energy.d.mts +45 -0
  163. package/dist/signing/energy.mjs +120 -0
  164. package/dist/signing/jws.cjs +229 -0
  165. package/dist/signing/jws.d.cts +45 -0
  166. package/dist/signing/jws.d.mts +45 -0
  167. package/dist/signing/jws.mjs +211 -0
  168. package/dist/signing/keys.cjs +191 -0
  169. package/dist/signing/keys.d.cts +21 -0
  170. package/dist/signing/keys.d.mts +21 -0
  171. package/dist/signing/keys.mjs +182 -0
  172. package/dist/signing/session.cjs +186 -0
  173. package/dist/signing/session.d.cts +106 -0
  174. package/dist/signing/session.d.mts +106 -0
  175. package/dist/signing/session.mjs +184 -0
  176. package/dist/tariff.cjs +319 -0
  177. package/dist/tariff.d.cts +40 -0
  178. package/dist/tariff.d.mts +40 -0
  179. package/dist/tariff.mjs +317 -0
  180. package/dist/teslafleetapi.cjs +326 -0
  181. package/dist/teslafleetapi.d.cts +160 -0
  182. package/dist/teslafleetapi.d.mts +160 -0
  183. package/dist/teslafleetapi.mjs +326 -0
  184. package/dist/teslemetry.cjs +183 -0
  185. package/dist/teslemetry.d.cts +113 -0
  186. package/dist/teslemetry.d.mts +113 -0
  187. package/dist/teslemetry.mjs +181 -0
  188. package/dist/teslemetryenergy.cjs +287 -0
  189. package/dist/teslemetryenergy.d.cts +154 -0
  190. package/dist/teslemetryenergy.d.mts +154 -0
  191. package/dist/teslemetryenergy.mjs +282 -0
  192. package/dist/teslemetryvehicle.cjs +407 -0
  193. package/dist/teslemetryvehicle.d.cts +238 -0
  194. package/dist/teslemetryvehicle.d.mts +238 -0
  195. package/dist/teslemetryvehicle.mjs +405 -0
  196. package/dist/tessie.cjs +71 -0
  197. package/dist/tessie.d.cts +69 -0
  198. package/dist/tessie.d.mts +69 -0
  199. package/dist/tessie.mjs +71 -0
  200. package/dist/tessievehicle.cjs +514 -0
  201. package/dist/tessievehicle.d.cts +333 -0
  202. package/dist/tessievehicle.d.mts +333 -0
  203. package/dist/tessievehicle.mjs +513 -0
  204. package/dist/types/commands.d.cts +28 -0
  205. package/dist/types/commands.d.mts +28 -0
  206. package/dist/types/live_status.d.cts +30 -0
  207. package/dist/types/live_status.d.mts +30 -0
  208. package/dist/types/products.d.cts +58 -0
  209. package/dist/types/products.d.mts +58 -0
  210. package/dist/types/responses.d.cts +13 -0
  211. package/dist/types/responses.d.mts +13 -0
  212. package/dist/types/site_info.d.cts +154 -0
  213. package/dist/types/site_info.d.mts +154 -0
  214. package/dist/types/vehicle.d.cts +33 -0
  215. package/dist/types/vehicle.d.mts +33 -0
  216. package/dist/types/vehicle_data.d.cts +278 -0
  217. package/dist/types/vehicle_data.d.mts +278 -0
  218. package/dist/types.cjs +0 -0
  219. package/dist/types.d.cts +9 -0
  220. package/dist/types.d.mts +9 -0
  221. package/dist/types.mjs +1 -0
  222. package/dist/user.cjs +28 -0
  223. package/dist/user.d.cts +17 -0
  224. package/dist/user.d.mts +16 -0
  225. package/dist/user.mjs +28 -0
  226. package/dist/util.cjs +41 -0
  227. package/dist/util.d.cts +18 -0
  228. package/dist/util.d.mts +18 -0
  229. package/dist/util.mjs +40 -0
  230. package/dist/vehicle.cjs +847 -0
  231. package/dist/vehicle.d.cts +566 -0
  232. package/dist/vehicle.d.mts +565 -0
  233. package/dist/vehicle.mjs +847 -0
  234. package/dist/vehiclesigned.cjs +35 -0
  235. package/dist/vehiclesigned.d.cts +23 -0
  236. package/dist/vehiclesigned.d.mts +22 -0
  237. package/dist/vehiclesigned.mjs +35 -0
  238. package/dist/vehiclespecific.cjs +715 -0
  239. package/dist/vehiclespecific.d.cts +497 -0
  240. package/dist/vehiclespecific.d.mts +496 -0
  241. package/dist/vehiclespecific.mjs +715 -0
  242. package/package.json +178 -38
  243. package/dist/charging.d.ts +0 -30
  244. package/dist/charging.js +0 -51
  245. package/dist/charging.js.map +0 -1
  246. package/dist/commands.d.ts +0 -352
  247. package/dist/commands.js +0 -875
  248. package/dist/commands.js.map +0 -1
  249. package/dist/energy.d.ts +0 -94
  250. package/dist/energy.js +0 -125
  251. package/dist/energy.js.map +0 -1
  252. package/dist/energyspecific.d.ts +0 -77
  253. package/dist/energyspecific.js +0 -97
  254. package/dist/energyspecific.js.map +0 -1
  255. package/dist/helpers.d.ts +0 -2
  256. package/dist/helpers.js +0 -10
  257. package/dist/helpers.js.map +0 -1
  258. package/dist/index.d.ts +0 -15
  259. package/dist/index.js +0 -15
  260. package/dist/index.js.map +0 -1
  261. package/dist/partner.d.ts +0 -23
  262. package/dist/partner.js +0 -31
  263. package/dist/partner.js.map +0 -1
  264. package/dist/signing/crypto.d.ts +0 -10
  265. package/dist/signing/crypto.js +0 -26
  266. package/dist/signing/crypto.js.map +0 -1
  267. package/dist/signing/errors.d.ts +0 -29
  268. package/dist/signing/errors.js +0 -40
  269. package/dist/signing/errors.js.map +0 -1
  270. package/dist/signing/session.d.ts +0 -69
  271. package/dist/signing/session.js +0 -102
  272. package/dist/signing/session.js.map +0 -1
  273. package/dist/tariff.d.ts +0 -29
  274. package/dist/tariff.js +0 -302
  275. package/dist/tariff.js.map +0 -1
  276. package/dist/teslafleetapi.d.ts +0 -58
  277. package/dist/teslafleetapi.js +0 -120
  278. package/dist/teslafleetapi.js.map +0 -1
  279. package/dist/teslemetry.d.ts +0 -29
  280. package/dist/teslemetry.js +0 -39
  281. package/dist/teslemetry.js.map +0 -1
  282. package/dist/tessie.d.ts +0 -23
  283. package/dist/tessie.js +0 -28
  284. package/dist/tessie.js.map +0 -1
  285. package/dist/types/commands.d.ts +0 -44
  286. package/dist/types/commands.js +0 -11
  287. package/dist/types/commands.js.map +0 -1
  288. package/dist/types/live_status.d.ts +0 -26
  289. package/dist/types/live_status.js +0 -2
  290. package/dist/types/live_status.js.map +0 -1
  291. package/dist/types/products.d.ts +0 -54
  292. package/dist/types/products.js +0 -2
  293. package/dist/types/products.js.map +0 -1
  294. package/dist/types/responses.d.ts +0 -5
  295. package/dist/types/responses.js +0 -2
  296. package/dist/types/responses.js.map +0 -1
  297. package/dist/types/site_info.d.ts +0 -150
  298. package/dist/types/site_info.js +0 -2
  299. package/dist/types/site_info.js.map +0 -1
  300. package/dist/types/vehicle.d.ts +0 -23
  301. package/dist/types/vehicle.js +0 -10
  302. package/dist/types/vehicle.js.map +0 -1
  303. package/dist/types/vehicle_data.d.ts +0 -274
  304. package/dist/types/vehicle_data.js +0 -2
  305. package/dist/types/vehicle_data.js.map +0 -1
  306. package/dist/user.d.ts +0 -16
  307. package/dist/user.js +0 -26
  308. package/dist/user.js.map +0 -1
  309. package/dist/vehicle.d.ts +0 -548
  310. package/dist/vehicle.js +0 -774
  311. package/dist/vehicle.js.map +0 -1
  312. package/dist/vehiclesigned.d.ts +0 -13
  313. package/dist/vehiclesigned.js +0 -19
  314. package/dist/vehiclesigned.js.map +0 -1
  315. package/dist/vehiclespecific.d.ts +0 -432
  316. package/dist/vehiclespecific.js +0 -601
  317. package/dist/vehiclespecific.js.map +0 -1
  318. package/src/charging.ts +0 -66
  319. package/src/commands.ts +0 -1134
  320. package/src/energy.ts +0 -217
  321. package/src/energyspecific.ts +0 -116
  322. package/src/helpers.ts +0 -11
  323. package/src/index.ts +0 -21
  324. package/src/partner.ts +0 -37
  325. package/src/signing/crypto.ts +0 -29
  326. package/src/signing/errors.ts +0 -50
  327. package/src/signing/session.ts +0 -132
  328. package/src/tariff.ts +0 -375
  329. package/src/teslafleetapi.ts +0 -182
  330. package/src/teslemetry.ts +0 -54
  331. package/src/tessie.ts +0 -42
  332. package/src/types/commands.ts +0 -62
  333. package/src/types/live_status.ts +0 -27
  334. package/src/types/products.ts +0 -61
  335. package/src/types/responses.ts +0 -1
  336. package/src/types/site_info.ts +0 -159
  337. package/src/types/vehicle.ts +0 -33
  338. package/src/types/vehicle_data.ts +0 -286
  339. package/src/user.ts +0 -35
  340. package/src/vehicle.ts +0 -886
  341. package/src/vehiclesigned.ts +0 -20
  342. package/src/vehiclespecific.ts +0 -818
@@ -0,0 +1,497 @@
1
+ import { CommandResponse, FleetTelemetryConfig } from "./types/commands.cjs";
2
+ import { AutoSeat, ClimateMode, Level, Seat, Trunk, VehicleDataEndpoint } from "./const.cjs";
3
+ import { OptionsResponse, ResponseEnvelope } from "./types/responses.cjs";
4
+ import { VehicleResponse, WakeUpOptions } from "./types/vehicle.cjs";
5
+ import { VehicleDataResponse } from "./types/vehicle_data.cjs";
6
+ import Vehicle from "./vehicle.cjs";
7
+ declare class VehicleSpecific {
8
+ parent: Vehicle;
9
+ vin: string;
10
+ model: string;
11
+ pre2021: boolean;
12
+ constructor(parent: Vehicle, vin: string);
13
+ /**
14
+ * Controls the front (which_trunk: "front") or rear (which_trunk: "rear") trunk.
15
+ * @param which_trunk "front" or "rear"
16
+ */
17
+ actuate_trunk(which_trunk: Trunk): Promise<CommandResponse>;
18
+ /**
19
+ * Adjusts vehicle media playback volume.
20
+ * @param volume A floating point number from 0.0 to 11.0.
21
+ */
22
+ adjust_volume(volume: number): Promise<CommandResponse>;
23
+ /**
24
+ * Starts climate preconditioning.
25
+ */
26
+ auto_conditioning_start(): Promise<CommandResponse>;
27
+ /**
28
+ * Stops climate preconditioning.
29
+ */
30
+ auto_conditioning_stop(): Promise<CommandResponse>;
31
+ /**
32
+ * Cancels the countdown to install the vehicle software update.
33
+ */
34
+ cancel_software_update(): Promise<CommandResponse>;
35
+ /**
36
+ * Charges in max range mode -- we recommend limiting the use of this mode to long trips.
37
+ */
38
+ charge_max_range(): Promise<CommandResponse>;
39
+ /**
40
+ * Closes the charge port door.
41
+ */
42
+ charge_port_door_close(): Promise<CommandResponse>;
43
+ /**
44
+ * Opens the charge port door.
45
+ */
46
+ charge_port_door_open(): Promise<CommandResponse>;
47
+ /**
48
+ * Charges in Standard mode.
49
+ */
50
+ charge_standard(): Promise<CommandResponse>;
51
+ /**
52
+ * Starts charging the vehicle.
53
+ */
54
+ charge_start(): Promise<CommandResponse>;
55
+ /**
56
+ * Stops charging the vehicle.
57
+ */
58
+ charge_stop(): Promise<CommandResponse>;
59
+ /**
60
+ * Deactivates PIN to Drive and resets the associated PIN for vehicles running firmware versions 2023.44+. This command is only accessible to fleet managers or owners.
61
+ * @param pin Optional four-digit PIN
62
+ */
63
+ clear_pin_to_drive_admin(pin?: string | number): Promise<CommandResponse>;
64
+ /**
65
+ * Locks the vehicle.
66
+ */
67
+ door_lock(): Promise<CommandResponse>;
68
+ /**
69
+ * Unlocks the vehicle.
70
+ */
71
+ door_unlock(): Promise<CommandResponse>;
72
+ /**
73
+ * Erases user's data from the user interface. Requires the vehicle to be in park.
74
+ */
75
+ erase_user_data(): Promise<CommandResponse>;
76
+ /**
77
+ * Briefly flashes the vehicle headlights. Requires the vehicle to be in park.
78
+ */
79
+ flash_lights(): Promise<CommandResponse>;
80
+ /**
81
+ * Restricts certain vehicle UI functionality from guest users
82
+ * @param enable `true` or `false`
83
+ */
84
+ guest_mode(enable: boolean): Promise<CommandResponse>;
85
+ /**
86
+ * Honks the vehicle horn. Requires the vehicle to be in park.
87
+ */
88
+ honk_horn(): Promise<CommandResponse>;
89
+ /**
90
+ * Advances media player to next favorite track.
91
+ */
92
+ media_next_fav(): Promise<CommandResponse>;
93
+ /**
94
+ * Advances media player to next track.
95
+ */
96
+ media_next_track(): Promise<CommandResponse>;
97
+ /**
98
+ * Advances media player to previous favorite track.
99
+ */
100
+ media_prev_fav(): Promise<CommandResponse>;
101
+ /**
102
+ * Advances media player to previous track.
103
+ */
104
+ media_prev_track(): Promise<CommandResponse>;
105
+ /**
106
+ * Toggles current play/pause state.
107
+ */
108
+ media_toggle_playback(): Promise<CommandResponse>;
109
+ /**
110
+ * Turns the volume down by one.
111
+ */
112
+ media_volume_down(): Promise<CommandResponse>;
113
+ /**
114
+ * Start navigation to given coordinates. Order can be used to specify order of multiple stops.
115
+ * @param lat Latitude
116
+ * @param lon Longitude
117
+ * @param order Order of multiple stops
118
+ */
119
+ navigation_gps_request(lat: number, lon: number, order?: number): Promise<CommandResponse>;
120
+ /**
121
+ * Sends a location to the in-vehicle navigation system.
122
+ * @param value Destination text
123
+ * @param type "share_ext_content_raw"
124
+ * @param locale ISO locale such as "en-US". Defaults to `DEFAULT_LOCALE`.
125
+ * @param timestamp_ms Defaults to now
126
+ */
127
+ navigation_request(value: string, type?: string, locale?: string | null, timestamp_ms?: number | null): Promise<CommandResponse>;
128
+ /**
129
+ * Start navigation to a supercharger.
130
+ * @param id Supercharger ID
131
+ * @param order Order of multiple stops
132
+ * @returns
133
+ */
134
+ navigation_sc_request(id: number, order?: number): Promise<CommandResponse>;
135
+ /**
136
+ * Sends a list of waypoints to the vehicle's navigation system.
137
+ * @param waypoints Comma-separated Google Maps place IDs, e.g. `"refId:ChIJ...,refId:ChIJ..."`
138
+ */
139
+ navigation_waypoints_request(waypoints: string): Promise<CommandResponse>;
140
+ /**
141
+ * Sets automatic seat heating and cooling.
142
+ * @param auto_seat_position `AutoSeat` position (1-indexed: front left is 1, front right is 2)
143
+ * @param auto_climate_on `true` or `false`
144
+ */
145
+ remote_auto_seat_climate_request(auto_seat_position: keyof typeof AutoSeat | number, auto_climate_on: boolean): Promise<CommandResponse>;
146
+ /**
147
+ * Sets automatic steering wheel heating on/off.
148
+ * @param on `true` or `false`
149
+ */
150
+ remote_auto_steering_wheel_heat_climate_request(on: boolean): Promise<CommandResponse>;
151
+ /**
152
+ * Plays a sound through the vehicle external speaker.
153
+ * @param sound Fart is `0`, Locate ping is `2000`
154
+ */
155
+ remote_boombox(sound?: number): Promise<CommandResponse>;
156
+ /**
157
+ * Sets seat cooling.
158
+ * @param seat_position `AutoSeat` position (1-indexed: front left is 1, front right is 2), unlike seat heating
159
+ * @param seat_cooler_level Cooling level
160
+ */
161
+ remote_seat_cooler_request(seat_position: keyof typeof AutoSeat | number, seat_cooler_level: Level): Promise<CommandResponse>;
162
+ /**
163
+ * Sets seat heating.
164
+ * @param seat_position Seat position
165
+ * @param seat_heater_level Heating level
166
+ */
167
+ remote_seat_heater_request(seat_position: Seat | number, seat_heater_level: Level): Promise<CommandResponse>;
168
+ /**
169
+ * Starts the vehicle remotely. Requires keyless driving to be enabled.
170
+ */
171
+ remote_start_drive(): Promise<CommandResponse>;
172
+ /**
173
+ * Sets steering wheel heat level.
174
+ * @param level Heating level
175
+ */
176
+ remote_steering_wheel_heat_level_request(level: Level): Promise<CommandResponse>;
177
+ /**
178
+ * Sets steering wheel heating on/off. For vehicles that do not support auto steering wheel heat.
179
+ * @param on `true` or `false`
180
+ */
181
+ remote_steering_wheel_heater_request(on: boolean): Promise<CommandResponse>;
182
+ /**
183
+ * Removes PIN to Drive. Requires the car to be in Pin to Drive mode and not in Valet mode. Note that this only works if PIN to Drive is not active. This command also requires the Tesla Vehicle Command Protocol - for more information, please see refer to the documentation here.
184
+ */
185
+ reset_pin_to_drive_pin(): Promise<CommandResponse>;
186
+ /**
187
+ * Removes PIN for Valet Mode.
188
+ */
189
+ reset_valet_pin(): Promise<CommandResponse>;
190
+ /**
191
+ * Schedules a vehicle software update (over the air "OTA") to be installed in the future.
192
+ * @param offset_sec Offset in seconds
193
+ */
194
+ schedule_software_update(offset_sec: number): Promise<CommandResponse>;
195
+ /**
196
+ * Turns Bioweapon Defense Mode on and off.
197
+ * @param on `true` or `false`
198
+ * @param manual_override `true` or `false`
199
+ */
200
+ set_bioweapon_mode(on: boolean, manual_override: boolean): Promise<CommandResponse>;
201
+ /**
202
+ * Sets the vehicle overheat protection.
203
+ * @param on `true` or `false`
204
+ * @param fan_only `true` or `false`
205
+ */
206
+ set_cabin_overheat_protection(on: boolean, fan_only: boolean): Promise<CommandResponse>;
207
+ /**
208
+ * Sets the vehicle's charge limit to a custom percentage.
209
+ * @param percent Charge limit percentage typically between 50-100
210
+ */
211
+ set_charge_limit(percent: number): Promise<CommandResponse>;
212
+ /**
213
+ * Sets the charge limit to the standard setting.
214
+ * @param percent Current limit in Amps typically between 5-32
215
+ */
216
+ set_charging_amps(charging_amps: number): Promise<CommandResponse>;
217
+ /**
218
+ * Enables climate keeper mode.
219
+ * @param climate_keeper_mode `0` is Off, `1` is Keep, `2` is Dog, `3` is Camp
220
+ */
221
+ set_climate_keeper_mode(climate_keeper_mode: number | ClimateMode): Promise<CommandResponse>;
222
+ /**
223
+ * Adjusts the Cabin Overheat Protection temperature (COP).
224
+ * @param cop_temp Integer representing Low (0/30C/90F), Medium (1/35C/95F), or High (2/40C/100F)
225
+ */
226
+ set_cop_temp(cop_temp: 0 | 1 | 2 | 30 | 35 | 40 | 90 | 95 | 100): Promise<CommandResponse>;
227
+ /**
228
+ * Sets a four-digit passcode for PIN to Drive. This PIN must then be entered before the vehicle can be driven.
229
+ * @param on `true` or `false`
230
+ * @param password Four-digit passcode
231
+ */
232
+ set_pin_to_drive(on: boolean, password: string | number): Promise<CommandResponse>;
233
+ /**
234
+ * Sets an override for preconditioning — it should default to empty if no override is used.
235
+ * Also known as "Defrost Mode"
236
+ * @param on `true` or `false`
237
+ * @param manual_override `true` or `false`
238
+ */
239
+ set_preconditioning_max(on: boolean, manual_override: boolean): Promise<CommandResponse>;
240
+ /**
241
+ * Sets a time at which charging should be completed. The time parameter is minutes after midnight (e.g: time=120 schedules charging for 2:00am vehicle local time).
242
+ * @param enable `true` or `false`
243
+ * @param time Minutes after midnight
244
+ */
245
+ set_scheduled_charging(enable: boolean, time: number): Promise<CommandResponse>;
246
+ /**
247
+ * Sets a time at which departure should be completed. The time parameter is minutes after midnight (e.g: time=120 schedules departure for 2:00am vehicle local time).
248
+ * @param enable `true` or `false`
249
+ * @param preconditioning_enabled `true` or `false`
250
+ * @param preconditioning_weekdays_only `true` or `false`
251
+ * @param departure_time Minutes after midnight
252
+ * @param off_peak_charging_enabled `true` or `false`
253
+ * @param off_peak_charging_weekdays_only `true` or `false`
254
+ * @param end_off_peak_time Minutes after midnight
255
+ */
256
+ set_scheduled_departure(enable?: boolean, preconditioning_enabled?: boolean, preconditioning_weekdays_only?: boolean, departure_time?: number, off_peak_charging_enabled?: boolean, off_peak_charging_weekdays_only?: boolean, end_off_peak_time?: number): Promise<CommandResponse>;
257
+ /**
258
+ * Add or modify a charging schedule. At least one of `start_time` or `end_time` is required.
259
+ * @param days_of_week Comma-joined day names (e.g. `"Mon,Wed"`, `"All"`, `"Weekdays"`) or a day bitmask
260
+ * @param enabled `true` or `false`
261
+ * @param lat Latitude of the schedule's location
262
+ * @param lon Longitude of the schedule's location
263
+ * @param start_time Minutes after midnight to start charging
264
+ * @param end_time Minutes after midnight to stop charging
265
+ * @param one_time Run the schedule only once
266
+ * @param id Schedule ID to modify an existing schedule
267
+ * @param _name Only the signed path carries a schedule name; REST accepts it for parity and does not send it
268
+ */
269
+ add_charge_schedule(days_of_week: string | number, enabled: boolean, lat: number, lon: number, start_time?: number, end_time?: number, one_time?: boolean, id?: number, _name?: string): Promise<CommandResponse>;
270
+ /**
271
+ * Add or modify a preconditioning schedule.
272
+ * @param days_of_week Comma-joined day names (e.g. `"Mon,Wed"`, `"All"`, `"Weekdays"`) or a day bitmask
273
+ * @param enabled `true` or `false`
274
+ * @param lat Latitude of the schedule's location
275
+ * @param lon Longitude of the schedule's location
276
+ * @param precondition_time Minutes after midnight to be preconditioned by
277
+ * @param id Schedule ID to modify an existing schedule
278
+ * @param one_time Run the schedule only once
279
+ * @param _name Only the signed path carries a schedule name; REST accepts it for parity and does not send it
280
+ */
281
+ add_precondition_schedule(days_of_week: string | number, enabled: boolean, lat: number, lon: number, precondition_time: number, id?: number, one_time?: boolean, _name?: string): Promise<CommandResponse>;
282
+ /**
283
+ * Removes a charging schedule.
284
+ * @param id Schedule ID
285
+ */
286
+ remove_charge_schedule(id: number): Promise<CommandResponse>;
287
+ /**
288
+ * Removes a preconditioning schedule.
289
+ * @param id Schedule ID
290
+ */
291
+ remove_precondition_schedule(id: number): Promise<CommandResponse>;
292
+ /**
293
+ * Removes charging schedules by location type.
294
+ * @param home Remove schedules at home
295
+ * @param work Remove schedules at work
296
+ * @param other Remove schedules at other locations
297
+ */
298
+ batch_remove_charge_schedules(home: boolean, work: boolean, other: boolean): Promise<CommandResponse>;
299
+ /**
300
+ * Removes preconditioning schedules by location type.
301
+ * @param home Remove schedules at home
302
+ * @param work Remove schedules at work
303
+ * @param other Remove schedules at other locations
304
+ */
305
+ batch_remove_precondition_schedules(home: boolean, work: boolean, other: boolean): Promise<CommandResponse>;
306
+ /**
307
+ * Enables and disables Sentry Mode. Sentry Mode allows customers to watch the vehicle cameras live from the mobile app, as well as record sentry events.
308
+ * @param on `true` or `false`
309
+ */
310
+ set_sentry_mode(on: boolean): Promise<CommandResponse>;
311
+ /**
312
+ * Sets the driver and/or passenger-side cabin temperature (and other zones if sync is enabled).
313
+ * @param driver_temp Driver temperature
314
+ * @param passenger_temp Passenger temperature
315
+ */
316
+ set_temps(driver_temp: number, passenger_temp: number): Promise<CommandResponse>;
317
+ /**
318
+ * Turns on Valet Mode and sets a four-digit passcode that must then be entered to disable Valet Mode.
319
+ * @param on `true` or `false`
320
+ * @param password Four-digit passcode
321
+ */
322
+ set_valet_mode(on: boolean, password?: string | number): Promise<CommandResponse>;
323
+ /**
324
+ * Changes the name of a vehicle. This command also requires the Tesla Vehicle Command Protocol - for more information, please see refer to the documentation here.
325
+ * @param vehicle_name New name
326
+ */
327
+ set_vehicle_name(vehicle_name: string): Promise<CommandResponse>;
328
+ /**
329
+ * Activates Speed Limit Mode with a four-digit PIN.
330
+ * @param pin Four-digit PIN
331
+ */
332
+ speed_limit_activate(pin: string | number): Promise<CommandResponse>;
333
+ /**
334
+ * Deactivates Speed Limit Mode and resets the associated PIN.
335
+ * @param pin Four-digit PIN
336
+ */
337
+ speed_limit_clear_pin(pin: string | number): Promise<CommandResponse>;
338
+ /**
339
+ * Deactivates Speed Limit Mode and resets the associated PIN for vehicles running firmware versions 2023.38+. This command is only accessible to fleet managers or owners.
340
+ */
341
+ speed_limit_clear_pin_admin(): Promise<CommandResponse>;
342
+ /**
343
+ * Deactivates Speed Limit Mode.
344
+ * @param pin Four-digit PIN
345
+ */
346
+ speed_limit_deactivate(pin: string | number): Promise<CommandResponse>;
347
+ /**
348
+ * Sets the maximum speed allowed when Speed Limit Mode is active.
349
+ * @param limit_mph Maximum speed in MPH
350
+ */
351
+ speed_limit_set_limit(limit_mph: number): Promise<CommandResponse>;
352
+ /**
353
+ * Controls the panoramic sunroof on the Model S.
354
+ * @param state "stop", "close" or "vent"
355
+ */
356
+ sun_roof_control(state: "stop" | "close" | "vent"): Promise<CommandResponse>;
357
+ /**
358
+ * Records a drive note. The note parameter is truncated to 80 characters in length.
359
+ * @param note Drive note
360
+ */
361
+ take_drivenote(note: string): Promise<CommandResponse>;
362
+ /**
363
+ * Turns on HomeLink (used to open and close garage doors).
364
+ * @param token
365
+ * @param lat Latitude
366
+ * @param lon Longitude
367
+ */
368
+ trigger_homelink(token?: string, lat?: number, lon?: number): Promise<CommandResponse>;
369
+ /**
370
+ * Upcoming calendar entries stored on the vehicle.
371
+ * @param calendar_data Calendar data
372
+ */
373
+ upcoming_calendar_entries(calendar_data: string): Promise<CommandResponse>;
374
+ /**
375
+ * Control the windows of a parked vehicle. Supported commands: vent and close. When closing, specify lat and lon of user to ensure they are within range of vehicle (unless this is an M3 platform vehicle).
376
+ * @param command "vent" or "close"
377
+ * @param lat Latitude
378
+ * @param lon Longitude
379
+ */
380
+ window_control(command: "vent" | "close", lat?: number, lon?: number): Promise<CommandResponse>;
381
+ /**
382
+ * Returns all allowed drivers for a vehicle. This endpoint is only available for the vehicle owner.
383
+ */
384
+ drivers(): Promise<ResponseEnvelope<Record<string, any>[]>>;
385
+ /**
386
+ * Removes driver access from a vehicle. Share users can only remove their own access. Owners can remove share access or their own.
387
+ * @param share_user_id
388
+ */
389
+ drivers_remove(share_user_id?: string | number): Promise<Record<string, any>>;
390
+ /**
391
+ * Returns eligible vehicle subscriptions.
392
+ * @param vin Vehicle Identification Number
393
+ */
394
+ eligible_subscriptions(): Promise<Record<string, any>>;
395
+ /**
396
+ * Returns eligibile vehicle upgrades.
397
+ * @param vin Vehicle Identification Number
398
+ */
399
+ eligible_upgrades(): Promise<Record<string, any>>;
400
+ /**
401
+ * Checks whether vehicles can accept Tesla commands protocol for the partner's public key
402
+ * @param vins list of Vehicle Identification Number
403
+ * @returns
404
+ */
405
+ fleet_status(): Promise<Record<string, any>>;
406
+ /**
407
+ * Configures vehicles to connect to self-hosted fleet-telemetry server. This endpoint has concurrency 1 (status 429 will be returned if many calls are made at the same time). Multiple vehicles can be configured with a single call.
408
+ * @param config A dictionary description the fleet telemetry configuration
409
+ * @returns
410
+ */
411
+ fleet_telemetry_config_create(config: FleetTelemetryConfig["config"]): Promise<Record<string, any>>;
412
+ /**
413
+ * Configures fleet telemetry with a Tesla.SS256-signed JWS token, signed by the partner's registered command key.
414
+ * @param vins Vehicle Identification Numbers to configure
415
+ * @param token JWS token wrapping the fleet telemetry configuration
416
+ */
417
+ fleet_telemetry_config_jws(vins: string[], token: string): Promise<Record<string, any>>;
418
+ /**
419
+ * Disconnects vehicles to stream telemetry data to self hosted fleet-telemetry server.
420
+ * @returns
421
+ */
422
+ fleet_telemetry_config_delete(): Promise<Record<string, any>>;
423
+ /**
424
+ * Fetches a vehicle's fleet telemetry config. synced set to true means the vehicle has adopted the target config. synced set to false means the vehicle will attempt to adopt the target config when it next establishes a backend connection.
425
+ * @returns
426
+ */
427
+ fleet_telemetry_config_get(): Promise<Record<string, any>>;
428
+ /**
429
+ * Returns whether or not mobile access is enabled for the vehicle.
430
+ */
431
+ mobile_enabled(): Promise<Record<string, any>>;
432
+ /**
433
+ * Returns the charging sites near the current location of the vehicle.
434
+ * @param count
435
+ * @param radius
436
+ * @param detail
437
+ */
438
+ nearby_charging_sites(count?: number, radius?: number, detail?: boolean): Promise<Record<string, any>>;
439
+ /**
440
+ * Returns vehicle option details.
441
+ * @param vin Vehicle Identification Number
442
+ */
443
+ options(_vin: string): Promise<OptionsResponse>;
444
+ /**
445
+ * List of recent alerts
446
+ */
447
+ recent_alerts(): Promise<Record<string, any>>;
448
+ /**
449
+ * Returns firmware release notes.
450
+ * @param staged
451
+ * @param language
452
+ */
453
+ release_notes(staged?: boolean, language?: string): Promise<Record<string, any>>;
454
+ /**
455
+ * Returns service data.
456
+ */
457
+ service_data(): Promise<Record<string, any>>;
458
+ /**
459
+ * Returns the share invites for a vehicle.
460
+ */
461
+ share_invites(): Promise<Record<string, any>>;
462
+ /**
463
+ * Creates a share invite for a vehicle.
464
+ */
465
+ share_invites_create(): Promise<Record<string, any>>;
466
+ /**
467
+ * Revokes a share invite.
468
+ * @param id
469
+ */
470
+ share_invites_revoke(id: string): Promise<Record<string, any>>;
471
+ /**
472
+ * Signed Commands is a generic endpoint replacing legacy commands.
473
+ * @param routable_message
474
+ */
475
+ signed_command(routable_message: string): Promise<Record<string, any>>;
476
+ /**
477
+ * Returns information about a vehicle.
478
+ */
479
+ vehicle(): Promise<ResponseEnvelope<VehicleResponse>>;
480
+ /**
481
+ * Makes a live call to the vehicle. This may return cached data if the vehicle is offline. For vehicles running firmware versions 2023.38+, location_data is required to fetch vehicle location. This will result in a location sharing icon to show on the vehicle UI.
482
+ * @param endpoints
483
+ */
484
+ vehicle_data(endpoints?: VehicleDataEndpoint[] | string): Promise<ResponseEnvelope<VehicleDataResponse>>;
485
+ /**
486
+ * Wakes the vehicle from sleep, which is a state to minimize idle energy consumption.
487
+ * @param options.wait Poll `vehicle()` until the vehicle reports `online`, raising `VehicleOffline` at the deadline
488
+ * @param options.timeoutMs Deadline for `wait`, in milliseconds (default 60000)
489
+ */
490
+ wake_up(options?: WakeUpOptions): Promise<ResponseEnvelope<VehicleResponse>>;
491
+ /**
492
+ * Returns warranty details.
493
+ * @param vin
494
+ */
495
+ warranty_details(): Promise<Record<string, any>>;
496
+ }
497
+ export = VehicleSpecific;