@jsm-mit/tigi-sharded-package 0.5.0 → 0.6.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.
@@ -54,6 +54,15 @@ export const idlFactory = ({ IDL }) => {
54
54
  'Ok' : IDL.Vec(PrefixEntry),
55
55
  'Err' : CoordinatorError,
56
56
  });
57
+ const ChatBillDue = IDL.Record({
58
+ 'day' : IDL.Nat64,
59
+ 'dueSinceNs' : IDL.Nat64,
60
+ 'bill' : IDL.Nat,
61
+ 'blockAtNs' : IDL.Nat64,
62
+ 'projectId' : IDL.Text,
63
+ 'payTo' : IDL.Principal,
64
+ 'multiplierPermille' : IDL.Nat32,
65
+ });
57
66
  const CommitWasmArgs = IDL.Record({
58
67
  'sha256' : IDL.Vec(IDL.Nat8),
59
68
  'chunks' : IDL.Nat32,
@@ -208,6 +217,44 @@ export const idlFactory = ({ IDL }) => {
208
217
  'computedAtNs' : IDL.Opt(IDL.Nat64),
209
218
  'canisters' : IDL.Opt(IDL.Nat32),
210
219
  });
220
+ const ChatBillPaid = IDL.Record({
221
+ 'day' : IDL.Nat64,
222
+ 'paidAtNs' : IDL.Nat64,
223
+ 'paidTotal' : IDL.Nat,
224
+ 'amount' : IDL.Nat,
225
+ });
226
+ const ChatBillStep = IDL.Variant({
227
+ 'reading' : IDL.Null,
228
+ 'done' : IDL.Null,
229
+ 'unpaid' : IDL.Null,
230
+ 'sharing' : IDL.Null,
231
+ 'nothingDue' : IDL.Null,
232
+ 'received' : IDL.Null,
233
+ 'paying' : IDL.Null,
234
+ });
235
+ const ChatBillRun = IDL.Record({
236
+ 'day' : IDL.Nat64,
237
+ 'updatedAtNs' : IDL.Nat64,
238
+ 'dueSinceNs' : IDL.Nat64,
239
+ 'reminded' : IDL.Nat,
240
+ 'blockAtNs' : IDL.Nat64,
241
+ 'step' : ChatBillStep,
242
+ 'driverRooms' : IDL.Opt(IDL.Nat32),
243
+ 'receivedAtNs' : IDL.Nat64,
244
+ 'projectId' : IDL.Text,
245
+ 'batchesSent' : IDL.Opt(IDL.Nat32),
246
+ 'payTo' : IDL.Principal,
247
+ 'absorbed' : IDL.Opt(IDL.Nat),
248
+ 'accepted' : IDL.Opt(IDL.Nat),
249
+ 'amount' : IDL.Opt(IDL.Nat),
250
+ 'passed' : IDL.Opt(IDL.Nat),
251
+ 'problem' : IDL.Opt(IDL.Text),
252
+ });
253
+ const ChatLink = IDL.Record({
254
+ 'chatCoordinatorId' : IDL.Principal,
255
+ 'readAtNs' : IDL.Nat64,
256
+ 'projectId' : IDL.Text,
257
+ });
211
258
  const Config = IDL.Record({
212
259
  'maxWorkers' : IDL.Opt(IDL.Nat64),
213
260
  'coreWasm' : IDL.Opt(WasmInfo),
@@ -225,7 +272,10 @@ export const idlFactory = ({ IDL }) => {
225
272
  'lastRequestDay' : IDL.Nat64,
226
273
  'feeMultiplier' : IDL.Opt(FeeMultiplierState),
227
274
  'cyclesPerWorker' : IDL.Nat,
275
+ 'chatBillPaid' : IDL.Opt(ChatBillPaid),
276
+ 'chatBill' : IDL.Opt(ChatBillRun),
228
277
  'spread' : IDL.Bool,
278
+ 'chatLink' : IDL.Opt(ChatLink),
229
279
  'nextEventId' : IDL.Nat64,
230
280
  'superadmin' : IDL.Opt(IDL.Principal),
231
281
  'deployAdmins' : IDL.Vec(IDL.Principal),
@@ -304,10 +354,14 @@ export const idlFactory = ({ IDL }) => {
304
354
  'Err' : CoordinatorError,
305
355
  });
306
356
  const Result_13 = IDL.Variant({
307
- 'Ok' : CoreRecord,
357
+ 'Ok' : IDL.Opt(ChatLink),
308
358
  'Err' : CoordinatorError,
309
359
  });
310
360
  const Result_14 = IDL.Variant({
361
+ 'Ok' : CoreRecord,
362
+ 'Err' : CoordinatorError,
363
+ });
364
+ const Result_15 = IDL.Variant({
311
365
  'Ok' : WorkerStatus,
312
366
  'Err' : CoordinatorError,
313
367
  });
@@ -321,7 +375,7 @@ export const idlFactory = ({ IDL }) => {
321
375
  'sinceNs' : IDL.Nat64,
322
376
  'lastError' : IDL.Opt(IDL.Text),
323
377
  });
324
- const Result_15 = IDL.Variant({
378
+ const Result_16 = IDL.Variant({
325
379
  'Ok' : Dependents,
326
380
  'Err' : CoordinatorError,
327
381
  });
@@ -332,7 +386,7 @@ export const idlFactory = ({ IDL }) => {
332
386
  'cyclesPerWorker' : IDL.Opt(IDL.Nat),
333
387
  'spread' : IDL.Opt(IDL.Bool),
334
388
  });
335
- const Result_16 = IDL.Variant({ 'Ok' : Config, 'Err' : CoordinatorError });
389
+ const Result_17 = IDL.Variant({ 'Ok' : Config, 'Err' : CoordinatorError });
336
390
  const CoreLoggingArgs = IDL.Record({ 'enabled' : IDL.Bool });
337
391
  const WorkerConfigOutcome = IDL.Record({
338
392
  'error' : IDL.Opt(IDL.Text),
@@ -342,7 +396,7 @@ export const idlFactory = ({ IDL }) => {
342
396
  'stored' : WorkerConfigArgs,
343
397
  'workers' : IDL.Vec(WorkerConfigOutcome),
344
398
  });
345
- const Result_17 = IDL.Variant({
399
+ const Result_18 = IDL.Variant({
346
400
  'Ok' : SetWorkerConfigResult,
347
401
  'Err' : CoordinatorError,
348
402
  });
@@ -350,7 +404,7 @@ export const idlFactory = ({ IDL }) => {
350
404
  'open' : IDL.Bool,
351
405
  'canister' : IDL.Principal,
352
406
  });
353
- const Result_18 = IDL.Variant({
407
+ const Result_19 = IDL.Variant({
354
408
  'Ok' : WorkerView,
355
409
  'Err' : CoordinatorError,
356
410
  });
@@ -358,16 +412,16 @@ export const idlFactory = ({ IDL }) => {
358
412
  'worker' : IDL.Principal,
359
413
  'prefixes' : IDL.Vec(IDL.Text),
360
414
  });
361
- const Result_19 = IDL.Variant({
415
+ const Result_20 = IDL.Variant({
362
416
  'Ok' : SplitResult,
363
417
  'Err' : CoordinatorError,
364
418
  });
365
- const Result_20 = IDL.Variant({ 'Ok' : IDL.Nat, 'Err' : CoordinatorError });
419
+ const Result_21 = IDL.Variant({ 'Ok' : IDL.Nat, 'Err' : CoordinatorError });
366
420
  const WasmChunkArgs = IDL.Record({
367
421
  'bytes' : IDL.Vec(IDL.Nat8),
368
422
  'index' : IDL.Nat32,
369
423
  });
370
- const Result_21 = IDL.Variant({ 'Ok' : IDL.Nat64, 'Err' : CoordinatorError });
424
+ const Result_22 = IDL.Variant({ 'Ok' : IDL.Nat64, 'Err' : CoordinatorError });
371
425
  return IDL.Service({
372
426
  'accountsCanisterFor' : IDL.Func(
373
427
  [IDL.Principal],
@@ -377,6 +431,7 @@ export const idlFactory = ({ IDL }) => {
377
431
  'addCoreAdmin' : IDL.Func([PrincipalArgs], [Result], []),
378
432
  'addDeployAdmin' : IDL.Func([PrincipalArgs], [Result_1], []),
379
433
  'assignPrefix' : IDL.Func([AssignPrefixArgs], [Result_2], []),
434
+ 'chatBillDue' : IDL.Func([ChatBillDue], [], []),
380
435
  'claimSuperadmin' : IDL.Func([], [Result_1], []),
381
436
  'commitCoreWasm' : IDL.Func([CommitWasmArgs], [Result_3], []),
382
437
  'commitWorkerWasm' : IDL.Func([CommitWasmArgs], [Result_3], []),
@@ -408,8 +463,9 @@ export const idlFactory = ({ IDL }) => {
408
463
  ['query'],
409
464
  ),
410
465
  'readQueryLoads' : IDL.Func([], [Result_12], []),
411
- 'refreshCore' : IDL.Func([], [Result_13], []),
412
- 'refreshWorker' : IDL.Func([CanisterArgs], [Result_14], []),
466
+ 'refreshChatLink' : IDL.Func([], [Result_13], []),
467
+ 'refreshCore' : IDL.Func([], [Result_14], []),
468
+ 'refreshWorker' : IDL.Func([CanisterArgs], [Result_15], []),
413
469
  'removeCoreAdmin' : IDL.Func([PrincipalArgs], [Result], []),
414
470
  'removeDeployAdmin' : IDL.Func([PrincipalArgs], [Result_1], []),
415
471
  'reportCoreLowCycles' : IDL.Func([ReportLowCyclesArgs], [], []),
@@ -418,21 +474,21 @@ export const idlFactory = ({ IDL }) => {
418
474
  'reportLowCycles' : IDL.Func([ReportLowCyclesArgs], [], []),
419
475
  'reportOutboxStuck' : IDL.Func([ReportOutboxStuckArgs], [], []),
420
476
  'requestSuperadmin' : IDL.Func([], [Result_1], []),
421
- 'resetGroup' : IDL.Func([], [Result_15], []),
422
- 'setConfig' : IDL.Func([SetConfigArgs], [Result_16], []),
477
+ 'resetGroup' : IDL.Func([], [Result_16], []),
478
+ 'setConfig' : IDL.Func([SetConfigArgs], [Result_17], []),
423
479
  'setCoreLoggingEnabled' : IDL.Func([CoreLoggingArgs], [Result_11], []),
424
- 'setFeeThresholds' : IDL.Func([FeeThresholds], [Result_16], []),
425
- 'setWorkerConfig' : IDL.Func([WorkerConfigArgs], [Result_17], []),
426
- 'setWorkerOpen' : IDL.Func([SetWorkerOpenArgs], [Result_18], []),
427
- 'splitWorker' : IDL.Func([CanisterArgs], [Result_19], []),
480
+ 'setFeeThresholds' : IDL.Func([FeeThresholds], [Result_17], []),
481
+ 'setWorkerConfig' : IDL.Func([WorkerConfigArgs], [Result_18], []),
482
+ 'setWorkerOpen' : IDL.Func([SetWorkerOpenArgs], [Result_19], []),
483
+ 'splitWorker' : IDL.Func([CanisterArgs], [Result_20], []),
428
484
  'takeCycles' : IDL.Func([], [IDL.Nat], []),
429
485
  'takeFeeCycles' : IDL.Func([], [IDL.Nat], []),
430
- 'topUpCore' : IDL.Func([], [Result_20], []),
431
- 'topUpWorker' : IDL.Func([CanisterArgs], [Result_20], []),
486
+ 'topUpCore' : IDL.Func([], [Result_21], []),
487
+ 'topUpWorker' : IDL.Func([CanisterArgs], [Result_21], []),
432
488
  'upgradeCore' : IDL.Func([], [Result_3], []),
433
489
  'upgradeWorker' : IDL.Func([CanisterArgs], [Result_3], []),
434
- 'uploadCoreWasmChunk' : IDL.Func([WasmChunkArgs], [Result_21], []),
435
- 'uploadWorkerWasmChunk' : IDL.Func([WasmChunkArgs], [Result_21], []),
490
+ 'uploadCoreWasmChunk' : IDL.Func([WasmChunkArgs], [Result_22], []),
491
+ 'uploadWorkerWasmChunk' : IDL.Func([WasmChunkArgs], [Result_22], []),
436
492
  'workerFor' : IDL.Func([IDL.Text], [IDL.Opt(IDL.Principal)], ['query']),
437
493
  });
438
494
  };
@@ -44,8 +44,13 @@ type TigiCore =
44
44
  abortDriverRollout: () -> (Result_3);
45
45
  /// Admins: an admin more (the coordinator adds the people who rule the group).
46
46
  addAdmin: (args: PrincipalArgs) -> (Result_2);
47
+ /// C-27 (D8): the coordinator only — the driver rooms of a chat bill it paid. Each share
48
+ /// joins the next daily bill of the room's OWN driver canister as it is (the chat priced
49
+ /// it; no multiplier). A pool canister's share and a room of no canister of the registry
50
+ /// are absorbed (the coordinator keeps paying them). Once per `batchId`.
51
+ addChatShares: (args: ChatSharesArgs) -> (Result_32);
47
52
  /// Admins: a canister the core controls joins the demo pool (U-35).
48
- addPoolCanister: (args: CanisterArgs) -> (Result_22);
53
+ addPoolCanister: (args: CanisterArgs) -> (Result_6);
49
54
  /// Admins: a driver canister, or one driver in it (`driverKey`), is blocked; the workers
50
55
  /// drop it at once (WO-2).
51
56
  blockDriver: (args: BlockDriverArgs) -> (Result_2);
@@ -54,19 +59,19 @@ type TigiCore =
54
59
  /// F-20 (U-45): the caller — the driver signed in on the canister's own front — takes
55
60
  /// over the demo canister with the code of the link. Single use, 15 min; every refusal
56
61
  /// answers the same NotAuthorized. The room of the canister gets the caller (C-15).
57
- claimDriverCanister: (args: ClaimArgs) -> (Result_22);
62
+ claimDriverCanister: (args: ClaimArgs) -> (Result_6);
58
63
  clearLogs: () -> ();
59
64
  /// Admins: the chunks become THE module of their kind. A new driver wasm is released
60
65
  /// (F-11) and its hash goes to the workers.
61
66
  commitDriverWasm: (args: WasmCommitArgs) -> (Result_31);
62
67
  /// Admins, localTest: an empty canister from the core's cycles joins the demo pool.
63
- createLocalPoolCanister: () -> (Result_22);
68
+ createLocalPoolCanister: () -> (Result_6);
64
69
  /// F-2 … F-4, F-10: the caller's own driver canister (localTest: from the core's cycles).
65
- createMyDriverCanister: () -> (Result_22);
70
+ createMyDriverCanister: () -> (Result_6);
66
71
  /// Admins: the simulator, created once (F-18).
67
72
  ensureSimulator: () -> (Result_30);
68
73
  /// F-8: 15 min more for the holder of a demo canister.
69
- extendDemoLease: () -> (Result_22);
74
+ extendDemoLease: () -> (Result_6);
70
75
  getAdmins: () -> (Result_29) query;
71
76
  /// For the fronts (through the package): where the chat of this environment is. Null =
72
77
  /// no chat here yet. The room of a driver is `ChatRoomFunctions.driverRoomId`.
@@ -84,35 +89,35 @@ type TigiCore =
84
89
  getDriverFeeBill: () -> (Result_26);
85
90
  /// Admins (stage 7): the aggregated rating of one driver (sum and count of stars; null =
86
91
  /// no rating yet) — the value the workers get through the outbox (C-6).
87
- getDriverRating: (args: DriverRatingArgs) -> (Result_21) query;
92
+ getDriverRating: (args: DriverRatingArgs) -> (Result_22) query;
88
93
  getDriverRollout: () -> (Result_25) query;
89
94
  getFactoryStatus: () -> (Result_24) query;
90
95
  /// C-22: the rates, the day, the multiplier cached, the totals.
91
96
  getFeeStatus: () -> (Result_23) query;
92
97
  getLogs: () -> (text) query;
93
98
  /// The caller's own canister, or the demo canister the caller holds now.
94
- getMyDriverCanister: () -> (Result_22) query;
99
+ getMyDriverCanister: () -> (Result_6) query;
95
100
  getMyProfile: () -> (Result_4) query;
96
101
  /// C-16, PF-4: the caller's own rating as a rider (sum and count of stars; null = no
97
102
  /// rating yet). Ratings reach the core in the workers' batches, up to a minute late.
98
- getMyRating: () -> (Result_21) query;
103
+ getMyRating: () -> (Result_22) query;
99
104
  /// C-8 (KU-4, stage 7): one line of the caller's history by its requestId — for the
100
105
  /// details screen after a reload and to show the rating after `rateMyRide`. Another
101
106
  /// rider's ride → `NotAuthorized`; not in the core (yet, K-9) → `NotFound`.
102
- getMyRide: (args: RequestIdArgs) -> (Result_20) query;
107
+ getMyRide: (args: RequestIdArgs) -> (Result_21) query;
103
108
  /// C-8: the caller's rides, newest first, with the places (KU-4) and whether the driver
104
109
  /// can still be rated (KU-5, C-23).
105
- getMyRides: (args: RidesPageArgs) -> (Result_19) query;
110
+ getMyRides: (args: RidesPageArgs) -> (Result_20) query;
106
111
  /// C-3: the names of up to MAX_PROFILES_PER_CALL principals; unknown ones are left out.
107
- getProfiles: (args: ProfilesArgs) -> (Result_18) query;
112
+ getProfiles: (args: ProfilesArgs) -> (Result_19) query;
108
113
  /// F-11: the driver wasms released so far, oldest first.
109
114
  getReleasedDriverWasms: () -> (vec ReleasedWasm) query;
110
115
  /// F-18: the simulator of this group; none in prod or before ensureSimulator.
111
116
  getSimulator: () -> (opt principal) query;
112
117
  /// Admins: the coordinator, the workers confirmed so far, the mode.
113
- getWiring: () -> (Result_17) query;
118
+ getWiring: () -> (Result_18) query;
114
119
  /// Admins: how far the outbox to the workers is (C-6, C-7).
115
- getWorkerOutbox: () -> (Result_16) query;
120
+ getWorkerOutbox: () -> (Result_17) query;
116
121
  /// Workers of the group: the core asks the coordinator once and remembers the worker,
117
122
  /// which then gets the network state through the outbox. A worker calls it once after
118
123
  /// its install. Answers true.
@@ -120,42 +125,45 @@ type TigiCore =
120
125
  /// Workers of the group: finished rides and ratings, at most MAX_RIDE_BATCH (C-4, C-5).
121
126
  /// Idempotent: a known requestId and a counted rating count once. Invalid entries are
122
127
  /// rejected and logged; the worker drops the whole batch after an ok.
123
- ingestRideBatch: (batch: RideBatch) -> (Result_15);
128
+ ingestRideBatch: (batch: RideBatch) -> (Result_16);
124
129
  /// C-14: the accounts gate of the chat (U-43). The chat core asks this group's
125
130
  /// coordinator WHERE (`accountsCanisterFor` → this core) and asks here: true = an
126
131
  /// account with a name exists for the principal and the rider is not blocked.
127
132
  isUser: ("principal": principal) -> (bool) query;
128
133
  /// F-5 … F-7: a demo canister for 15 min (outside prod). A fresh lease comes with a
129
134
  /// one-time claim code (F-20, U-45).
130
- leaseDemoDriverCanister: () -> (Result_14);
131
- listBlocks: (args: PageArgs) -> (Result_13) query;
132
- listDriverCanisters: (args: PageArgs) -> (Result_12) query;
135
+ leaseDemoDriverCanister: () -> (Result_15);
136
+ listBlocks: (args: PageArgs) -> (Result_14) query;
137
+ listDriverCanisters: (args: PageArgs) -> (Result_13) query;
133
138
  /// Admins: the accounts, 100 a page at most.
134
- listDriverFeeAccounts: (args: PageArgs) -> (Result_11) query;
139
+ listDriverFeeAccounts: (args: PageArgs) -> (Result_12) query;
135
140
  /// Admins: the driver rooms as the core wants them, 100 a page at most.
136
- listDriverRooms: (args: PageArgs) -> (Result_10) query;
141
+ listDriverRooms: (args: PageArgs) -> (Result_11) query;
137
142
  /// F-20: a fresh claim code for the caller's running demo lease; the old one stops
138
143
  /// working.
139
- newClaimCode: () -> (Result_9);
144
+ newClaimCode: () -> (Result_10);
140
145
  /// C-20: the driver canister pays the bill of `day` with the cycles attached to this
141
146
  /// call. The core takes exactly the bill (the rest goes back), or nothing when less is
142
147
  /// attached (`FEE_SHORT`); a day paid already answers `accepted = 0`.
143
- payDriverFee: (args: FeePayArgs) -> (Result_8);
148
+ payDriverFee: (args: FeePayArgs) -> (Result_9);
144
149
  /// C-23 (KU-5, stage 7): the rider rates the driver of a finished ride from the history.
145
150
  /// Only the ride's rider; a completed ride within 24 h of its end (K-8); once per ride
146
151
  /// over both paths — a live rating through the worker and this one count once together
147
152
  /// (the first to reach the core). The driver's aggregate goes to the workers as a
148
153
  /// batch's does (C-6). Counted in the caller's `#account` pool.
149
- rateMyRide: (args: RateRideArgs) -> (Result_7);
154
+ rateMyRide: (args: RateRideArgs) -> (Result_8);
150
155
  removeAdmin: (args: PrincipalArgs) -> (Result_2);
151
156
  resumeDriverRollout: () -> (Result_3);
152
157
  /// Admins: the chat of this environment — the chat group's coordinator and the project
153
158
  /// (whose admin and accounts field are this group's coordinator). Every call sends every
154
159
  /// driver room again (a new project, a chat group set up again).
155
- setChatConfig: (args: ChatConfig) -> (Result_6);
160
+ setChatConfig: (args: ChatConfig) -> (Result_7);
156
161
  /// Admins, localTest only: new claim codes live this long (the local check of an
157
162
  /// expired code). Heap only: an upgrade brings back 15 min.
158
163
  setClaimCodeTtl: (args: ClaimTtlArgs) -> (Result);
164
+ /// Admins (F-22, TIGI-DRIVER-MODES): the pool canister is installed again in the
165
+ /// automat mode, driven by `automat` — the simulator's router on the droplet.
166
+ setDemoDriverAutomat: (args: DemoAutomatArgs) -> (Result_6);
159
167
  /// Admins: the cycles per event (C-18).
160
168
  setFeeRates: (rates: FeeRates) -> (Result_5);
161
169
  setLoggingEnabled: (enabled: bool) -> (Result_2);
@@ -266,22 +274,22 @@ type RideBatch =
266
274
  type Result_9 =
267
275
  variant {
268
276
  err: Error;
269
- ok: ClaimCode;
277
+ ok: FeePaid;
270
278
  };
271
279
  type Result_8 =
272
280
  variant {
273
281
  err: Error;
274
- ok: FeePaid;
282
+ ok: RateRideOutcome;
275
283
  };
276
284
  type Result_7 =
277
285
  variant {
278
286
  err: Error;
279
- ok: RateRideOutcome;
287
+ ok: ChatConfig;
280
288
  };
281
289
  type Result_6 =
282
290
  variant {
283
291
  err: Error;
284
- ok: ChatConfig;
292
+ ok: DriverCanister;
285
293
  };
286
294
  type Result_5 =
287
295
  variant {
@@ -293,6 +301,11 @@ type Result_4 =
293
301
  err: Error;
294
302
  ok: Profile;
295
303
  };
304
+ type Result_32 =
305
+ variant {
306
+ err: Error;
307
+ ok: ChatSharesAck;
308
+ };
296
309
  type Result_31 =
297
310
  variant {
298
311
  err: Error;
@@ -326,7 +339,7 @@ type Result_27 =
326
339
  type Result_26 =
327
340
  variant {
328
341
  err: Error;
329
- ok: FeeBill;
342
+ ok: FeeBillAnswer;
330
343
  };
331
344
  type Result_25 =
332
345
  variant {
@@ -346,17 +359,17 @@ type Result_23 =
346
359
  type Result_22 =
347
360
  variant {
348
361
  err: Error;
349
- ok: DriverCanister;
362
+ ok: opt Rating;
350
363
  };
351
364
  type Result_21 =
352
365
  variant {
353
366
  err: Error;
354
- ok: opt Rating;
367
+ ok: RideView;
355
368
  };
356
369
  type Result_20 =
357
370
  variant {
358
371
  err: Error;
359
- ok: RideView;
372
+ ok: RidesPage;
360
373
  };
361
374
  type Result_2 =
362
375
  variant {
@@ -364,21 +377,16 @@ type Result_2 =
364
377
  ok: bool;
365
378
  };
366
379
  type Result_19 =
367
- variant {
368
- err: Error;
369
- ok: RidesPage;
370
- };
371
- type Result_18 =
372
380
  variant {
373
381
  err: Error;
374
382
  ok: vec ProfileEntry;
375
383
  };
376
- type Result_17 =
384
+ type Result_18 =
377
385
  variant {
378
386
  err: Error;
379
387
  ok: Wiring;
380
388
  };
381
- type Result_16 =
389
+ type Result_17 =
382
390
  variant {
383
391
  err: Error;
384
392
  ok:
@@ -389,36 +397,41 @@ type Result_16 =
389
397
  subjects: nat;
390
398
  };
391
399
  };
392
- type Result_15 =
400
+ type Result_16 =
393
401
  variant {
394
402
  err: Error;
395
403
  ok: RideBatchResult;
396
404
  };
397
- type Result_14 =
405
+ type Result_15 =
398
406
  variant {
399
407
  err: Error;
400
408
  ok: LeaseAnswer;
401
409
  };
402
- type Result_13 =
410
+ type Result_14 =
403
411
  variant {
404
412
  err: Error;
405
413
  ok: vec Block;
406
414
  };
407
- type Result_12 =
415
+ type Result_13 =
408
416
  variant {
409
417
  err: Error;
410
418
  ok: DriverCanistersPage;
411
419
  };
412
- type Result_11 =
420
+ type Result_12 =
413
421
  variant {
414
422
  err: Error;
415
423
  ok: vec DriverFeeAccountView;
416
424
  };
417
- type Result_10 =
425
+ type Result_11 =
418
426
  variant {
419
427
  err: Error;
420
428
  ok: vec DriverRoomView;
421
429
  };
430
+ type Result_10 =
431
+ variant {
432
+ err: Error;
433
+ ok: ClaimCode;
434
+ };
422
435
  type Result_1 =
423
436
  variant {
424
437
  err: Error;
@@ -533,6 +546,12 @@ type FeeUsage =
533
546
  type FeeStatus =
534
547
  record {
535
548
  accounts: nat;
549
+ chat:
550
+ opt record {
551
+ absorbedTotal: nat;
552
+ addedTotal: nat;
553
+ lastBatchId: opt nat64;
554
+ };
536
555
  forwardedTotal: nat;
537
556
  lastForwardError: opt text;
538
557
  multiplier: opt record {
@@ -563,6 +582,16 @@ type FeePaid =
563
582
  amount: nat;
564
583
  day: nat;
565
584
  };
585
+ type FeeBillAnswer =
586
+ record {
587
+ amount: nat;
588
+ chat: opt nat;
589
+ day: nat;
590
+ multiplierPermille: nat;
591
+ rates: FeeRates;
592
+ settled: bool;
593
+ usage: FeeUsage;
594
+ };
566
595
  type FeeBill =
567
596
  record {
568
597
  amount: nat;
@@ -624,6 +653,7 @@ type DriverFeeAccountView =
624
653
  record {
625
654
  bill: opt FeeBill;
626
655
  canister: principal;
656
+ chat: opt ChatShareView;
627
657
  lastFee: opt FeeRecord;
628
658
  lastSettledDay: opt nat;
629
659
  paidTotal: nat;
@@ -656,6 +686,11 @@ type DriverCanister =
656
686
  moduleHash: opt blob;
657
687
  owner: principal;
658
688
  };
689
+ type DemoAutomatArgs =
690
+ record {
691
+ automat: principal;
692
+ canister: principal;
693
+ };
659
694
  type ClaimTtlArgs = record {seconds: nat;};
660
695
  type ClaimCode =
661
696
  record {
@@ -668,6 +703,34 @@ type ClaimArgs =
668
703
  canister: principal;
669
704
  code: text;
670
705
  };
706
+ type ChatSharesArgs =
707
+ record {
708
+ batchId: nat64;
709
+ day: nat64;
710
+ shares: vec ChatShare;
711
+ };
712
+ type ChatSharesAck =
713
+ record {
714
+ added: nat;
715
+ addedCycles: nat;
716
+ applied: bool;
717
+ exempt: nat;
718
+ exemptCycles: nat;
719
+ unknown: nat;
720
+ unknownCycles: nat;
721
+ };
722
+ type ChatShareView =
723
+ record {
724
+ inBill: nat;
725
+ lastDay: opt nat;
726
+ paidTotal: nat;
727
+ pending: nat;
728
+ };
729
+ type ChatShare =
730
+ record {
731
+ cycles: nat;
732
+ roomId: text;
733
+ };
671
734
  type ChatRoomsStatus =
672
735
  record {
673
736
  config: opt ChatConfig;