@ricado/api-client 2.7.7 → 2.7.9

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 (27) hide show
  1. package/dist/ricado.api.client.js +1 -1
  2. package/lib/Controllers/Packhouse/Site/PackingLineController.js +14 -3
  3. package/lib/Controllers/Packhouse/Site/PackrunGrowerNotificationController.js +940 -0
  4. package/lib/Controllers/Packhouse/Site/RejectBinScaleController.js +2 -0
  5. package/lib/Controllers/Packhouse/Site/index.js +3 -0
  6. package/lib/Controllers/UserAccountActionTokenController.js +15 -0
  7. package/lib/Models/Packhouse/Site/PackingLineModel.js +283 -2
  8. package/lib/Models/Packhouse/Site/PackrunGrowerNotificationModel.js +669 -0
  9. package/lib/Models/Packhouse/Site/RejectBinScaleModel.js +33 -1
  10. package/lib/Models/Packhouse/Site/index.js +3 -0
  11. package/lib/Models/TokenModel.js +105 -0
  12. package/lib/Models/UserAccountActionTokenModel.js +210 -0
  13. package/lib/PackageVersion.js +1 -1
  14. package/lib/index.d.ts +707 -3
  15. package/package.json +1 -1
  16. package/src/Controllers/Packhouse/Site/PackingLineController.js +14 -3
  17. package/src/Controllers/Packhouse/Site/PackrunGrowerNotificationController.js +1071 -0
  18. package/src/Controllers/Packhouse/Site/RejectBinScaleController.js +2 -0
  19. package/src/Controllers/Packhouse/Site/index.js +2 -0
  20. package/src/Controllers/UserAccountActionTokenController.js +15 -0
  21. package/src/Models/Packhouse/Site/PackingLineModel.js +380 -2
  22. package/src/Models/Packhouse/Site/PackrunGrowerNotificationModel.js +763 -0
  23. package/src/Models/Packhouse/Site/RejectBinScaleModel.js +43 -1
  24. package/src/Models/Packhouse/Site/index.js +2 -0
  25. package/src/Models/TokenModel.js +136 -0
  26. package/src/Models/UserAccountActionTokenModel.js +272 -0
  27. package/src/PackageVersion.js +1 -1
package/lib/index.d.ts CHANGED
@@ -1992,6 +1992,14 @@ declare module '@ricado/api-client/Controllers/UserAccountActionTokenController'
1992
1992
  * When the Action Email was Sent
1993
1993
  */
1994
1994
  emailTimestamp?: Date | null | undefined;
1995
+ /**
1996
+ * Metadata from the Request that generated this Action Token
1997
+ */
1998
+ issueMetadata?: RequestMetadata | undefined;
1999
+ /**
2000
+ * Metadata from the Request that consumed this Action Token
2001
+ */
2002
+ consumeMetadata?: RequestMetadata | undefined;
1995
2003
  };
1996
2004
  /**
1997
2005
  * The Update Data for a User Account Action Token
@@ -2009,6 +2017,35 @@ declare module '@ricado/api-client/Controllers/UserAccountActionTokenController'
2009
2017
  * When the Action Email was Sent
2010
2018
  */
2011
2019
  emailTimestamp?: Date | null | undefined;
2020
+ /**
2021
+ * Metadata from the Request that consumed this Action Token
2022
+ */
2023
+ consumeMetadata?: RequestMetadata | undefined;
2024
+ };
2025
+ /**
2026
+ * A **RequestMetadata** Type
2027
+ */
2028
+ type RequestMetadata = {
2029
+ /**
2030
+ * The IP Address of the Requester
2031
+ */
2032
+ ipAddress: string | null;
2033
+ /**
2034
+ * The User-Agent of the Requester
2035
+ */
2036
+ userAgent: string | null;
2037
+ /**
2038
+ * The Cloudflare Ray ID from the Request
2039
+ */
2040
+ cloudflareRayId: string | null;
2041
+ /**
2042
+ * The Host header from the Request
2043
+ */
2044
+ host: string | null;
2045
+ /**
2046
+ * The Referrer header from the Request
2047
+ */
2048
+ referrer: string | null;
2012
2049
  };
2013
2050
  }
2014
2051
  import UserAccountActionTokenModel from "@ricado/api-client/Models/UserAccountActionTokenModel";
