@kusinta/iot-schema 0.2.0-beta.5 → 0.2.0-beta.50

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 (69) hide show
  1. package/package.json +13 -1
  2. package/src/kusinta/iot/access/v1/acl_pb.d.ts +138 -2
  3. package/src/kusinta/iot/access/v1/acl_pb.js +19 -2
  4. package/src/kusinta/iot/access/v1/roles_pb.d.ts +160 -4
  5. package/src/kusinta/iot/access/v1/roles_pb.js +128 -5
  6. package/src/kusinta/iot/accountlink/v1/account_link_pb.d.ts +591 -0
  7. package/src/kusinta/iot/accountlink/v1/account_link_pb.js +160 -0
  8. package/src/kusinta/iot/climate/v1/climate_pb.d.ts +1492 -0
  9. package/src/kusinta/iot/climate/v1/climate_pb.js +278 -0
  10. package/src/kusinta/iot/commissioning/v1/commissioning_pb.d.ts +1344 -0
  11. package/src/kusinta/iot/commissioning/v1/commissioning_pb.js +282 -0
  12. package/src/kusinta/iot/common/v1/pairing_pb.d.ts +217 -0
  13. package/src/kusinta/iot/common/v1/pairing_pb.js +50 -0
  14. package/src/kusinta/iot/common/v1/types_pb.d.ts +235 -0
  15. package/src/kusinta/iot/common/v1/types_pb.js +84 -2
  16. package/src/kusinta/iot/connector/v1/connector_pb.d.ts +874 -3
  17. package/src/kusinta/iot/connector/v1/connector_pb.js +126 -13
  18. package/src/kusinta/iot/device/v1/cluster_state_pb.d.ts +213 -1
  19. package/src/kusinta/iot/device/v1/cluster_state_pb.js +37 -2
  20. package/src/kusinta/iot/device/v1/descriptor_pb.d.ts +32 -4
  21. package/src/kusinta/iot/device/v1/descriptor_pb.js +2 -1
  22. package/src/kusinta/iot/device/v1/device_event_pb.d.ts +89 -5
  23. package/src/kusinta/iot/device/v1/device_event_pb.js +1 -1
  24. package/src/kusinta/iot/device/v1/device_pb.d.ts +426 -11
  25. package/src/kusinta/iot/device/v1/device_pb.js +74 -2
  26. package/src/kusinta/iot/device/v1/properties_pb.d.ts +26 -5
  27. package/src/kusinta/iot/device/v1/properties_pb.js +1 -1
  28. package/src/kusinta/iot/device/v1/property_update_pb.d.ts +42 -2
  29. package/src/kusinta/iot/device/v1/property_update_pb.js +2 -1
  30. package/src/kusinta/iot/heating/v1/heating_pb.d.ts +656 -0
  31. package/src/kusinta/iot/heating/v1/heating_pb.js +119 -0
  32. package/src/kusinta/iot/link/v1/link_pb.d.ts +438 -0
  33. package/src/kusinta/iot/link/v1/link_pb.js +121 -0
  34. package/src/kusinta/iot/registration/v1/registration_pb.d.ts +18 -0
  35. package/src/kusinta/iot/registration/v1/registration_pb.js +1 -1
  36. package/src/kusinta/iot/reporting/v1/reporting_pb.d.ts +1251 -0
  37. package/src/kusinta/iot/reporting/v1/reporting_pb.js +238 -0
  38. package/src/kusinta/iot/reporting/v1/reporting_service_pb.d.ts +63 -0
  39. package/src/kusinta/iot/reporting/v1/reporting_service_pb.js +24 -0
  40. package/src/kusinta/iot/signaling/v1/signaling_pb.d.ts +936 -7
  41. package/src/kusinta/iot/signaling/v1/signaling_pb.js +163 -4
  42. package/src/kusinta/iot/signaling/v1/signaling_service_pb.d.ts +24 -1
  43. package/src/kusinta/iot/signaling/v1/signaling_service_pb.js +1 -1
  44. package/src/kusinta/iot/space/v1/space_pb.d.ts +146 -2
  45. package/src/kusinta/iot/space/v1/space_pb.js +10 -1
  46. package/src/kusinta/iot/vendor/homematic/v1/homematic_pb.d.ts +15 -0
  47. package/src/kusinta/iot/vendor/homematic/v1/homematic_pb.js +1 -1
  48. package/src/kusinta/iot/vendor/lorawan/v1/lorawan_pb.d.ts +69 -0
  49. package/src/kusinta/iot/vendor/lorawan/v1/lorawan_pb.js +19 -0
  50. package/src/kusinta/iot/vendor/v1/vendor_options_pb.d.ts +5 -4
  51. package/src/kusinta/iot/vendor/v1/vendor_options_pb.js +5 -4
  52. package/src/kusinta/iot/webrtc/v1/app_token_pb.d.ts +48 -5
  53. package/src/kusinta/iot/webrtc/v1/app_token_pb.js +1 -1
  54. package/src/kusinta/iot/webrtc/v1/command_pb.d.ts +56 -0
  55. package/src/kusinta/iot/webrtc/v1/command_pb.js +1 -1
  56. package/src/kusinta/iot/webrtc/v1/device_state_pb.d.ts +179 -5
  57. package/src/kusinta/iot/webrtc/v1/device_state_pb.js +34 -5
  58. package/src/kusinta/iot/webrtc/v1/envelope_pb.d.ts +732 -3
  59. package/src/kusinta/iot/webrtc/v1/envelope_pb.js +84 -4
  60. package/src/kusinta/iot/webrtc/v1/household_pb.d.ts +612 -0
  61. package/src/kusinta/iot/webrtc/v1/household_pb.js +134 -0
  62. package/src/kusinta/iot/webrtc/v1/invite_pb.d.ts +502 -0
  63. package/src/kusinta/iot/webrtc/v1/invite_pb.js +108 -0
  64. package/src/kusinta/iot/webrtc/v1/management_pb.d.ts +2149 -76
  65. package/src/kusinta/iot/webrtc/v1/management_pb.js +311 -5
  66. package/src/kusinta/iot/webrtc/v1/members_pb.d.ts +582 -0
  67. package/src/kusinta/iot/webrtc/v1/members_pb.js +113 -0
  68. package/src/kusinta/iot/webrtc/v1/permission_push_pb.d.ts +66 -4
  69. package/src/kusinta/iot/webrtc/v1/permission_push_pb.js +9 -1