@@ -2955,6 +2992,19 @@ declare module '@ricado/api-client/Models/TokenModel' {
2955
2992
  * @public
2956
2993
  */
2957
2994
  lockTimestamp: Date | null;
2995
+ /**
2996
+ * Metadata from the Request that generated this Token
2997
+ *
2998
+ * @type {{ipAddress: ?string, userAgent: ?string, cloudflareRayId: ?string, host: ?string, referrer: ?string}}
2999
+ * @public
3000
+ */
3001
+ issueMetadata: {
3002
+ ipAddress: string | null;
3003
+ userAgent: string | null;
3004
+ cloudflareRayId: string | null;
3005
+ host: string | null;
3006
+ referrer: string | null;
3007
+ };
2958
3008
  /**
2959
3009
  * Whether the Token has been deleted
2960
3010
  *
@@ -3057,6 +3107,32 @@ declare module '@ricado/api-client/Models/UserAccountActionTokenModel' {
3057
3107
  * @public
3058
3108
  */
3059
3109
  emailTimestamp: Date | null;
3110
+ /**
3111
+ * Metadata from the Request that generated this Action Token
3112
+ *
3113
+ * @type {{ipAddress: ?string, userAgent: ?string, cloudflareRayId: ?string, host: ?string, referrer: ?string}}
3114
+ * @public
3115
+ */
3116
+ issueMetadata: {
3117
+ ipAddress: string | null;
3118
+ userAgent: string | null;
3119
+ cloudflareRayId: string | null;
3120
+ host: string | null;
3121
+ referrer: string | null;
3122
+ };
3123
+ /**
3124
+ * Metadata from the Request that consumed this Action Token
3125
+ *
3126
+ * @type {{ipAddress: ?string, userAgent: ?string, cloudflareRayId: ?string, host: ?string, referrer: ?string}}
3127
+ * @public
3128
+ */
3129
+ consumeMetadata: {
3130
+ ipAddress: string | null;
3131
+ userAgent: string | null;
3132
+ cloudflareRayId: string | null;
3133
+ host: string | null;
3134
+ referrer: string | null;
3135
+ };
3060
3136
  /**
3061
3137
  * Whether the User Account Action Token has been deleted
3062
3138
  *
@@ -4478,6 +4554,7 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site' {
4478
4554
  export { PackTypeController };
4479
4555
  export { PackingLineController };
4480
4556
  export { PackrunController };
4557
+ export { PackrunGrowerNotificationController };
4481
4558
  export { PrePackSampleController };
4482
4559
  export { ReemoonSizerBatchController };
4483
4560
  export { ReemoonSizerController };
@@ -4522,6 +4599,7 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site' {
4522
4599
  import PackTypeController from "@ricado/api-client/Controllers/Packhouse/Site/PackTypeController";
4523
4600
  import PackingLineController from "@ricado/api-client/Controllers/Packhouse/Site/PackingLineController";
4524
4601
  import PackrunController from "@ricado/api-client/Controllers/Packhouse/Site/PackrunController";
4602
+ import PackrunGrowerNotificationController from "@ricado/api-client/Controllers/Packhouse/Site/PackrunGrowerNotificationController";
4525
4603
  import PrePackSampleController from "@ricado/api-client/Controllers/Packhouse/Site/PrePackSampleController";
4526
4604
  import ReemoonSizerBatchController from "@ricado/api-client/Controllers/Packhouse/Site/ReemoonSizerBatchController";
4527
4605
  import ReemoonSizerController from "@ricado/api-client/Controllers/Packhouse/Site/ReemoonSizerController";
@@ -6126,6 +6204,7 @@ declare module '@ricado/api-client/Models/Packhouse/Site' {
6126
6204
  export { MAFSizerPackrunSummaryModel };
6127
6205
  export { PackTypeModel };
6128
6206
  export { PackingLineModel };
6207
+ export { PackrunGrowerNotificationModel };
6129
6208
  export { PackrunModel };
6130
6209
  export { PrePackSampleModel };
6131
6210
  export { ReemoonSizerBatchModel };
@@ -6170,6 +6249,7 @@ declare module '@ricado/api-client/Models/Packhouse/Site' {
6170
6249
  import MAFSizerPackrunSummaryModel from "@ricado/api-client/Models/Packhouse/Site/MAFSizerPackrunSummaryModel";
6171
6250
  import PackTypeModel from "@ricado/api-client/Models/Packhouse/Site/PackTypeModel";
6172
6251
  import PackingLineModel from "@ricado/api-client/Models/Packhouse/Site/PackingLineModel";
6252
+ import PackrunGrowerNotificationModel from "@ricado/api-client/Models/Packhouse/Site/PackrunGrowerNotificationModel";
6173
6253
  import PackrunModel from "@ricado/api-client/Models/Packhouse/Site/PackrunModel";
6174
6254
  import PrePackSampleModel from "@ricado/api-client/Models/Packhouse/Site/PrePackSampleModel";
6175
6255
  import ReemoonSizerBatchModel from "@ricado/api-client/Models/Packhouse/Site/ReemoonSizerBatchModel";
@@ -15930,6 +16010,8 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site/PackingLineControl
15930
16010
  currentPackrunHistoricalPackrunSummaries: number;
15931
16011
  nextPackrunRecentPackrunSummaries: number;
15932
16012
  nextPackrunHistoricalPackrunSummaries: number;
16013
+ averageSecondsPerBin: number | null;
16014
+ estimatedPackrunTimestamps: number | null;
15933
16015
  };
15934
16016
  /**
15935
16017
  * The Sizer Objects that belong to this Packing Line
@@ -15979,6 +16061,10 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site/PackingLineControl
15979
16061
  * The FreshQuality Integration Configuration for this Packing Line
15980
16062
  */
15981
16063
  freshQualityIntegration?: FreshQualityIntegration | null | undefined;
16064
+ /**
16065
+ * The Optional Grower Notifications Configuration for this Packing Line
16066
+ */
16067
+ growerNotifications?: GrowerNotifications | null | undefined;
15982
16068
  };
15983
16069
  /**
15984
16070
  * The Update Data for a Packing Line
@@ -16027,6 +16113,8 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site/PackingLineControl
16027
16113
  currentPackrunHistoricalPackrunSummaries: number;
16028
16114
  nextPackrunRecentPackrunSummaries: number;
16029
16115
  nextPackrunHistoricalPackrunSummaries: number;
16116
+ averageSecondsPerBin: number | null;
16117
+ estimatedPackrunTimestamps: number | null;
16030
16118
  } | undefined;
16031
16119
  /**
16032
16120
  * The Sizer Objects that belong to this Packing Line
@@ -16076,6 +16164,10 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site/PackingLineControl
16076
16164
  * The FreshQuality Integration Configuration for this Packing Line
16077
16165
  */
16078
16166
  freshQualityIntegration?: FreshQualityIntegration | null | undefined;
16167
+ /**
16168
+ * The Optional Grower Notifications Configuration for this Packing Line
16169
+ */
16170
+ growerNotifications?: GrowerNotifications | null | undefined;
16079
16171
  };
16080
16172
  /**
16081
16173
  * A **SizerReference** Type
@@ -16764,6 +16856,11 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site/PackingLineControl
16764
16856
  currentShiftUpdateManningTeamsRequest: number | null;
16765
16857
  currentShiftUpdateManningTeamsTimestamp: number | null;
16766
16858
  manningTeams: number | null;
16859
+ packrunChangeDurationTargets: number | null;
16860
+ currentShiftDowntimeActive: number | null;
16861
+ currentShiftPackrunChangeActive: number | null;
16862
+ currentShiftPackrunChangeSecondsTarget: number | null;
16863
+ currentShiftPackrunChangeSecondsElapsed: number | null;
16767
16864
  };
16768
16865
  /**
16769
16866
  * An Optional Array of Configuration Data for Custom Qualities in Shift Management
@@ -17181,6 +17278,29 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site/PackingLineControl
17181
17278
  */
17182
17279
  customSampleTypeIds: number[];
17183
17280
  };