@@ -0,0 +1,612 @@
1
+ // @generated by protoc-gen-es v2.12.0 with parameter "target=js+dts,import_extension=js"
2
+ // @generated from file kusinta/iot/webrtc/v1/household.proto (package kusinta.iot.webrtc.v1, syntax proto3)
3
+ /* eslint-disable */
4
+
5
+ import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
6
+ import type { Message } from "@bufbuild/protobuf";
7
+ import type { SpaceId, UserId } from "../../identity/v1/identity_pb.js";
8
+ import type { Timestamp } from "@bufbuild/protobuf/wkt";
9
+ import type { ApartmentClimateSummary, RoomClimateList, RoomHistory } from "../../climate/v1/climate_pb.js";
10
+ import type { CommissioningProfile } from "../../commissioning/v1/commissioning_pb.js";
11
+ import type { HeatingLayout } from "../../heating/v1/heating_pb.js";
12
+
13
+ /**
14
+ * Describes the file kusinta/iot/webrtc/v1/household.proto.
15
+ */
16
+ export declare const file_kusinta_iot_webrtc_v1_household: GenFile;
17
+
18
+ /**
19
+ * Makes a household admin of a home a resident again, at once; their residency continues
20
+ * (access.v1.MembershipRelation, HOUSEHOLD ADMIN). Answered with ManagementAck.
21
+ *
22
+ * A household admin of the home only; anyone else is refused as NOT_ENTITLED. user_id is
23
+ * never a residency id (INVALID_REQUEST). A resident of the home who is not a household admin
24
+ * is acknowledged and nothing changes; anyone else is "not_a_member", as members.proto has it.
25
+ * A demotion that would leave the home with no household admin is refused as
26
+ * "last_household_admin" (LAST ADMIN). Ends, with the demotion, the promotion requests the
27
+ * demoted member made for the home and the household invites they created there, with the
28
+ * join requests those invites made.
29
+ *
30
+ * @generated from message kusinta.iot.webrtc.v1.DemoteHouseholdAdmin
31
+ */
32
+ export declare type DemoteHouseholdAdmin = Message<"kusinta.iot.webrtc.v1.DemoteHouseholdAdmin"> & {
33
+ /**
34
+ * @generated from field: kusinta.iot.identity.v1.SpaceId home_id = 1;
35
+ */
36
+ homeId?: SpaceId | undefined;
37
+
38
+ /**
39
+ * @generated from field: kusinta.iot.identity.v1.UserId user_id = 2;
40
+ */
41
+ userId?: UserId | undefined;
42
+ };
43
+
44
+ /**
45
+ * Describes the message kusinta.iot.webrtc.v1.DemoteHouseholdAdmin.
46
+ * Use `create(DemoteHouseholdAdminSchema)` to create a new message.
47
+ */
48
+ export declare const DemoteHouseholdAdminSchema: GenMessage<DemoteHouseholdAdmin>;
49
+
50
+ /**
51
+ * One staff appointment of a household admin of a home, as its residents are told it.
52
+ *
53
+ * @generated from message kusinta.iot.webrtc.v1.StaffAppointment
54
+ */
55
+ export declare type StaffAppointment = Message<"kusinta.iot.webrtc.v1.StaffAppointment"> & {
56
+ /**
57
+ * The resident appointed.
58
+ *
59
+ * @generated from field: kusinta.iot.identity.v1.UserId appointee = 1;
60
+ */
61
+ appointee?: UserId | undefined;
62
+
63
+ /**
64
+ * The staff member who appointed them, and the name they gave their account
65
+ * (AppTokenClaims.name) as the gateway last learnt it; empty when none is learnt. Both are
66
+ * cleared once that account is deleted or removed from the gateway, when the record stays
67
+ * without them. Self-chosen, as MemberDetail.name is.
68
+ *
69
+ * @generated from field: kusinta.iot.identity.v1.UserId appointed_by = 2;
70
+ */
71
+ appointedBy?: UserId | undefined;
72
+
73
+ /**
74
+ * @generated from field: string appointed_by_name = 3;
75
+ */
76
+ appointedByName: string;
77
+
78
+ /**
79
+ * When the appointment took effect: the redeem, or the acceptance.
80
+ *
81
+ * @generated from field: google.protobuf.Timestamp at = 4;
82
+ */
83
+ at?: Timestamp | undefined;
84
+
85
+ /**
86
+ * @generated from field: kusinta.iot.webrtc.v1.StaffAppointmentKind kind = 5;
87
+ */
88
+ kind: StaffAppointmentKind;
89
+ };
90
+
91
+ /**
92
+ * Describes the message kusinta.iot.webrtc.v1.StaffAppointment.
93
+ * Use `create(StaffAppointmentSchema)` to create a new message.
94
+ */
95
+ export declare const StaffAppointmentSchema: GenMessage<StaffAppointment>;
96
+
97
+ /**
98
+ * Starts the handover of one home (HANDOVER, 1), answered with the HouseholdHandover, PENDING.
99
+ * Anyone HANDOVER does not name is refused as NOT_ENTITLED. A space that is not an apartment is
100
+ * INVALID_REQUEST. Starting one while one is pending answers the pending one and starts
101
+ * nothing.
102
+ *
103
+ * @generated from message kusinta.iot.webrtc.v1.StartHouseholdHandover
104
+ */
105
+ export declare type StartHouseholdHandover = Message<"kusinta.iot.webrtc.v1.StartHouseholdHandover"> & {
106
+ /**
107
+ * @generated from field: kusinta.iot.identity.v1.SpaceId home_id = 1;
108
+ */
109
+ homeId?: SpaceId | undefined;
110
+ };
111
+
112
+ /**
113
+ * Describes the message kusinta.iot.webrtc.v1.StartHouseholdHandover.
114
+ * Use `create(StartHouseholdHandoverSchema)` to create a new message.
115
+ */
116
+ export declare const StartHouseholdHandoverSchema: GenMessage<StartHouseholdHandover>;
117
+
118
+ /**
119
+ * Confirms a pending handover (HANDOVER, 3–4; VACANCY). Answered with ManagementAck once every
120
+ * membership of the home has ended; the wipe follows, and the handover is pushed as DONE.
121
+ * Staff confirming before staff_confirmable_from are refused as FAILED_PRECONDITION with
122
+ * metadata {"reason": "notice_running"}. A handover that is not pending, or that the caller
123
+ * may not confirm, is refused as NOT_ENTITLED, so that no handover id can be probed.
124
+ *
125
+ * @generated from message kusinta.iot.webrtc.v1.ConfirmHouseholdHandover
126
+ */
127
+ export declare type ConfirmHouseholdHandover = Message<"kusinta.iot.webrtc.v1.ConfirmHouseholdHandover"> & {
128
+ /**
129
+ * @generated from field: string handover_id = 1;
130
+ */
131
+ handoverId: string;
132
+ };
133
+
134
+ /**
135
+ * Describes the message kusinta.iot.webrtc.v1.ConfirmHouseholdHandover.
136
+ * Use `create(ConfirmHouseholdHandoverSchema)` to create a new message.
137
+ */
138
+ export declare const ConfirmHouseholdHandoverSchema: GenMessage<ConfirmHouseholdHandover>;
139
+
140
+ /**
141
+ * Cancels a pending handover (HANDOVER, 3); nothing has changed, and nothing does. Answered
142
+ * with ManagementAck, and pushed as CANCELLED. A vacated one is refused as FAILED_PRECONDITION
143
+ * with metadata {"reason": "vacated"} (VACANCY). A handover that is not pending, or that the
144
+ * caller may not cancel, is refused as NOT_ENTITLED.
145
+ *
146
+ * @generated from message kusinta.iot.webrtc.v1.CancelHouseholdHandover
147
+ */
148
+ export declare type CancelHouseholdHandover = Message<"kusinta.iot.webrtc.v1.CancelHouseholdHandover"> & {
149
+ /**
150
+ * @generated from field: string handover_id = 1;
151
+ */
152
+ handoverId: string;
153
+ };
154
+
155
+ /**
156
+ * Describes the message kusinta.iot.webrtc.v1.CancelHouseholdHandover.
157
+ * Use `create(CancelHouseholdHandoverSchema)` to create a new message.
158
+ */
159
+ export declare const CancelHouseholdHandoverSchema: GenMessage<CancelHouseholdHandover>;
160
+
161
+ /**
162
+ * Lists the pending handovers of the homes under a space the caller may be told of, answered
163
+ * with HouseholdHandovers: unset root_space_id, every one. A home's handover is told to its
164
+ * residents, and to the property owner and the gateway administrators who reach it; a
165
+ * vacated one to the departing household instead of residents (VACANCY). Anyone may
166
+ * ask; nobody is refused, and a caller told of none gets none.
167
+ *
168
+ * @generated from message kusinta.iot.webrtc.v1.ListHouseholdHandovers
169
+ */
170
+ export declare type ListHouseholdHandovers = Message<"kusinta.iot.webrtc.v1.ListHouseholdHandovers"> & {
171
+ /**
172
+ * @generated from field: kusinta.iot.identity.v1.SpaceId root_space_id = 1;
173
+ */
174
+ rootSpaceId?: SpaceId | undefined;
175
+ };
176
+
177
+ /**
178
+ * Describes the message kusinta.iot.webrtc.v1.ListHouseholdHandovers.
179
+ * Use `create(ListHouseholdHandoversSchema)` to create a new message.
180
+ */
181
+ export declare const ListHouseholdHandoversSchema: GenMessage<ListHouseholdHandovers>;
182
+
183
+ /**
184
+ * One handover of one home (HANDOVER), as told to one caller.
185
+ *
186
+ * The answer to StartHouseholdHandover, and pushed as GatewayMessage.household_handover to
187
+ * every session it is told to (ListHouseholdHandovers) whenever it is started, cancelled or
188
+ * done, or its staff_confirmable_from moves: to the household, the notice. A DONE push
189
+ * reaches the household's sessions before they lose the home.
190
+ *
191
+ * @generated from message kusinta.iot.webrtc.v1.HouseholdHandover
192
+ */
193
+ export declare type HouseholdHandover = Message<"kusinta.iot.webrtc.v1.HouseholdHandover"> & {
194
+ /**
195
+ * Minted by the gateway, opaque.
196
+ *
197
+ * @generated from field: string handover_id = 1;
198
+ */
199
+ handoverId: string;
200
+
201
+ /**
202
+ * @generated from field: kusinta.iot.identity.v1.SpaceId home_id = 2;
203
+ */
204
+ homeId?: SpaceId | undefined;
205
+
206
+ /**
207
+ * @generated from field: kusinta.iot.webrtc.v1.HouseholdHandoverState state = 3;
208
+ */
209
+ state: HouseholdHandoverState;
210
+
211
+ /**
212
+ * Who started it, and the name they gave their account (AppTokenClaims.name) as the gateway
213
+ * last learnt it. Given to the household; to anyone else only when started_by_staff, and
214
+ * unset otherwise, since a resident's user id would say where they live. The name is
215
+ * self-chosen, as MemberDetail.name is.
216
+ *
217
+ * @generated from field: kusinta.iot.identity.v1.UserId started_by = 4;
218
+ */
219
+ startedBy?: UserId | undefined;
220
+
221
+ /**
222
+ * @generated from field: string started_by_name = 5;
223
+ */
224
+ startedByName: string;
225
+
226
+ /**
227
+ * Set when the property owner or a gateway administrator started it, rather than the
228
+ * household. Neither this nor started_by is set when it was vacated.
229
+ *
230
+ * @generated from field: bool started_by_staff = 6;
231
+ */
232
+ startedByStaff: boolean;
233
+
234
+ /**
235
+ * @generated from field: google.protobuf.Timestamp started_at = 7;
236
+ */
237
+ startedAt?: Timestamp | undefined;
238
+
239
+ /**
240
+ * From when the property owner or a gateway administrator may confirm it, and when a vacated
241
+ * one completes on its own: 7 days after started_at, and never sooner than 7 days after the
242
+ * home's last residency ended. On a handover that is not vacated, a residency that starts
243
+ * while it is pending moves it to 7 days after that, and the handover is pushed again, so
244
+ * that a household that moves in during it has its notice too; on a vacated one, a new
245
+ * household moving in completes it instead (QUICK TURNOVER).
246
+ *
247
+ * @generated from field: google.protobuf.Timestamp staff_confirmable_from = 8;
248
+ */
249
+ staffConfirmableFrom?: Timestamp | undefined;
250
+
251
+ /**
252
+ * When it was cancelled or done. Unset while pending.
253
+ *
254
+ * @generated from field: google.protobuf.Timestamp ended_at = 9;
255
+ */
256
+ endedAt?: Timestamp | undefined;
257
+
258
+ /**
259
+ * Set when the home's last residency ending started it, rather than a request (VACANCY).
260
+ *
261
+ * @generated from field: bool vacated = 10;
262
+ */
263
+ vacated: boolean;
264
+
265
+ /**
266
+ * Set by the gateway per session: the session's user is a member of the household the
267
+ * handover is about — the home's residents while it is not vacated, the departing household
268
+ * (VACANCY) while it is. Someone who is both staff and in that household is told both, so a
269
+ * client offers them the household's export, and with recipient_household_admin its
270
+ * confirmation, as well as what staff may do, rather than guessing from roles which of the
271
+ * two they are.
272
+ *
273
+ * @generated from field: bool recipient_in_household = 11;
274
+ */
275
+ recipientInHousehold: boolean;
276
+
277
+ /**
278
+ * Set by the gateway per session: the session's user may confirm the handover as a household
279
+ * admin — a household admin of the home now, or, for a vacated one, one of the departing
280
+ * household's admins (VACANCY). A client offers confirmation on this, not on
281
+ * recipient_in_household, which a plain resident holds too.
282
+ *
283
+ * @generated from field: bool recipient_household_admin = 12;
284
+ */
285
+ recipientHouseholdAdmin: boolean;
286
+
287
+ /**
288
+ * Set whenever a handover is or becomes vacated, from the push that tells it so — one started
289
+ * vacated, or a pending one the last residency ending makes vacated (VACANCY): a new resident
290
+ * filed by staff may end it early, no sooner than 24 hours after the last residency ended
291
+ * (QUICK TURNOVER), so the departing household's export window runs until
292
+ * staff_confirmable_from or until then, whichever is first. An app says so
293
+ * from this field rather than from vacated, so that a handover from a gateway that predates
294
+ * it, which ends no notice early, is not misdescribed.
295
+ *
296
+ * @generated from field: bool may_end_on_move_in = 13;
297
+ */
298
+ mayEndOnMoveIn: boolean;
299
+
300
+ /**
301
+ * Set on a vacated handover done early because the property owner or a gateway administrator
302
+ * filed a new resident (QUICK TURNOVER); ended_at says when. Unset on every other.
303
+ *
304
+ * @generated from field: bool ended_by_move_in = 14;
305
+ */
306
+ endedByMoveIn: boolean;
307
+ };
308
+
309
+ /**
310
+ * Describes the message kusinta.iot.webrtc.v1.HouseholdHandover.
311
+ * Use `create(HouseholdHandoverSchema)` to create a new message.
312
+ */
313
+ export declare const HouseholdHandoverSchema: GenMessage<HouseholdHandover>;
314
+
315
+ /**
316
+ * Erases a home's climate history (CLIMATE HISTORY), in one step, all of it or none, and
317
+ * nothing else. Answered with ManagementAck once it is erased. A household admin of the home
318
+ * only (HOUSEHOLD ADMIN, ADMIN-LESS HOME), and so not the departing household of a vacated
319
+ * handover (VACANCY); anyone else is refused as NOT_ENTITLED. home_id must be an apartment
320
+ * (INVALID_REQUEST otherwise).
321
+ *
322
+ * All of it goes, whenever it was recorded: also what the caller may not read themselves, from
323
+ * before their residency. Every resident of the home loses it, not only the caller, and each is
324
+ * told (ClimateHistoryCleared). Nothing recorded before the clear is kept, or recorded at or
325
+ * after it, a late write included: room history begins again with the first bucket that starts
326
+ * at or after the clear, and the summary of each length with its first period that starts at or
327
+ * after the clear; the gateway learns its models and makes its plans afresh from what is
328
+ * recorded at or after it. The household's members, the home's rooms and their settings, its
329
+ * modes, its commissioning and its heating records stay. It cannot be undone, and the gateway
330
+ * keeps no copy: an app asks its user to confirm, saying that everyone in the home loses it, and
331
+ * offers the household's export (EXPORT) first. Later parts of an export under way give nothing
332
+ * that was erased.
333
+ *
334
+ * The clear is pushed as ClimateHistoryCleared to every session of the home's residents, the
335
+ * caller's included, before the acknowledgement.
336
+ *
337
+ * The summaries are erased for everyone they are given to, so the property owner, the gateway
338
+ * administrators and whoever else is given the apartment's summary as service
339
+ * (PrivacyDisclosure.climate_summary_period) lose its periods from before the clear too, and
340
+ * are given none until the first period that starts at or after it has closed.
341
+ *
342
+ * @generated from message kusinta.iot.webrtc.v1.ClearClimateHistory
343
+ */
344
+ export declare type ClearClimateHistory = Message<"kusinta.iot.webrtc.v1.ClearClimateHistory"> & {
345
+ /**
346
+ * @generated from field: kusinta.iot.identity.v1.SpaceId home_id = 1;
347
+ */
348
+ homeId?: SpaceId | undefined;
349
+ };
350
+
351
+ /**
352
+ * Describes the message kusinta.iot.webrtc.v1.ClearClimateHistory.
353
+ * Use `create(ClearClimateHistorySchema)` to create a new message.
354
+ */
355
+ export declare const ClearClimateHistorySchema: GenMessage<ClearClimateHistory>;
356
+
357
+ /**
358
+ * A home's climate history was cleared (ClearClimateHistory), pushed as
359
+ * GatewayMessage.climate_history_cleared to the sessions of its residents. An app drops on
360
+ * arrival every room history, climate summary and device event of the home it holds from before
361
+ * cleared_at, rather than keeping what the gateway no longer does, and keeps cleared_at as a
362
+ * lasting floor for the home: a sample, period or event dated before it that arrives later — an
363
+ * answer already in flight at the clear — is dropped on arrival too. The push is the live
364
+ * signal; a session that was not up for it reads the same floor from the apartment
365
+ * (space.v1.Space.climate_history_cleared_at). Nobody else is told: whoever is given the
366
+ * apartment's summary as service learns of it by reading it.
367
+ *
368
+ * @generated from message kusinta.iot.webrtc.v1.ClimateHistoryCleared
369
+ */
370
+ export declare type ClimateHistoryCleared = Message<"kusinta.iot.webrtc.v1.ClimateHistoryCleared"> & {
371
+ /**
372
+ * @generated from field: kusinta.iot.identity.v1.SpaceId home_id = 1;
373
+ */
374
+ homeId?: SpaceId | undefined;
375
+
376
+ /**
377
+ * @generated from field: google.protobuf.Timestamp cleared_at = 2;
378
+ */
379
+ clearedAt?: Timestamp | undefined;
380
+ };
381
+
382
+ /**
383
+ * Describes the message kusinta.iot.webrtc.v1.ClimateHistoryCleared.
384
+ * Use `create(ClimateHistoryClearedSchema)` to create a new message.
385
+ */
386
+ export declare const ClimateHistoryClearedSchema: GenMessage<ClimateHistoryCleared>;
387
+
388
+ /**
389
+ * Sets the household's own name for its home (space.v1.Space.home_name). Answered with
390
+ * ManagementAck. Any resident of the home may — a name is not governance, so it is not kept to
391
+ * household admins; anyone else is refused as NOT_ENTITLED. home_id must be an apartment
392
+ * (INVALID_REQUEST otherwise). The name is trimmed; empty clears it, and one longer than 64
393
+ * characters is refused as INVALID_REQUEST with metadata {"reason": "home_name"}. It never
394
+ * changes the apartment's own name (space.v1.Space.name), and it is wiped at the home's
395
+ * handover.
396
+ *
397
+ * @generated from message kusinta.iot.webrtc.v1.SetHomeName
398
+ */
399
+ export declare type SetHomeName = Message<"kusinta.iot.webrtc.v1.SetHomeName"> & {
400
+ /**
401
+ * @generated from field: kusinta.iot.identity.v1.SpaceId home_id = 1;
402
+ */
403
+ homeId?: SpaceId | undefined;
404
+
405
+ /**
406
+ * @generated from field: string name = 2;
407
+ */
408
+ name: string;
409
+ };
410
+
411
+ /**
412
+ * Describes the message kusinta.iot.webrtc.v1.SetHomeName.
413
+ * Use `create(SetHomeNameSchema)` to create a new message.
414
+ */
415
+ export declare const SetHomeNameSchema: GenMessage<SetHomeName>;
416
+
417
+ /**
418
+ * The answer to ListHouseholdHandovers.
419
+ *
420
+ * @generated from message kusinta.iot.webrtc.v1.HouseholdHandovers
421
+ */
422
+ export declare type HouseholdHandovers = Message<"kusinta.iot.webrtc.v1.HouseholdHandovers"> & {
423
+ /**
424
+ * @generated from field: repeated kusinta.iot.webrtc.v1.HouseholdHandover handovers = 1;
425
+ */
426
+ handovers: HouseholdHandover[];
427
+ };
428
+
429
+ /**
430
+ * Describes the message kusinta.iot.webrtc.v1.HouseholdHandovers.
431
+ * Use `create(HouseholdHandoversSchema)` to create a new message.
432
+ */
433
+ export declare const HouseholdHandoversSchema: GenMessage<HouseholdHandovers>;
434
+
435
+ /**
436
+ * Asks for one part of a home's export (EXPORT), answered with a HouseholdExport. The first
437
+ * part is asked with no part_token, and each further one with the next_part_token of the part
438
+ * before, until one comes with none. The home's residents only, and during a vacated handover
439
+ * the departing household, holding nothing recorded after their residency ended (VACANCY);
440
+ * anyone else is refused as NOT_ENTITLED.
441
+ *
442
+ * A part_token says where the next part starts. The gateway keeps nothing for it: it checks
443
+ * the token it minted when it is used, against the caller's rights then, so an interrupted
444
+ * export resumes where it stopped, within the caller's residency. A token the gateway did not
445
+ * mint, or minted for another caller, home or residency — one that has ended included, save
446
+ * during that home's vacated handover — is refused as INVALID_REQUEST with metadata
447
+ * {"reason": "part_token"}.
448
+ *
449
+ * @generated from message kusinta.iot.webrtc.v1.ExportHouseholdData
450
+ */
451
+ export declare type ExportHouseholdData = Message<"kusinta.iot.webrtc.v1.ExportHouseholdData"> & {
452
+ /**
453
+ * @generated from field: kusinta.iot.identity.v1.SpaceId home_id = 1;
454
+ */
455
+ homeId?: SpaceId | undefined;
456
+
457
+ /**
458
+ * @generated from field: string part_token = 2;
459
+ */
460
+ partToken: string;
461
+ };
462
+
463
+ /**
464
+ * Describes the message kusinta.iot.webrtc.v1.ExportHouseholdData.
465
+ * Use `create(ExportHouseholdDataSchema)` to create a new message.
466
+ */
467
+ export declare const ExportHouseholdDataSchema: GenMessage<ExportHouseholdData>;
468
+
469
+ /**
470
+ * One part of a home's export (EXPORT). The gateway chooses the order of the parts and how
471
+ * each is cut; together they are the whole of it, each as of when it was made. Each part is
472
+ * what the read named beside it would give the caller.
473
+ *
474
+ * @generated from message kusinta.iot.webrtc.v1.HouseholdExport
475
+ */
476
+ export declare type HouseholdExport = Message<"kusinta.iot.webrtc.v1.HouseholdExport"> & {
477
+ /**
478
+ * @generated from field: kusinta.iot.identity.v1.SpaceId home_id = 1;
479
+ */
480
+ homeId?: SpaceId | undefined;
481
+
482
+ /**
483
+ * @generated from oneof kusinta.iot.webrtc.v1.HouseholdExport.part
484
+ */
485
+ part: {
486
+ /**
487
+ * The home's rooms, their settings, and the modes on the home (ListRoomClimates).
488
+ *
489
+ * @generated from field: kusinta.iot.climate.v1.RoomClimateList room_climates = 2;
490
+ */
491
+ value: RoomClimateList;
492
+ case: "roomClimates";
493
+ } | {
494
+ /**
495
+ * One room's history at one resolution, one GetRoomHistory answer's worth. A room's history
496
+ * comes at the finest resolution held for each stretch of time, with no time given twice:
497
+ * at the finest resolution the gateway gives, from its kept_from; at each coarser one, the
498
+ * buckets from its kept_from that end at or before the next finer one's kept_from. In as
499
+ * many parts as it takes.
500
+ *
501
+ * @generated from field: kusinta.iot.climate.v1.RoomHistory room_history = 3;
502
+ */
503
+ value: RoomHistory;
504
+ case: "roomHistory";
505
+ } | {
506
+ /**
507
+ * The home's climate summary over one period length (GetApartmentClimateSummary): one
508
+ * part for each of DAY, WEEK and MONTH.
509
+ *
510
+ * @generated from field: kusinta.iot.climate.v1.ApartmentClimateSummary climate_summary = 4;
511
+ */
512
+ value: ApartmentClimateSummary;
513
+ case: "climateSummary";
514
+ } | {
515
+ /**
516
+ * The home's commissioning (ListCommissioning).
517
+ *
518
+ * @generated from field: kusinta.iot.commissioning.v1.CommissioningProfile commissioning = 5;
519
+ */
520
+ value: CommissioningProfile;
521
+ case: "commissioning";
522
+ } | {
523
+ /**
524
+ * The home's heating records (ListHeating).
525
+ *
526
+ * @generated from field: kusinta.iot.heating.v1.HeatingLayout heating = 6;
527
+ */
528
+ value: HeatingLayout;
529
+ case: "heating";
530
+ } | { case: undefined; value?: undefined };
531
+
532
+ /**
533
+ * The token to ask for the next part with; empty on the last.
534
+ *
535
+ * @generated from field: string next_part_token = 7;
536
+ */
537
+ nextPartToken: string;
538
+ };
539
+
540
+ /**
541
+ * Describes the message kusinta.iot.webrtc.v1.HouseholdExport.
542
+ * Use `create(HouseholdExportSchema)` to create a new message.
543
+ */
544
+ export declare const HouseholdExportSchema: GenMessage<HouseholdExport>;
545
+
546
+ /**
547
+ * How a staff member appointed a household admin (STAFF APPOINTMENT).
548
+ *
549
+ * @generated from enum kusinta.iot.webrtc.v1.StaffAppointmentKind
550
+ */
551
+ export enum StaffAppointmentKind {
552
+ /**
553
+ * @generated from enum value: STAFF_APPOINTMENT_KIND_UNSPECIFIED = 0;
554
+ */
555
+ UNSPECIFIED = 0,
556
+
557
+ /**
558
+ * An appointment invite on an empty home, redeemed.
559
+ *
560
+ * @generated from enum value: STAFF_APPOINTMENT_KIND_INVITE = 1;
561
+ */
562
+ INVITE = 1,
563
+
564
+ /**
565
+ * A promotion request to a resident of an admin-less home, accepted.
566
+ *
567
+ * @generated from enum value: STAFF_APPOINTMENT_KIND_PROMOTION = 2;
568
+ */
569
+ PROMOTION = 2,
570
+ }
571
+
572
+ /**
573
+ * Describes the enum kusinta.iot.webrtc.v1.StaffAppointmentKind.
574
+ */
575
+ export declare const StaffAppointmentKindSchema: GenEnum<StaffAppointmentKind>;
576
+
577
+ /**
578
+ * @generated from enum kusinta.iot.webrtc.v1.HouseholdHandoverState
579
+ */
580
+ export enum HouseholdHandoverState {
581
+ /**
582
+ * A state this schema does not know: read as PENDING.
583
+ *
584
+ * @generated from enum value: HOUSEHOLD_HANDOVER_STATE_UNSPECIFIED = 0;
585
+ */
586
+ UNSPECIFIED = 0,
587
+
588
+ /**
589
+ * @generated from enum value: HOUSEHOLD_HANDOVER_STATE_PENDING = 1;
590
+ */
591
+ PENDING = 1,
592
+
593
+ /**
594
+ * @generated from enum value: HOUSEHOLD_HANDOVER_STATE_CANCELLED = 2;
595
+ */
596
+ CANCELLED = 2,
597
+
598
+ /**
599
+ * Confirmed, or, for a vacated one, its notice passed with nobody living in the home or a new
600
+ * resident filed (QUICK TURNOVER); the wipe has run. The last residency ending while one is
601
+ * pending makes it vacated, not done (VACANCY).
602
+ *
603
+ * @generated from enum value: HOUSEHOLD_HANDOVER_STATE_DONE = 3;
604
+ */
605
+ DONE = 3,
606
+ }
607
+
608
+ /**
609
+ * Describes the enum kusinta.iot.webrtc.v1.HouseholdHandoverState.
610
+ */
611
+ export declare const HouseholdHandoverStateSchema: GenEnum<HouseholdHandoverState>;
612
+