17281
+ /**
17282
+ * A **GrowerNotifications** Type
17283
+ */
17284
+ type GrowerNotifications = {
17285
+ /**
17286
+ * The Points used for Grower Notifications
17287
+ */
17288
+ points: {
17289
+ packingSoonAutoNotificationEnabled: number;
17290
+ packingSoonAutoNotificationSeconds: number;
17291
+ packingTodayAutoNotificationEnabled: number;
17292
+ packingTodayAutoNotificationTime: number;
17293
+ sendPackingTodayNotificationRequest: number;
17294
+ packingTodayNotificationProcessed: number;
17295
+ externalContactsCommunicationStatus: number;
17296
+ externalContactsCommunicationLastAttempt: number;
17297
+ externalContactsCommunicationLastError: number;
17298
+ };
17299
+ /**
17300
+ * Whether the Grower Notifications Integration is Enabled on this Packing Line
17301
+ */
17302
+ enabled: boolean;
17303
+ };
17184
17304
  }
17185
17305
  import PackingLineModel from "@ricado/api-client/Models/Packhouse/Site/PackingLineModel";
17186
17306
  }
@@ -18201,6 +18321,402 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site/PackrunController'
18201
18321
  import PackrunModel from "@ricado/api-client/Models/Packhouse/Site/PackrunModel";
18202
18322
  }
18203
18323
 
18324
+ declare module '@ricado/api-client/Controllers/Packhouse/Site/PackrunGrowerNotificationController' {
18325
+ export default PackrunGrowerNotificationController;
18326
+ /**
18327
+ * Controller Class for Packrun Grower Notifications
18328
+ *
18329
+ * @class
18330
+ */
18331
+ class PackrunGrowerNotificationController {
18332
+ /**
18333
+ * Retrieve a Packrun Grower Notification [GET /packhouse/sites/{siteId}/packrun-grower-notifications/{id}]
18334
+ *
18335
+ * @static
18336
+ * @public
18337
+ * @param {number} siteId The Site ID
18338
+ * @param {string} id The Packrun Grower Notification ID
18339
+ * @return {Promise<PackrunGrowerNotificationModel>}
18340
+ */
18341
+ static getOne(siteId: number, id: string): Promise<PackrunGrowerNotificationModel>;
18342
+ /**
18343
+ * Update a Packrun Grower Notification [PATCH /packhouse/sites/{siteId}/packrun-grower-notifications/{id}]
18344
+ *
18345
+ * @static
18346
+ * @public
18347
+ * @param {number} siteId The Site ID
18348
+ * @param {string} id The Packrun Grower Notification ID
18349
+ * @param {PackrunGrowerNotificationController.UpdateData} updateData The Packrun Grower Notification Update Data
18350
+ * @return {Promise<PackrunGrowerNotificationModel>}
18351
+ */
18352
+ static update(siteId: number, id: string, updateData: PackrunGrowerNotificationController.UpdateData): Promise<PackrunGrowerNotificationModel>;
18353
+ /**
18354
+ * Delete a Packrun Grower Notification [DELETE /packhouse/sites/{siteId}/packrun-grower-notifications/{id}]
18355
+ *
18356
+ * @static
18357
+ * @public
18358
+ * @param {number} siteId The Site ID
18359
+ * @param {string} id The Packrun Grower Notification ID
18360
+ * @return {Promise<boolean>}
18361
+ */
18362
+ static delete(siteId: number, id: string): Promise<boolean>;
18363
+ /**
18364
+ * Retrieve Comments [GET /packhouse/sites/{siteId}/packrun-grower-notifications/{id}/comments]
18365
+ *
18366
+ * Retrieves Comments for a Packrun Grower Notification
18367
+ *
18368
+ * @static
18369
+ * @public
18370
+ * @param {number} siteId The Site ID
18371
+ * @param {string} id The Packrun Grower Notification ID
18372
+ * @return {Promise<Array<PackrunGrowerNotificationController.CommentItem>>}
18373
+ */
18374
+ static getComments(siteId: number, id: string): Promise<Array<PackrunGrowerNotificationController.CommentItem>>;
18375
+ /**
18376
+ * Create a Comment [POST /packhouse/sites/{siteId}/packrun-grower-notifications/{id}/comments]
18377
+ *
18378
+ * Create a Comment for a Packrun Grower Notification
18379
+ *
18380
+ * @static
18381
+ * @public
18382
+ * @param {number} siteId The Site ID
18383
+ * @param {string} id The Packrun Grower Notification ID
18384
+ * @param {string} content The Content of the New Comment
18385
+ * @return {Promise<PackrunGrowerNotificationController.CommentItem>}
18386
+ */
18387
+ static createComment(siteId: number, id: string, content: string): Promise<PackrunGrowerNotificationController.CommentItem>;
18388
+ /**
18389
+ * Retrieve a Comment [GET /packhouse/sites/{siteId}/packrun-grower-notifications/{id}/comments/{commentId}]
18390
+ *
18391
+ * Retrieves Comments for a Packrun Grower Notification
18392
+ *
18393
+ * @static
18394
+ * @public
18395
+ * @param {number} siteId The Site ID
18396
+ * @param {string} id The Packrun Grower Notification ID
18397
+ * @param {string} commentId The Comment ID
18398
+ * @return {Promise<PackrunGrowerNotificationController.CommentItem>}
18399
+ */
18400
+ static getOneComment(siteId: number, id: string, commentId: string): Promise<PackrunGrowerNotificationController.CommentItem>;
18401
+ /**
18402
+ * Update a Comment [PATCH /packhouse/sites/{siteId}/packrun-grower-notifications/{id}/comments/{commentId}]
18403
+ *
18404
+ * Update a Comment for a Packrun Grower Notification
18405
+ *
18406
+ * @static
18407
+ * @public
18408
+ * @param {number} siteId The Site ID
18409
+ * @param {string} id The Packrun Grower Notification ID
18410
+ * @param {string} commentId The Comment ID
18411
+ * @param {string} content The Updated Content for the Comment
18412
+ * @return {Promise<PackrunGrowerNotificationController.CommentItem>}
18413
+ */
18414
+ static updateOneComment(siteId: number, id: string, commentId: string, content: string): Promise<PackrunGrowerNotificationController.CommentItem>;
18415
+ /**
18416
+ * Delete a Comment [DELETE /packhouse/sites/{siteId}/packrun-grower-notifications/{id}/comments/{commentId}]
18417
+ *
18418
+ * Delete a Comment for a Packrun Grower Notification
18419
+ *
18420
+ * @static
18421
+ * @public
18422
+ * @param {number} siteId The Site ID
18423
+ * @param {string} id The Packrun Grower Notification ID
18424
+ * @param {string} commentId The Comment ID
18425
+ * @return {Promise<boolean>}
18426
+ */
18427
+ static deleteOneComment(siteId: number, id: string, commentId: string): Promise<boolean>;
18428
+ /**
18429
+ * List all Packrun Grower Notifications [GET /packhouse/sites/{siteId}/packrun-grower-notifications]
18430
+ *
18431
+ * @static
18432
+ * @public
18433
+ * @param {number} siteId The Site ID
18434
+ * @param {PackrunGrowerNotificationController.GetAllQueryParameters} [queryParameters] The Optional Query Parameters
18435
+ * @return {Promise<PackrunGrowerNotificationModel[]>}
18436
+ */
18437
+ static getAll(siteId: number, queryParameters?: PackrunGrowerNotificationController.GetAllQueryParameters | undefined): Promise<PackrunGrowerNotificationModel[]>;
18438
+ /**
18439
+ * Create a Packrun Grower Notification [POST /packhouse/sites/{siteId}/packrun-grower-notifications]
18440
+ *
18441
+ * @static
18442
+ * @public
18443
+ * @param {number} siteId The Site ID
18444
+ * @param {PackrunGrowerNotificationController.CreateData} createData The Packrun Grower Notification Create Data
18445
+ * @return {Promise<PackrunGrowerNotificationModel>}
18446
+ */
18447
+ static create(siteId: number, createData: PackrunGrowerNotificationController.CreateData): Promise<PackrunGrowerNotificationModel>;
18448
+ }
18449
+ namespace PackrunGrowerNotificationController {
18450
+ /**
18451
+ * The Optional Query Parameters for the getAll Function
18452
+ */
18453
+ type GetAllQueryParameters = {
18454
+ /**
18455
+ * The Packing Line ID this Grower Notification is associated with
18456
+ */
18457
+ packingLineId?: string | undefined;
18458
+ /**
18459
+ * The Packrun ID this Grower Notification is associated with
18460
+ */
18461
+ packrunId?: string | undefined;
18462
+ /**
18463
+ * The Grower Notification Type
18464
+ */
18465
+ notificationType?: string | undefined;
18466
+ /**
18467
+ * Whether the Grower Notification is in the process of being Sent
18468
+ */
18469
+ status?: string | undefined;
18470
+ /**
18471
+ * Filter by the Timestamp when Grower Notifications were Created. Results Greater than or Equal to Timestamp
18472
+ */
18473
+ createdTimestampBegin?: Date | undefined;
18474
+ /**
18475
+ * Filter by the Timestamp when Grower Notifications were Created. Results Less than or Equal to Timestamp
18476
+ */
18477
+ createdTimestampEnd?: Date | undefined;
18478
+ /**
18479
+ * Filter by the Timestamp when Grower Notifications were last Updated. Results Greater than or Equal to Timestamp
18480
+ */
18481
+ updateTimestampBegin?: Date | undefined;
18482
+ /**
18483
+ * Filter by the Timestamp when Grower Notifications were last Updated. Results Less than or Equal to Timestamp
18484
+ */
18485
+ updateTimestampEnd?: Date | undefined;
18486
+ };
18487
+ /**
18488
+ * The Create Data for a Packrun Grower Notification
18489
+ */
18490
+ type CreateData = {
18491
+ /**
18492
+ * The Packing Line ID this Grower Notification is associated with
18493
+ */
18494
+ packingLineId: string;
18495
+ /**
18496
+ * The Packrun ID this Grower Notification is associated with
18497
+ */
18498
+ packrunId?: string | undefined;
18499
+ /**
18500
+ * When this Grower Notification was Created
18501
+ */
18502
+ createdTimestamp?: Date | undefined;
18503
+ /**
18504
+ * The Grower Notification Type
18505
+ */
18506
+ notificationType: string;
18507
+ /**
18508
+ * The SMS Request Statuses indicating progress when sending SMS Messages
18509
+ */
18510
+ smsRequests?: SmsRequestStatus[] | undefined;
18511
+ /**
18512
+ * The Email Request Status indicating progress when sending Emails
18513
+ */
18514
+ emailRequest?: EmailRequestStatus | null | undefined;
18515
+ /**
18516
+ * Whether the Grower Notification is in the process of being Sent
18517
+ */
18518
+ status: string;
18519
+ /**
18520
+ * An Array of SMS Contacts for this Grower Notification
18521
+ */
18522
+ smsContacts?: SmsContact[] | undefined;
18523
+ /**
18524
+ * An Array of Email Contacts for this Grower Notification
18525
+ */
18526
+ emailContacts?: EmailContact[] | undefined;
18527
+ };
18528
+ /**
18529
+ * The Update Data for a Packrun Grower Notification
18530
+ */
18531
+ type UpdateData = {
18532
+ /**
18533
+ * The Packing Line ID this Grower Notification is associated with
18534
+ */
18535
+ packingLineId?: string | undefined;
18536
+ /**
18537
+ * When this Grower Notification was Created
18538
+ */
18539
+ createdTimestamp?: Date | undefined;
18540
+ /**
18541
+ * The Grower Notification Type
18542
+ */
18543
+ notificationType?: string | undefined;
18544
+ /**
18545
+ * The SMS Request Statuses indicating progress when sending SMS Messages
18546
+ */
18547
+ smsRequests?: SmsRequestStatus[] | undefined;
18548
+ /**
18549
+ * The Email Request Status indicating progress when sending Emails
18550
+ */
18551
+ emailRequest?: EmailRequestStatus | null | undefined;
18552
+ /**
18553
+ * Whether the Grower Notification is in the process of being Sent
18554
+ */
18555
+ status?: string | undefined;
18556
+ /**
18557
+ * An Array of SMS Contacts for this Grower Notification
18558
+ */
18559
+ smsContacts?: SmsContact[] | undefined;
18560
+ /**
18561
+ * An Array of Email Contacts for this Grower Notification
18562
+ */
18563
+ emailContacts?: EmailContact[] | undefined;
18564
+ };
18565
+ /**
18566
+ * A **UserAccount** Type
18567
+ */
18568
+ type UserAccount = {
18569
+ /**
18570
+ * The User Account ID
18571
+ */
18572
+ id: string | null;
18573
+ /**
18574
+ * The User's First Name
18575
+ */
18576
+ firstName: string | null;
18577
+ /**
18578
+ * The User's Last Name
18579
+ */
18580
+ lastName: string | null;
18581
+ };
18582
+ /**
18583
+ * A **CommentItem** Type
18584
+ */
18585
+ type CommentItem = {
18586
+ /**
18587
+ * The Comment ID
18588
+ */
18589
+ id: string;
18590
+ userAccount: UserAccount;
18591
+ /**
18592
+ * The Content of the Comment
18593
+ */
18594
+ content: string | null;
18595
+ /**
18596
+ * When the Comment was Created
18597
+ */
18598
+ createdTimestamp: Date | null;
18599
+ /**
18600
+ * When the Comment was last Updated
18601
+ */
18602
+ updatedTimestamp: Date | null;
18603
+ };
18604
+ /**
18605
+ * A **SmsRequestStatus** Type
18606
+ */
18607
+ type SmsRequestStatus = {
18608
+ /**
18609
+ * The Recipient Mobile Number for this SMS Request
18610
+ */
18611
+ mobileNumber: string;
18612
+ /**
18613
+ * The Message ID returned from the SMS API
18614
+ */
18615
+ messageId: string | null;
18616
+ /**
18617
+ * The Message Status returned from the SMS API
18618
+ */
18619
+ messageStatus: string | null;
18620
+ /**
18621
+ * The Number of API Requests made to Attempt to Send the SMS
18622
+ */
18623
+ sendRequestCount: number;
18624
+ /**
18625
+ * When the latest API Request was made to Send the SMS
18626
+ */
18627
+ sendRequestTimestamp: Date | null;
18628
+ /**
18629
+ * The HTTP Response Code received from the SMS API Send Message Request
18630
+ */
18631
+ sendResponseCode: number | null;
18632
+ /**
18633
+ * The HTTP Response Message received from the SMS API Send Message Request
18634
+ */
18635
+ sendResponseMessage: string | null;
18636
+ /**
18637
+ * The Number of API Requests made to Attempt to Get the SMS Status
18638
+ */
18639
+ getStatusRequestCount: number;
18640
+ /**
18641
+ * When the latest API Request was made to Get the SMS Status
18642
+ */
18643
+ getStatusRequestTimestamp: Date | null;
18644
+ /**
18645
+ * The HTTP Response Code received from the SMS API Get Message Status Request
18646
+ */
18647
+ getStatusResponseCode: number | null;
18648
+ /**
18649
+ * The HTTP Response Message received from the SMS API Get Message Status Request
18650
+ */
18651
+ getStatusResponseMessage: string | null;
18652
+ /**
18653
+ * Whether the sending of API Requests has been completed
18654
+ */
18655
+ completed: boolean;
18656
+ };
18657
+ /**
18658
+ * A **EmailRequestStatus** Type
18659
+ */
18660
+ type EmailRequestStatus = {
18661
+ /**
18662
+ * The Number of API Requests made to Attempt to Send the Email
18663
+ */
18664
+ requestCount: number;
18665
+ /**
18666
+ * When the latest API Request was made
18667
+ */
18668
+ requestTimestamp: Date | null;
18669
+ /**
18670
+ * The HTTP Response Code received from the Email API
18671
+ */
18672
+ responseCode: number | null;
18673
+ /**
18674
+ * The HTTP Response Message received from the Email API
18675
+ */
18676
+ responseMessage: string | null;
18677
+ /**
18678
+ * Whether the sending of API Requests has been completed
18679
+ */
18680
+ completed: boolean;
18681
+ };
18682
+ /**
18683
+ * A **SmsContact** Type
18684
+ */
18685
+ type SmsContact = {
18686
+ /**
18687
+ * Mobile Number of the Contact
18688
+ */
18689
+ mobileNumber: string;
18690
+ /**
18691
+ * First Name of the Contact
18692
+ */
18693
+ firstName: string;
18694
+ /**
18695
+ * Last Name of the Contact
18696
+ */
18697
+ lastName: string | null;
18698
+ };
18699
+ /**
18700
+ * A **EmailContact** Type
18701
+ */
18702
+ type EmailContact = {
18703
+ /**
18704
+ * Email Address of the Contact
18705
+ */
18706
+ email: string;
18707
+ /**
18708
+ * First Name of the Contact
18709
+ */
18710
+ firstName: string;
18711
+ /**
18712
+ * Last Name of the Contact
18713
+ */
18714
+ lastName: string | null;
18715
+ };
18716
+ }
18717
+ import PackrunGrowerNotificationModel from "@ricado/api-client/Models/Packhouse/Site/PackrunGrowerNotificationModel";
18718
+ }
18719
+
18204
18720
  declare module '@ricado/api-client/Controllers/Packhouse/Site/PrePackSampleController' {
18205
18721
  export default PrePackSampleController;
18206
18722
  /**
@@ -20588,6 +21104,14 @@ declare module '@ricado/api-client/Controllers/Packhouse/Site/RejectBinScaleCont
20588
21104
  * Whether Bin Card Printing should use the Specialized FreshPack Windows Driver API
20589
21105
  */
20590
21106
  useWindowsDriverApi?: boolean | undefined;
21107
+ /**
21108
+ * Whether the Net Weight should be used as a single Forced Class Type when creating Multi-Grower Bins and Weights
21109
+ */
21110
+ forceSingleClassType?: boolean | null | undefined;
21111
+ /**
21112
+ * The Forced Class Type of Net Weights when Enabled
21113
+ */
21114
+ forcedClassType?: string | null | undefined;
20591
21115
  };
20592
21116
  }
20593
21117
  import RejectBinScaleModel from "@ricado/api-client/Models/Packhouse/Site/RejectBinScaleModel";
@@ -29136,7 +29660,7 @@ declare module '@ricado/api-client/Models/Packhouse/Site/PackingLineModel' {
29136
29660
  /**
29137
29661
  * The Points used by this Packing Line
29138
29662
  *
29139
- * @type {{currentPackrunId: number, nextPackrunId: number, currentPackrunName: number, nextPackrunName: number, currentPackrunVarietyCode: number, startNextPackrunRequest: number, finishCurrentPackrunRequest: number, availablePackrunList: number, createFromAvailablePackrun: number, currentTimeBatch: number, createNewTimeBatchRequest: number, currentPackrunExportPercentage: number, currentPackrunRejectPercentage: number, currentPackrunFruitSizeSummary: number, currentPackrunTotalExportTrays: number, currentPackrunExportTraysPerBin: number, currentPackrunAverageExportFruitSize: number, currentPackrunTotalClass1LayeredTrays: number, currentPackrunTotalClass1BulkTrays: number, currentPackrunTotalClass2Trays: number, currentPackrunSoftSortEventsPerBin: number, serviceModeActive: number, serviceModeBeginRequest: number, serviceModeFinishRequest: number, serviceModeStartTimestamp: number, serviceModeMaximumDuration: number, disabled: ?number, currentPackrunRecentPackrunSummaries: number, currentPackrunHistoricalPackrunSummaries: number, nextPackrunRecentPackrunSummaries: number, nextPackrunHistoricalPackrunSummaries: number}}
29663
+ * @type {{currentPackrunId: number, nextPackrunId: number, currentPackrunName: number, nextPackrunName: number, currentPackrunVarietyCode: number, startNextPackrunRequest: number, finishCurrentPackrunRequest: number, availablePackrunList: number, createFromAvailablePackrun: number, currentTimeBatch: number, createNewTimeBatchRequest: number, currentPackrunExportPercentage: number, currentPackrunRejectPercentage: number, currentPackrunFruitSizeSummary: number, currentPackrunTotalExportTrays: number, currentPackrunExportTraysPerBin: number, currentPackrunAverageExportFruitSize: number, currentPackrunTotalClass1LayeredTrays: number, currentPackrunTotalClass1BulkTrays: number, currentPackrunTotalClass2Trays: number, currentPackrunSoftSortEventsPerBin: number, serviceModeActive: number, serviceModeBeginRequest: number, serviceModeFinishRequest: number, serviceModeStartTimestamp: number, serviceModeMaximumDuration: number, disabled: ?number, currentPackrunRecentPackrunSummaries: number, currentPackrunHistoricalPackrunSummaries: number, nextPackrunRecentPackrunSummaries: number, nextPackrunHistoricalPackrunSummaries: number, averageSecondsPerBin: ?number, estimatedPackrunTimestamps: ?number}}
29140
29664
  * @public
29141
29665
  */
29142
29666
  points: {
@@ -29171,6 +29695,8 @@ declare module '@ricado/api-client/Models/Packhouse/Site/PackingLineModel' {
29171
29695
  currentPackrunHistoricalPackrunSummaries: number;
29172
29696
  nextPackrunRecentPackrunSummaries: number;
29173
29697
  nextPackrunHistoricalPackrunSummaries: number;
29698
+ averageSecondsPerBin: number | null;
29699
+ estimatedPackrunTimestamps: number | null;
29174
29700
  };
29175
29701
  /**
29176
29702
  * The Sizer Objects that belong to this Packing Line
@@ -29405,7 +29931,7 @@ declare module '@ricado/api-client/Models/Packhouse/Site/PackingLineModel' {
29405
29931
  /**
29406
29932
  * The Optional Shift Management Object for this Packing Line
29407
29933
  *
29408
- * @type {?{points: {currentShiftId: number, currentShiftStatus: number, currentShiftBreakActive: ?number, createNewDayShiftRequest: number, createNewNightShiftRequest: number, startCurrentShiftRequest: number, finishCurrentShiftRequest: number, currentFocusMeetingId: number, startFocusMeetingRequest: number, finishFocusMeetingRequest: number, currentGrowerChangeMeetingId: number, startGrowerChangeMeetingRequest: number, finishGrowerChangeMeetingRequest: number, shiftSchedules: number, currentShiftModifyHourlyEntryRequest: number, currentShiftClass1TraysPerHourTarget: number, currentShiftClass1TraysPerHourAdjustedTarget: number, currentShiftClass1TraysPerHour: number, currentShiftCostPerTrayTarget: number, currentShiftCostPerTrayAdjustedTarget: number, currentShiftCostPerTray: number, currentShiftManningTarget: number, currentShiftClass1Manning: number, currentShiftClass2Manning: number, currentShiftClass1ManningTarget: number, currentShiftClass2ManningTarget: number, currentShiftQualityR600IdealTarget: number, currentShiftQualityR600Ideal: number, currentShiftScorePercentage: number, currentShiftTotalBinsTipped: ?number, currentShiftTotalClass1Trays: ?number, currentShiftTotalClass2Trays: ?number, currentShiftTotalDowntimePercentage: ?number, currentShiftTotalDowntimeSeconds: ?number, currentShiftTotalLayeredTraysPercentage: ?number, currentShiftAverageClass1TraysPerHour: ?number, currentShiftAverageCostPerTray: ?number, currentShiftAverageClass1Manning: ?number, currentShiftAverageClass2Manning: ?number, currentShiftAverageQualityR600Ideal: ?number, currentShiftAverageScorePercentage: ?number, currentShiftProjectedTotalBinsTipped: ?number, class1TraysPerHourTargets: number, class1TraysPerHourAdjustments: number, costPerTrayTargets: number, manningTargets: number, qualityR600IdealTargets: number, layeredTrayPercentageTargets: number, class1PercentageTargets: ?number, costPerManningUnitHour: number, class1TraysPerHourScoreWeighting: number, costPerTrayScoreWeighting: number, qualityR600IdealScoreWeighting: number, summaryReportEmailContacts: number, currentShiftUpdateManningTeamsRequest: ?number, currentShiftUpdateManningTeamsTimestamp: ?number, manningTeams: ?number}, customQualityConfiguration: Array<{id: string, name: string, type: string, points: {currentShiftCustomQualityTarget: number, currentShiftCustomQualityValue: number, currentShiftCustomQualityAverageValue: ?number, customQualityTargets: number, customQualityScoreWeighting: number}}>, enabled: boolean, taskDefinitions: Array<{type: string, tags: Array<{id: string, name: string, color: string, deleted: boolean}>}>, manningUsesTeams: boolean, useDefaultManningAtShiftStart: ?boolean}}
29934
+ * @type {?{points: {currentShiftId: number, currentShiftStatus: number, currentShiftBreakActive: ?number, createNewDayShiftRequest: number, createNewNightShiftRequest: number, startCurrentShiftRequest: number, finishCurrentShiftRequest: number, currentFocusMeetingId: number, startFocusMeetingRequest: number, finishFocusMeetingRequest: number, currentGrowerChangeMeetingId: number, startGrowerChangeMeetingRequest: number, finishGrowerChangeMeetingRequest: number, shiftSchedules: number, currentShiftModifyHourlyEntryRequest: number, currentShiftClass1TraysPerHourTarget: number, currentShiftClass1TraysPerHourAdjustedTarget: number, currentShiftClass1TraysPerHour: number, currentShiftCostPerTrayTarget: number, currentShiftCostPerTrayAdjustedTarget: number, currentShiftCostPerTray: number, currentShiftManningTarget: number, currentShiftClass1Manning: number, currentShiftClass2Manning: number, currentShiftClass1ManningTarget: number, currentShiftClass2ManningTarget: number, currentShiftQualityR600IdealTarget: number, currentShiftQualityR600Ideal: number, currentShiftScorePercentage: number, currentShiftTotalBinsTipped: ?number, currentShiftTotalClass1Trays: ?number, currentShiftTotalClass2Trays: ?number, currentShiftTotalDowntimePercentage: ?number, currentShiftTotalDowntimeSeconds: ?number, currentShiftTotalLayeredTraysPercentage: ?number, currentShiftAverageClass1TraysPerHour: ?number, currentShiftAverageCostPerTray: ?number, currentShiftAverageClass1Manning: ?number, currentShiftAverageClass2Manning: ?number, currentShiftAverageQualityR600Ideal: ?number, currentShiftAverageScorePercentage: ?number, currentShiftProjectedTotalBinsTipped: ?number, class1TraysPerHourTargets: number, class1TraysPerHourAdjustments: number, costPerTrayTargets: number, manningTargets: number, qualityR600IdealTargets: number, layeredTrayPercentageTargets: number, class1PercentageTargets: ?number, costPerManningUnitHour: number, class1TraysPerHourScoreWeighting: number, costPerTrayScoreWeighting: number, qualityR600IdealScoreWeighting: number, summaryReportEmailContacts: number, currentShiftUpdateManningTeamsRequest: ?number, currentShiftUpdateManningTeamsTimestamp: ?number, manningTeams: ?number, packrunChangeDurationTargets: ?number, currentShiftDowntimeActive: ?number, currentShiftPackrunChangeActive: ?number, currentShiftPackrunChangeSecondsTarget: ?number, currentShiftPackrunChangeSecondsElapsed: ?number}, customQualityConfiguration: Array<{id: string, name: string, type: string, points: {currentShiftCustomQualityTarget: number, currentShiftCustomQualityValue: number, currentShiftCustomQualityAverageValue: ?number, customQualityTargets: number, customQualityScoreWeighting: number}}>, enabled: boolean, taskDefinitions: Array<{type: string, tags: Array<{id: string, name: string, color: string, deleted: boolean}>}>, manningUsesTeams: boolean, useDefaultManningAtShiftStart: ?boolean}}
29409
29935
  * @public
29410
29936
  */
29411
29937
  shiftManagement: {
@@ -29467,6 +29993,11 @@ declare module '@ricado/api-client/Models/Packhouse/Site/PackingLineModel' {
29467
29993
  currentShiftUpdateManningTeamsRequest: number | null;
29468
29994
  currentShiftUpdateManningTeamsTimestamp: number | null;
29469
29995
  manningTeams: number | null;
29996
+ packrunChangeDurationTargets: number | null;
29997
+ currentShiftDowntimeActive: number | null;
29998
+ currentShiftPackrunChangeActive: number | null;
29999
+ currentShiftPackrunChangeSecondsTarget: number | null;
30000
+ currentShiftPackrunChangeSecondsElapsed: number | null;
29470
30001
  };
29471
30002
  customQualityConfiguration: {
29472
30003
  id: string;
@@ -29664,6 +30195,26 @@ declare module '@ricado/api-client/Models/Packhouse/Site/PackingLineModel' {
29664
30195
  maturityAreaSampleTypeIds: number[];
29665
30196
  customSampleTypeIds: number[];
29666
30197
  } | null;
30198
+ /**
30199
+ * The Optional Grower Notifications Configuration for this Packing Line
30200
+ *
30201
+ * @type {?{points: {packingSoonAutoNotificationEnabled: number, packingSoonAutoNotificationSeconds: number, packingTodayAutoNotificationEnabled: number, packingTodayAutoNotificationTime: number, sendPackingTodayNotificationRequest: number, packingTodayNotificationProcessed: number, externalContactsCommunicationStatus: number, externalContactsCommunicationLastAttempt: number, externalContactsCommunicationLastError: number}, enabled: boolean}}
30202
+ * @public
30203
+ */
30204
+ growerNotifications: {
30205
+ points: {
30206
+ packingSoonAutoNotificationEnabled: number;
30207
+ packingSoonAutoNotificationSeconds: number;
30208
+ packingTodayAutoNotificationEnabled: number;
30209
+ packingTodayAutoNotificationTime: number;
30210
+ sendPackingTodayNotificationRequest: number;
30211
+ packingTodayNotificationProcessed: number;
30212
+ externalContactsCommunicationStatus: number;
30213
+ externalContactsCommunicationLastAttempt: number;
30214
+ externalContactsCommunicationLastError: number;
30215
+ };
30216
+ enabled: boolean;
30217
+ } | null;
29667
30218
  /**
29668
30219
  * Whether the Packing Line has been deleted
29669
30220
  *
@@ -29689,6 +30240,157 @@ declare module '@ricado/api-client/Models/Packhouse/Site/PackingLineModel' {
29689
30240
  import BaseModel from "@ricado/api-client/Models/BaseModel";
29690
30241
  }
29691
30242
 
30243
+ declare module '@ricado/api-client/Models/Packhouse/Site/PackrunGrowerNotificationModel' {
30244
+ export default PackrunGrowerNotificationModel;
30245
+ /**
30246
+ * Model Class for a Packrun Grower Notification
30247
+ *
30248
+ * @class
30249
+ * @hideconstructor
30250
+ * @extends BaseModel
30251
+ */
30252
+ class PackrunGrowerNotificationModel extends BaseModel {
30253
+ /**
30254
+ * Create a new **PackrunGrowerNotificationModel** from a JSON Object or JSON String
30255
+ *
30256
+ * @static
30257
+ * @public
30258
+ * @param {Object<string, any>|string} json A JSON Object or JSON String
30259
+ * @param {number} siteId The Site ID associated with this Packrun Grower Notification
30260
+ * @return {PackrunGrowerNotificationModel}
30261
+ */
30262
+ static fromJSON(json: {
30263
+ [x: string]: any;
30264
+ } | string, siteId: number): PackrunGrowerNotificationModel;
30265
+ /**
30266
+ * PackrunGrowerNotificationModel Constructor
30267
+ *
30268
+ * @protected
30269
+ * @param {number} siteId The Site ID associated with this Packrun Grower Notification
30270
+ */
30271
+ protected constructor();
30272
+ /**
30273
+ * The Packrun Grower Notification ID
30274
+ *
30275
+ * @type {string}
30276
+ * @public
30277
+ */
30278
+ id: string;
30279
+ /**
30280
+ * The Packing Line ID this Grower Notification is associated with
30281
+ *
30282
+ * @type {string}
30283
+ * @public
30284
+ */
30285
+ packingLineId: string;
30286
+ /**
30287
+ * The Packrun ID this Grower Notification is associated with
30288
+ *
30289
+ * @type {string}
30290
+ * @public
30291
+ */
30292
+ packrunId: string;
30293
+ /**
30294
+ * When this Grower Notification was Created
30295
+ *
30296
+ * @type {Date}
30297
+ * @public
30298
+ */
30299
+ createdTimestamp: Date;
30300
+ /**
30301
+ * The Grower Notification Type
30302
+ *
30303
+ * @type {string}
30304
+ * @public
30305
+ */
30306
+ notificationType: string;
30307
+ /**
30308
+ * The SMS Request Statuses indicating progress when sending SMS Messages
30309
+ *
30310
+ * @type {Array<{mobileNumber: string, messageId: ?string, messageStatus: ?string, sendRequestCount: number, sendRequestTimestamp: ?Date, sendResponseCode: ?number, sendResponseMessage: ?string, getStatusRequestCount: number, getStatusRequestTimestamp: ?Date, getStatusResponseCode: ?number, getStatusResponseMessage: ?string, completed: boolean}>}
30311
+ * @public
30312
+ */
30313
+ smsRequests: {
30314
+ mobileNumber: string;
30315
+ messageId: string | null;
30316
+ messageStatus: string | null;
30317
+ sendRequestCount: number;
30318
+ sendRequestTimestamp: Date | null;
30319
+ sendResponseCode: number | null;
30320
+ sendResponseMessage: string | null;
30321
+ getStatusRequestCount: number;
30322
+ getStatusRequestTimestamp: Date | null;
30323
+ getStatusResponseCode: number | null;
30324
+ getStatusResponseMessage: string | null;
30325
+ completed: boolean;
30326
+ }[];
30327
+ /**
30328
+ * The Email Request Status indicating progress when sending Emails
30329
+ *
30330
+ * @type {?{requestCount: number, requestTimestamp: ?Date, responseCode: ?number, responseMessage: ?string, completed: boolean}}
30331
+ * @public
30332
+ */
30333
+ emailRequest: {
30334
+ requestCount: number;
30335
+ requestTimestamp: Date | null;
30336
+ responseCode: number | null;
30337
+ responseMessage: string | null;
30338
+ completed: boolean;
30339
+ } | null;
30340
+ /**
30341
+ * Whether the Grower Notification is in the process of being Sent
30342
+ *
30343
+ * @type {string}
30344
+ * @public
30345
+ */
30346
+ status: string;
30347
+ /**
30348
+ * An Array of SMS Contacts for this Grower Notification
30349
+ *
30350
+ * @type {Array<{mobileNumber: string, firstName: string, lastName: ?string}>}
30351
+ * @public
30352
+ */
30353
+ smsContacts: {
30354
+ mobileNumber: string;
30355
+ firstName: string;
30356
+ lastName: string | null;
30357
+ }[];
30358
+ /**
30359
+ * An Array of Email Contacts for this Grower Notification
30360
+ *
30361
+ * @type {Array<{email: string, firstName: string, lastName: ?string}>}
30362
+ * @public
30363
+ */
30364
+ emailContacts: {
30365
+ email: string;
30366
+ firstName: string;
30367
+ lastName: string | null;
30368
+ }[];
30369
+ /**
30370
+ * Whether the Packrun Grower Notification has been deleted
30371
+ *
30372
+ * @type {boolean}
30373
+ * @public
30374
+ */
30375
+ deleted: boolean;
30376
+ /**
30377
+ * When the Packrun Grower Notification was last updated
30378
+ *
30379
+ * @type {Date}
30380
+ * @public
30381
+ */
30382
+ updateTimestamp: Date;
30383
+ /**
30384
+ * The Site ID associated with this Packrun Grower Notification
30385
+ *
30386
+ * @type {number}
30387
+ * @public
30388
+ */
30389
+ siteId: number;
30390
+ }
30391
+ import BaseModel from "@ricado/api-client/Models/BaseModel";
30392
+ }
30393
+
29692
30394
  declare module '@ricado/api-client/Models/Packhouse/Site/PackrunModel' {
29693
30395
  export default PackrunModel;
29694
30396
  /**
@@ -30978,7 +31680,7 @@ declare module '@ricado/api-client/Models/Packhouse/Site/RejectBinScaleModel' {
30978
31680
  /**
30979
31681
  * The FreshPack Integration Configuration for this Reject Bin Scale
30980
31682
  *
30981
- * @type {?{points: Object, enabled: boolean, materialGroupId: ?number, binTypeId: number, printerGroupId: ?number, binCardPrintingEnabled: boolean, useWindowsDriverApi: boolean}}
31683
+ * @type {?{points: Object, enabled: boolean, materialGroupId: ?number, binTypeId: number, printerGroupId: ?number, binCardPrintingEnabled: boolean, useWindowsDriverApi: boolean, forceSingleClassType: ?boolean, forcedClassType: ?string}}
30982
31684
  * @public
30983
31685
  */
30984
31686
  freshPackIntegration: {
@@ -30989,6 +31691,8 @@ declare module '@ricado/api-client/Models/Packhouse/Site/RejectBinScaleModel' {
30989
31691
  printerGroupId: number | null;
30990
31692
  binCardPrintingEnabled: boolean;
30991
31693
  useWindowsDriverApi: boolean;
31694
+ forceSingleClassType: boolean | null;
31695
+ forcedClassType: string | null;
30992
31696
  } | null;
30993
31697
  /**
30994
31698
  * Whether the Reject Bin Scale has been deleted