@wix/auto_sdk_containers_project-jobs 1.0.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.
@@ -0,0 +1,1057 @@
1
+ import * as _wix_sdk_types from '@wix/sdk-types';
2
+ import { QuerySpec, Query, NonNullablePaths } from '@wix/sdk-types';
3
+
4
+ interface ProjectJob {
5
+ /**
6
+ * ProjectJob ID.
7
+ * @format GUID
8
+ * @readonly
9
+ */
10
+ _id?: string | null;
11
+ /**
12
+ * ID of the parent ContainersProject this job belongs to.
13
+ * @format GUID
14
+ */
15
+ projectId?: string;
16
+ /** Type of code generation job. */
17
+ jobType?: JobTypeWithLiterals;
18
+ /** Platform intent for the job. */
19
+ platform?: PlatformWithLiterals;
20
+ /** Current execution status of the job. */
21
+ jobStatus?: JobStatusWithLiterals;
22
+ /**
23
+ * Prompt describing the code generation task.
24
+ * @minLength 1
25
+ * @maxLength 10000
26
+ */
27
+ prompt?: string;
28
+ /**
29
+ * Attachments such as Figma links or image URLs.
30
+ * @maxSize 20
31
+ */
32
+ attachments?: Attachment[];
33
+ /** Arbitrary metadata for extensibility. */
34
+ metadata?: Record<string, string>;
35
+ /**
36
+ * Coding agent session ID the AppSmith agent should resume for this job.
37
+ * @format GUID
38
+ */
39
+ codingAgentSessionId?: string;
40
+ /**
41
+ * Error details from the most recent failure.
42
+ * @readonly
43
+ * @maxLength 5000
44
+ */
45
+ failureReason?: string;
46
+ /**
47
+ * Date and time the job started processing.
48
+ * @readonly
49
+ */
50
+ startedDate?: Date | null;
51
+ /**
52
+ * Date and time the job completed or failed.
53
+ * @readonly
54
+ */
55
+ completedDate?: Date | null;
56
+ /**
57
+ * Revision number, which increments by 1 each time the ProjectJob is updated.
58
+ * @readonly
59
+ */
60
+ revision?: string | null;
61
+ /**
62
+ * Date and time the ProjectJob was created.
63
+ * @readonly
64
+ */
65
+ _createdDate?: Date | null;
66
+ /**
67
+ * Date and time the ProjectJob was last updated.
68
+ * @readonly
69
+ */
70
+ _updatedDate?: Date | null;
71
+ /**
72
+ * Public assistant answer, persisted when the agent reports AGENT_DONE.
73
+ * @readonly
74
+ * @maxLength 100000
75
+ */
76
+ assistantResponse?: string | null;
77
+ /**
78
+ * Whether this job's owner is exempt from AI credits, decided once at creation time.
79
+ * @readonly
80
+ */
81
+ creditsExempt?: boolean;
82
+ /**
83
+ * The AI-credits cost (in USD) resolved for this job at creation time. Charged unchanged when
84
+ * the job completes, regardless of any later config change.
85
+ * @readonly
86
+ * @maxLength 20
87
+ */
88
+ creditsCostUsd?: string;
89
+ /**
90
+ * Chat suggestion chips proposed by a GENERATE_SUGGESTIONS job. Empty for every other job type.
91
+ * Set only via UpdateProjectJobStatus, alongside AGENT_DONE — never at creation time.
92
+ * @readonly
93
+ * @maxSize 5
94
+ */
95
+ suggestions?: Suggestion[];
96
+ }
97
+ declare enum JobType {
98
+ INITIAL_GENERATION = "INITIAL_GENERATION",
99
+ USER_REQUEST = "USER_REQUEST",
100
+ /**
101
+ * Reads the current code and recent conversation to propose chat suggestion chips. Read-only —
102
+ * produces no code changes and no checkpoint.
103
+ */
104
+ GENERATE_SUGGESTIONS = "GENERATE_SUGGESTIONS"
105
+ }
106
+ /** @enumType */
107
+ type JobTypeWithLiterals = JobType | 'INITIAL_GENERATION' | 'USER_REQUEST' | 'GENERATE_SUGGESTIONS';
108
+ declare enum Platform {
109
+ IOS = "IOS",
110
+ ANDROID = "ANDROID",
111
+ REACT_NATIVE = "REACT_NATIVE",
112
+ /** Himalaya Mobile (Wix SDUI/OTA content package) — built headlessly on an on-demand remote machine. */
113
+ HIMALAYA_MOBILE = "HIMALAYA_MOBILE"
114
+ }
115
+ /** @enumType */
116
+ type PlatformWithLiterals = Platform | 'IOS' | 'ANDROID' | 'REACT_NATIVE' | 'HIMALAYA_MOBILE';
117
+ declare enum JobStatus {
118
+ PENDING = "PENDING",
119
+ IN_PROGRESS = "IN_PROGRESS",
120
+ COMPLETED = "COMPLETED",
121
+ FAILED = "FAILED",
122
+ CANCELLED = "CANCELLED",
123
+ /**
124
+ * The agent finished coding; the job has not been charged or completed yet.
125
+ * Intermediate state between IN_PROGRESS and COMPLETED, orchestrated by containers-projects.
126
+ */
127
+ AGENT_DONE = "AGENT_DONE"
128
+ }
129
+ /** @enumType */
130
+ type JobStatusWithLiterals = JobStatus | 'PENDING' | 'IN_PROGRESS' | 'COMPLETED' | 'FAILED' | 'CANCELLED' | 'AGENT_DONE';
131
+ interface Attachment {
132
+ /** Type of attachment. */
133
+ type?: AttachmentTypeWithLiterals;
134
+ /**
135
+ * URL or reference to the attachment content.
136
+ * @maxLength 2000
137
+ */
138
+ url?: string;
139
+ /**
140
+ * Optional display name for the attachment.
141
+ * @maxLength 200
142
+ */
143
+ displayName?: string;
144
+ }
145
+ declare enum AttachmentType {
146
+ FIGMA = "FIGMA",
147
+ IMAGE = "IMAGE",
148
+ URL = "URL"
149
+ }
150
+ /** @enumType */
151
+ type AttachmentTypeWithLiterals = AttachmentType | 'FIGMA' | 'IMAGE' | 'URL';
152
+ interface Suggestion {
153
+ /**
154
+ * Short label shown on the suggestion chip.
155
+ * @maxLength 60
156
+ */
157
+ label?: string;
158
+ /**
159
+ * Prompt text inserted into the chat input when the chip is tapped.
160
+ * @maxLength 2000
161
+ */
162
+ prompt?: string;
163
+ }
164
+ interface CreateProjectJobRequest {
165
+ /** ProjectJob to be created. */
166
+ projectJob: ProjectJob;
167
+ }
168
+ interface CreateProjectJobResponse {
169
+ /** The created ProjectJob. */
170
+ projectJob?: ProjectJob;
171
+ }
172
+ interface GetProjectJobRequest {
173
+ /**
174
+ * ID of the ProjectJob to retrieve.
175
+ * @format GUID
176
+ */
177
+ projectJobId: string;
178
+ }
179
+ interface GetProjectJobResponse {
180
+ /** The requested ProjectJob. */
181
+ projectJob?: ProjectJob;
182
+ }
183
+ interface GetCurrentProjectJobRequest {
184
+ /**
185
+ * ID of the project to get the current job for.
186
+ * @format GUID
187
+ */
188
+ projectId: string;
189
+ }
190
+ interface GetCurrentProjectJobResponse {
191
+ /** The highest-priority job, or absent if no actionable job exists. */
192
+ projectJob?: ProjectJob;
193
+ }
194
+ interface UpdateProjectJobStatusRequest {
195
+ /**
196
+ * ID of the job to update.
197
+ * @format GUID
198
+ */
199
+ projectJobId: string;
200
+ /** New status for the job. */
201
+ jobStatus: JobStatusWithLiterals;
202
+ /** Current revision for optimistic locking. */
203
+ revision: string | null;
204
+ /**
205
+ * Failure reason (required when status is FAILED).
206
+ * @maxLength 5000
207
+ */
208
+ failureReason?: string;
209
+ /**
210
+ * Suggested next requests to show after the job finishes.
211
+ * @maxSize 5
212
+ */
213
+ suggestions?: Suggestion[];
214
+ /**
215
+ * Public assistant answer. Only supplied with AGENT_DONE; preserved on later transitions.
216
+ * @maxLength 100000
217
+ */
218
+ assistantResponse?: string | null;
219
+ }
220
+ interface UpdateProjectJobStatusResponse {
221
+ /** The updated job. */
222
+ projectJob?: ProjectJob;
223
+ }
224
+ interface QueryProjectJobsRequest {
225
+ /**
226
+ * ID of the project.
227
+ * @format GUID
228
+ */
229
+ projectId: string;
230
+ /** Cursor query with optional filter, sorting, and paging. */
231
+ query?: CursorQuery;
232
+ }
233
+ interface CursorQuery extends CursorQueryPagingMethodOneOf {
234
+ /**
235
+ * Cursor paging options.
236
+ *
237
+ * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).
238
+ */
239
+ cursorPaging?: CursorPaging;
240
+ /**
241
+ * Filter object.
242
+ *
243
+ * Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).
244
+ */
245
+ filter?: Record<string, any> | null;
246
+ /**
247
+ * Sort object.
248
+ *
249
+ * Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section).
250
+ * @maxSize 5
251
+ */
252
+ sort?: Sorting[];
253
+ }
254
+ /** @oneof */
255
+ interface CursorQueryPagingMethodOneOf {
256
+ /**
257
+ * Cursor paging options.
258
+ *
259
+ * Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).
260
+ */
261
+ cursorPaging?: CursorPaging;
262
+ }
263
+ interface Sorting {
264
+ /**
265
+ * Name of the field to sort by.
266
+ * @maxLength 512
267
+ */
268
+ fieldName?: string;
269
+ /** Sort order. */
270
+ order?: SortOrderWithLiterals;
271
+ }
272
+ declare enum SortOrder {
273
+ ASC = "ASC",
274
+ DESC = "DESC"
275
+ }
276
+ /** @enumType */
277
+ type SortOrderWithLiterals = SortOrder | 'ASC' | 'DESC';
278
+ interface CursorPaging {
279
+ /**
280
+ * Maximum number of items to return in the results.
281
+ * @max 100
282
+ */
283
+ limit?: number | null;
284
+ /**
285
+ * Pointer to the next or previous page in the list of results.
286
+ *
287
+ * Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.
288
+ * Not relevant for the first request.
289
+ * @maxLength 16000
290
+ */
291
+ cursor?: string | null;
292
+ }
293
+ interface QueryProjectJobsResponse {
294
+ /** Jobs matching the filter criteria. */
295
+ projectJobs?: ProjectJob[];
296
+ /** Paging metadata for cursor-based pagination. */
297
+ pagingMetadata?: CursorPagingMetadata;
298
+ }
299
+ interface CursorPagingMetadata {
300
+ /** Number of items returned in current page. */
301
+ count?: number | null;
302
+ /** Cursor strings that point to the next page, previous page, or both. */
303
+ cursors?: Cursors;
304
+ /**
305
+ * Whether there are more pages to retrieve following the current page.
306
+ *
307
+ * + `true`: Another page of results can be retrieved.
308
+ * + `false`: This is the last page.
309
+ */
310
+ hasNext?: boolean | null;
311
+ }
312
+ interface Cursors {
313
+ /**
314
+ * Cursor string pointing to the next page in the list of results.
315
+ * @maxLength 16000
316
+ */
317
+ next?: string | null;
318
+ /**
319
+ * Cursor pointing to the previous page in the list of results.
320
+ * @maxLength 16000
321
+ */
322
+ prev?: string | null;
323
+ }
324
+ interface ClearProjectJobAssistantResponseRequest {
325
+ /**
326
+ * ID of the job whose delivered answer should be dropped.
327
+ * @format GUID
328
+ */
329
+ projectJobId: string;
330
+ }
331
+ interface ClearProjectJobAssistantResponseResponse {
332
+ /** The job with no assistant answer left on it. */
333
+ projectJob?: ProjectJob;
334
+ }
335
+ interface CancelProjectJobRequest {
336
+ /**
337
+ * ID of the job to cancel.
338
+ * @format GUID
339
+ */
340
+ projectJobId: string;
341
+ /** Current revision for optimistic locking. */
342
+ revision: string | null;
343
+ }
344
+ interface CancelProjectJobResponse {
345
+ /** The cancelled job. */
346
+ projectJob?: ProjectJob;
347
+ }
348
+ interface GetLatestProjectJobRequest {
349
+ /**
350
+ * ID of the project to get the latest job for.
351
+ * @format GUID
352
+ */
353
+ projectId: string;
354
+ }
355
+ interface GetLatestProjectJobResponse {
356
+ /**
357
+ * The full ProjectJob (same entity shape as GetProjectJob/GetCurrentProjectJob), or absent
358
+ * if the project has no jobs yet.
359
+ */
360
+ projectJob?: ProjectJob;
361
+ }
362
+ interface CreateSuggestionsJobRequest {
363
+ /**
364
+ * ID of the project receiving the suggestions job.
365
+ * @format GUID
366
+ */
367
+ projectId: string;
368
+ /**
369
+ * ID of the conversation receiving the suggestions.
370
+ * @format GUID
371
+ */
372
+ conversationId: string;
373
+ /**
374
+ * ID of the job whose diff the suggestions should be grounded in — the build/edit job the client
375
+ * just observed complete. Omitted when there is no specific triggering job (e.g. reopening an
376
+ * existing, already-built project's conversation). A wrapper, not a plain string: proto3's
377
+ * string default ("") is indistinguishable on the wire from an explicitly-set empty string, and
378
+ * the format validator rejected that default as "not a valid GUID" for every legitimately
379
+ * omitted caller — confirmed by direct testing against a real client request.
380
+ * @format GUID
381
+ */
382
+ sinceJobId?: string | null;
383
+ }
384
+ interface CreateSuggestionsJobResponse {
385
+ /** The queued suggestions job. */
386
+ projectJob?: ProjectJob;
387
+ }
388
+ interface OpenProjectJobActivityRequest {
389
+ /**
390
+ * ID of the project job.
391
+ * @format GUID
392
+ */
393
+ projectJobId: string;
394
+ /**
395
+ * ID of the activity stream.
396
+ * @format GUID
397
+ */
398
+ streamId: string;
399
+ }
400
+ interface OpenProjectJobActivityResponse {
401
+ /**
402
+ * ID of the project job owning this activity.
403
+ * @format GUID
404
+ */
405
+ jobId?: string;
406
+ /**
407
+ * ID of the activity stream.
408
+ * @format GUID
409
+ */
410
+ streamId?: string;
411
+ /** Highest contiguous persisted batch sequence, or zero before the first batch. */
412
+ latestSequence?: string;
413
+ }
414
+ interface ReportProjectJobActivityRequest {
415
+ /**
416
+ * ID of the project job.
417
+ * @format GUID
418
+ */
419
+ projectJobId: string;
420
+ /** Semantic activity batch to persist. Its Base64-encoded protobuf must fit within 16,000 characters. */
421
+ batch: ActivityBatch;
422
+ }
423
+ interface ActivityBatch {
424
+ /**
425
+ * ID of the project job owning this activity.
426
+ * @format GUID
427
+ */
428
+ jobId?: string;
429
+ /**
430
+ * ID of the activity stream.
431
+ * @format GUID
432
+ */
433
+ streamId?: string;
434
+ /** Sequence within the stream; report batches start at one. */
435
+ batchSequence?: string;
436
+ /** Activity payload schema version; currently one. */
437
+ schemaVersion?: number;
438
+ /**
439
+ * Semantic reporting profile; currently semantic-progress-v1.
440
+ * @maxLength 64
441
+ */
442
+ reportingProfileVersion?: string;
443
+ /** Workflow that produced the activity. */
444
+ workflow?: ActivityWorkflowWithLiterals;
445
+ /**
446
+ * Ordered semantic progress events in this batch.
447
+ * @maxSize 16
448
+ */
449
+ events?: ActivityEvent[];
450
+ }
451
+ declare enum ActivityWorkflow {
452
+ ACTIVITY_WORKFLOW_UNKNOWN = "ACTIVITY_WORKFLOW_UNKNOWN",
453
+ ACTIVITY_INITIAL_GENERATION = "ACTIVITY_INITIAL_GENERATION",
454
+ ACTIVITY_USER_REQUEST = "ACTIVITY_USER_REQUEST"
455
+ }
456
+ /** @enumType */
457
+ type ActivityWorkflowWithLiterals = ActivityWorkflow | 'ACTIVITY_WORKFLOW_UNKNOWN' | 'ACTIVITY_INITIAL_GENERATION' | 'ACTIVITY_USER_REQUEST';
458
+ interface ActivityEvent {
459
+ /**
460
+ * ID of this activity event.
461
+ * @format GUID
462
+ */
463
+ eventId?: string;
464
+ /**
465
+ * Timestamp when the event occurred, in ISO 8601 format.
466
+ * @maxLength 40
467
+ */
468
+ occurredAt?: string;
469
+ /** Reported producer of the event. */
470
+ source?: ActivitySourceWithLiterals;
471
+ /** Semantic activity event type. */
472
+ type?: ActivityEventTypeWithLiterals;
473
+ /**
474
+ * Identifier linking updates to the same work item.
475
+ * @maxLength 128
476
+ */
477
+ activityId?: string;
478
+ /**
479
+ * Work-item category: feature, fix, integration, or design.
480
+ * @maxLength 32
481
+ */
482
+ category?: string;
483
+ /**
484
+ * Single-line progress summary.
485
+ * @maxLength 240
486
+ */
487
+ summary?: string;
488
+ /**
489
+ * Host phase: execution, build, validate, or publish.
490
+ * @maxLength 32
491
+ */
492
+ phase?: string;
493
+ /** Attempt number for a host phase. */
494
+ attempt?: number;
495
+ }
496
+ declare enum ActivitySource {
497
+ ACTIVITY_SOURCE_UNKNOWN = "ACTIVITY_SOURCE_UNKNOWN",
498
+ AGENT = "AGENT",
499
+ HOST = "HOST"
500
+ }
501
+ /** @enumType */
502
+ type ActivitySourceWithLiterals = ActivitySource | 'ACTIVITY_SOURCE_UNKNOWN' | 'AGENT' | 'HOST';
503
+ declare enum ActivityEventType {
504
+ ACTIVITY_EVENT_TYPE_UNKNOWN = "ACTIVITY_EVENT_TYPE_UNKNOWN",
505
+ WORK_ITEM_STARTED = "WORK_ITEM_STARTED",
506
+ WORK_ITEM_UPDATED = "WORK_ITEM_UPDATED",
507
+ WORK_ITEM_COMPLETED = "WORK_ITEM_COMPLETED",
508
+ NOTICE = "NOTICE",
509
+ PHASE_STARTED = "PHASE_STARTED",
510
+ PHASE_COMPLETED = "PHASE_COMPLETED",
511
+ PHASE_FAILED = "PHASE_FAILED",
512
+ ACTIVITY_COMPLETED = "ACTIVITY_COMPLETED",
513
+ ACTIVITY_INTERRUPTED = "ACTIVITY_INTERRUPTED"
514
+ }
515
+ /** @enumType */
516
+ type ActivityEventTypeWithLiterals = ActivityEventType | 'ACTIVITY_EVENT_TYPE_UNKNOWN' | 'WORK_ITEM_STARTED' | 'WORK_ITEM_UPDATED' | 'WORK_ITEM_COMPLETED' | 'NOTICE' | 'PHASE_STARTED' | 'PHASE_COMPLETED' | 'PHASE_FAILED' | 'ACTIVITY_COMPLETED' | 'ACTIVITY_INTERRUPTED';
517
+ interface ReportProjectJobActivityResponse {
518
+ /**
519
+ * ID of the project job owning this activity.
520
+ * @format GUID
521
+ */
522
+ jobId?: string;
523
+ /**
524
+ * ID of the activity stream.
525
+ * @format GUID
526
+ */
527
+ streamId?: string;
528
+ /** Sequence of the batch accepted by this request. */
529
+ acceptedSequence?: string;
530
+ /** Highest contiguous persisted batch sequence, or zero before the first batch. */
531
+ latestSequence?: string;
532
+ }
533
+ interface QueryProjectJobActivityRequest {
534
+ /**
535
+ * ID of the project job.
536
+ * @format GUID
537
+ */
538
+ projectJobId: string;
539
+ /**
540
+ * Omit or leave empty to query the latest stream. Non-empty UUIDs are validated by the service
541
+ * so the original string wire type can accept omission without GUID validation rejecting it.
542
+ * @maxLength 36
543
+ */
544
+ streamId?: string;
545
+ /** Return batches after this sequence; zero starts at the first batch. */
546
+ afterSequence?: string;
547
+ /** Maximum batches to return; defaults to 50 and is capped at 100. */
548
+ limit?: number;
549
+ }
550
+ interface QueryProjectJobActivityResponse {
551
+ /** Persisted batches in contiguous sequence order. */
552
+ batches?: ActivityBatch[];
553
+ /** Highest contiguous persisted batch sequence, or zero before the first batch. */
554
+ latestSequence?: string;
555
+ /** Sequence immediately after the last returned batch. */
556
+ nextSequence?: string;
557
+ /** Whether requested history has expired. */
558
+ historyExpired?: boolean;
559
+ /**
560
+ * ID of the project job owning this activity.
561
+ * @format GUID
562
+ */
563
+ jobId?: string;
564
+ /**
565
+ * ID of the activity stream.
566
+ * @format GUID
567
+ */
568
+ streamId?: string;
569
+ /**
570
+ * Configured Duplexer publisher application ID, when available.
571
+ * @format GUID
572
+ */
573
+ notificationAppDefId?: string;
574
+ }
575
+ interface DomainEvent extends DomainEventBodyOneOf {
576
+ createdEvent?: EntityCreatedEvent;
577
+ updatedEvent?: EntityUpdatedEvent;
578
+ deletedEvent?: EntityDeletedEvent;
579
+ actionEvent?: ActionEvent;
580
+ /** Event ID. With this ID you can easily spot duplicated events and ignore them. */
581
+ _id?: string;
582
+ /**
583
+ * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.
584
+ * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.
585
+ */
586
+ entityFqdn?: string;
587
+ /**
588
+ * Event action name, placed at the top level to make it easier for users to dispatch messages.
589
+ * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.
590
+ */
591
+ slug?: string;
592
+ /** ID of the entity associated with the event. */
593
+ entityId?: string;
594
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */
595
+ eventTime?: Date | null;
596
+ /**
597
+ * Whether the event was triggered as a result of a privacy regulation application
598
+ * (for example, GDPR).
599
+ */
600
+ triggeredByAnonymizeRequest?: boolean | null;
601
+ /** If present, indicates the action that triggered the event. */
602
+ originatedFrom?: string | null;
603
+ /**
604
+ * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at `16:00` and then again at `16:01`, the second update will always have a higher sequence number.
605
+ * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.
606
+ */
607
+ entityEventSequence?: string | null;
608
+ }
609
+ /** @oneof */
610
+ interface DomainEventBodyOneOf {
611
+ createdEvent?: EntityCreatedEvent;
612
+ updatedEvent?: EntityUpdatedEvent;
613
+ deletedEvent?: EntityDeletedEvent;
614
+ actionEvent?: ActionEvent;
615
+ }
616
+ interface EntityCreatedEvent {
617
+ entity?: string;
618
+ }
619
+ interface RestoreInfo {
620
+ deletedDate?: Date | null;
621
+ }
622
+ interface EntityUpdatedEvent {
623
+ /**
624
+ * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.
625
+ * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.
626
+ * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.
627
+ */
628
+ currentEntity?: string;
629
+ }
630
+ interface EntityDeletedEvent {
631
+ /** Entity that was deleted. */
632
+ deletedEntity?: string | null;
633
+ }
634
+ interface ActionEvent {
635
+ body?: string;
636
+ }
637
+ interface MessageEnvelope {
638
+ /**
639
+ * App instance ID.
640
+ * @format GUID
641
+ */
642
+ instanceId?: string | null;
643
+ /**
644
+ * Event type.
645
+ * @maxLength 150
646
+ */
647
+ eventType?: string;
648
+ /** The identification type and identity data. */
649
+ identity?: IdentificationData;
650
+ /** Stringify payload. */
651
+ data?: string;
652
+ /** Details related to the account */
653
+ accountInfo?: AccountInfo;
654
+ }
655
+ interface IdentificationData extends IdentificationDataIdOneOf {
656
+ /**
657
+ * ID of a site visitor that has not logged in to the site.
658
+ * @format GUID
659
+ */
660
+ anonymousVisitorId?: string;
661
+ /**
662
+ * ID of a site visitor that has logged in to the site.
663
+ * @format GUID
664
+ */
665
+ memberId?: string;
666
+ /**
667
+ * ID of a Wix user (site owner, contributor, etc.).
668
+ * @format GUID
669
+ */
670
+ wixUserId?: string;
671
+ /**
672
+ * ID of an app.
673
+ * @format GUID
674
+ */
675
+ appId?: string;
676
+ /** @readonly */
677
+ identityType?: WebhookIdentityTypeWithLiterals;
678
+ }
679
+ /** @oneof */
680
+ interface IdentificationDataIdOneOf {
681
+ /**
682
+ * ID of a site visitor that has not logged in to the site.
683
+ * @format GUID
684
+ */
685
+ anonymousVisitorId?: string;
686
+ /**
687
+ * ID of a site visitor that has logged in to the site.
688
+ * @format GUID
689
+ */
690
+ memberId?: string;
691
+ /**
692
+ * ID of a Wix user (site owner, contributor, etc.).
693
+ * @format GUID
694
+ */
695
+ wixUserId?: string;
696
+ /**
697
+ * ID of an app.
698
+ * @format GUID
699
+ */
700
+ appId?: string;
701
+ }
702
+ declare enum WebhookIdentityType {
703
+ UNKNOWN = "UNKNOWN",
704
+ ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR",
705
+ MEMBER = "MEMBER",
706
+ WIX_USER = "WIX_USER",
707
+ APP = "APP"
708
+ }
709
+ /** @enumType */
710
+ type WebhookIdentityTypeWithLiterals = WebhookIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
711
+ interface AccountInfo {
712
+ /**
713
+ * ID of the Wix account associated with the event.
714
+ * @format GUID
715
+ */
716
+ accountId?: string | null;
717
+ /**
718
+ * ID of the parent Wix account. Only included when accountId belongs to a child account.
719
+ * @format GUID
720
+ */
721
+ parentAccountId?: string | null;
722
+ /**
723
+ * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.
724
+ * @format GUID
725
+ */
726
+ siteId?: string | null;
727
+ }
728
+ /**
729
+ * Creates a new ProjectJob.
730
+ * @param projectJob - ProjectJob to be created.
731
+ * @internal
732
+ * @documentationMaturity preview
733
+ * @requiredField projectJob
734
+ * @requiredField projectJob.platform
735
+ * @requiredField projectJob.projectId
736
+ * @requiredField projectJob.prompt
737
+ * @permissionId containers:project_jobs:v1:project_job:create_project_job
738
+ * @returns The created ProjectJob.
739
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.CreateProjectJob
740
+ */
741
+ declare function createProjectJob(projectJob: NonNullablePaths<ProjectJob, `platform` | `projectId` | `prompt`, 0>): Promise<NonNullablePaths<ProjectJob, `projectId` | `jobType` | `platform` | `jobStatus` | `prompt` | `attachments` | `attachments.${number}.type` | `attachments.${number}.url` | `attachments.${number}.displayName` | `codingAgentSessionId` | `failureReason` | `creditsExempt` | `creditsCostUsd` | `suggestions` | `suggestions.${number}.label` | `suggestions.${number}.prompt`, 2>>;
742
+ /**
743
+ * Retrieves a ProjectJob by ID.
744
+ * @param projectJobId - ID of the ProjectJob to retrieve.
745
+ * @internal
746
+ * @documentationMaturity preview
747
+ * @requiredField projectJobId
748
+ * @permissionId containers:project_jobs:v1:project_job:get_project_job
749
+ * @returns The requested ProjectJob.
750
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.GetProjectJob
751
+ */
752
+ declare function getProjectJob(projectJobId: string): Promise<NonNullablePaths<ProjectJob, `projectId` | `jobType` | `platform` | `jobStatus` | `prompt` | `attachments` | `attachments.${number}.type` | `attachments.${number}.url` | `attachments.${number}.displayName` | `codingAgentSessionId` | `failureReason` | `creditsExempt` | `creditsCostUsd` | `suggestions` | `suggestions.${number}.label` | `suggestions.${number}.prompt`, 2>>;
753
+ /**
754
+ * Gets the highest-priority job that the agent should work on next.
755
+ * @param projectId - ID of the project to get the current job for.
756
+ * @internal
757
+ * @documentationMaturity preview
758
+ * @requiredField projectId
759
+ * @permissionId containers:project_jobs:v1:project_job:get_current_project_job
760
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.GetCurrentProjectJob
761
+ */
762
+ declare function getCurrentProjectJob(projectId: string): Promise<NonNullablePaths<GetCurrentProjectJobResponse, `projectJob.projectId` | `projectJob.jobType` | `projectJob.platform` | `projectJob.jobStatus` | `projectJob.prompt` | `projectJob.attachments` | `projectJob.attachments.${number}.type` | `projectJob.attachments.${number}.url` | `projectJob.attachments.${number}.displayName` | `projectJob.codingAgentSessionId` | `projectJob.failureReason` | `projectJob.creditsExempt` | `projectJob.creditsCostUsd` | `projectJob.suggestions` | `projectJob.suggestions.${number}.label` | `projectJob.suggestions.${number}.prompt`, 3>>;
763
+ /**
764
+ * Updates the status of a job with state-machine enforcement.
765
+ * @param projectJobId - ID of the job to update.
766
+ * @param jobStatus - New status for the job.
767
+ * @internal
768
+ * @documentationMaturity preview
769
+ * @requiredField jobStatus
770
+ * @requiredField options.revision
771
+ * @requiredField projectJobId
772
+ * @permissionId containers:project_jobs:v1:project_job:update_project_job_status
773
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.UpdateProjectJobStatus
774
+ */
775
+ declare function updateProjectJobStatus(projectJobId: string, jobStatus: JobStatusWithLiterals, options?: NonNullablePaths<UpdateProjectJobStatusOptions, `revision`, 0>): Promise<NonNullablePaths<UpdateProjectJobStatusResponse, `projectJob.projectId` | `projectJob.jobType` | `projectJob.platform` | `projectJob.jobStatus` | `projectJob.prompt` | `projectJob.attachments` | `projectJob.attachments.${number}.type` | `projectJob.attachments.${number}.url` | `projectJob.attachments.${number}.displayName` | `projectJob.codingAgentSessionId` | `projectJob.failureReason` | `projectJob.creditsExempt` | `projectJob.creditsCostUsd` | `projectJob.suggestions` | `projectJob.suggestions.${number}.label` | `projectJob.suggestions.${number}.prompt`, 3>>;
776
+ interface UpdateProjectJobStatusOptions {
777
+ /** Current revision for optimistic locking. */
778
+ revision: string | null;
779
+ /**
780
+ * Failure reason (required when status is FAILED).
781
+ * @maxLength 5000
782
+ */
783
+ failureReason?: string;
784
+ /**
785
+ * Suggested next requests to show after the job finishes.
786
+ * @maxSize 5
787
+ */
788
+ suggestions?: Suggestion[];
789
+ /**
790
+ * Public assistant answer. Only supplied with AGENT_DONE; preserved on later transitions.
791
+ * @maxLength 100000
792
+ */
793
+ assistantResponse?: string | null;
794
+ }
795
+ /**
796
+ * Queries jobs for a project with optional filtering.
797
+ * @internal
798
+ * @documentationMaturity preview
799
+ * @permissionId containers:project_jobs:v1:project_job:query_project_jobs
800
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.QueryProjectJobs
801
+ */
802
+ declare function queryProjectJobs(options: QueryProjectJobsOptions): ProjectJobsQueryBuilder;
803
+ interface QueryProjectJobsOptions {
804
+ /**
805
+ * ID of the project.
806
+ * @format GUID
807
+ */
808
+ projectId: string;
809
+ }
810
+ interface QueryCursorResult {
811
+ cursors: Cursors;
812
+ hasNext: () => boolean;
813
+ hasPrev: () => boolean;
814
+ length: number;
815
+ pageSize: number;
816
+ }
817
+ interface ProjectJobsQueryResult extends QueryCursorResult {
818
+ items: ProjectJob[];
819
+ query: ProjectJobsQueryBuilder;
820
+ next: () => Promise<ProjectJobsQueryResult>;
821
+ prev: () => Promise<ProjectJobsQueryResult>;
822
+ }
823
+ interface ProjectJobsQueryBuilder {
824
+ /** @param propertyName - Property whose value is compared with `value`.
825
+ * @param value - Value to compare against.
826
+ * @documentationMaturity preview
827
+ */
828
+ eq: (propertyName: '_id' | 'projectId' | 'jobStatus', value: any) => ProjectJobsQueryBuilder;
829
+ /** @param propertyName - Property whose value is compared with `value`.
830
+ * @param value - Value to compare against.
831
+ * @documentationMaturity preview
832
+ */
833
+ ne: (propertyName: '_id' | 'projectId' | 'jobStatus', value: any) => ProjectJobsQueryBuilder;
834
+ /** @param propertyName - Property whose value is compared with `value`.
835
+ * @param value - Value to compare against.
836
+ * @documentationMaturity preview
837
+ */
838
+ ge: (propertyName: '_id' | 'projectId', value: any) => ProjectJobsQueryBuilder;
839
+ /** @param propertyName - Property whose value is compared with `value`.
840
+ * @param value - Value to compare against.
841
+ * @documentationMaturity preview
842
+ */
843
+ gt: (propertyName: '_id' | 'projectId', value: any) => ProjectJobsQueryBuilder;
844
+ /** @param propertyName - Property whose value is compared with `value`.
845
+ * @param value - Value to compare against.
846
+ * @documentationMaturity preview
847
+ */
848
+ le: (propertyName: '_id' | 'projectId', value: any) => ProjectJobsQueryBuilder;
849
+ /** @param propertyName - Property whose value is compared with `value`.
850
+ * @param value - Value to compare against.
851
+ * @documentationMaturity preview
852
+ */
853
+ lt: (propertyName: '_id' | 'projectId', value: any) => ProjectJobsQueryBuilder;
854
+ /** @param propertyName - Property whose value is compared with `string`.
855
+ * @param string - String to compare against. Case-insensitive.
856
+ * @documentationMaturity preview
857
+ */
858
+ startsWith: (propertyName: '_id' | 'projectId', value: string) => ProjectJobsQueryBuilder;
859
+ /** @documentationMaturity preview */
860
+ in: (propertyName: '_id' | 'projectId' | 'jobStatus', value: any) => ProjectJobsQueryBuilder;
861
+ /** @documentationMaturity preview */
862
+ exists: (propertyName: '_id' | 'projectId' | 'jobStatus', value: boolean) => ProjectJobsQueryBuilder;
863
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.
864
+ * @documentationMaturity preview
865
+ */
866
+ ascending: (...propertyNames: Array<'_id' | 'projectId' | 'jobStatus'>) => ProjectJobsQueryBuilder;
867
+ /** @param propertyNames - Properties used in the sort. To sort by multiple properties, pass properties as additional arguments.
868
+ * @documentationMaturity preview
869
+ */
870
+ descending: (...propertyNames: Array<'_id' | 'projectId' | 'jobStatus'>) => ProjectJobsQueryBuilder;
871
+ /** @param limit - Number of items to return, which is also the `pageSize` of the results object.
872
+ * @documentationMaturity preview
873
+ */
874
+ limit: (limit: number) => ProjectJobsQueryBuilder;
875
+ /** @param cursor - A pointer to specific record
876
+ * @documentationMaturity preview
877
+ */
878
+ skipTo: (cursor: string) => ProjectJobsQueryBuilder;
879
+ /** @documentationMaturity preview */
880
+ find: () => Promise<ProjectJobsQueryResult>;
881
+ }
882
+ /**
883
+ * @hidden
884
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.QueryProjectJobs
885
+ * @requiredField query
886
+ * @requiredField options
887
+ */
888
+ declare function typedQueryProjectJobs(query: ProjectJobQuery, options: QueryProjectJobsOptions): Promise<NonNullablePaths<QueryProjectJobsResponse, `projectJobs` | `projectJobs.${number}.projectId` | `projectJobs.${number}.jobType` | `projectJobs.${number}.platform` | `projectJobs.${number}.jobStatus` | `projectJobs.${number}.prompt` | `projectJobs.${number}.codingAgentSessionId` | `projectJobs.${number}.failureReason` | `projectJobs.${number}.creditsExempt` | `projectJobs.${number}.creditsCostUsd`, 2>>;
889
+ interface ProjectJobQuerySpec extends QuerySpec {
890
+ paging: 'cursor';
891
+ wql: [
892
+ {
893
+ fields: ['_id', 'jobStatus', 'projectId'];
894
+ operators: '*';
895
+ sort: 'BOTH';
896
+ }
897
+ ];
898
+ }
899
+ type CommonQueryWithEntityContext = Query<ProjectJob, ProjectJobQuerySpec>;
900
+ type ProjectJobQuery = {
901
+ /**
902
+ Cursor paging options.
903
+
904
+ Learn more about [cursor paging](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#cursor-paging).
905
+ */
906
+ cursorPaging?: {
907
+ /**
908
+ Maximum number of items to return in the results.
909
+ @max: 100
910
+ */
911
+ limit?: NonNullable<CommonQueryWithEntityContext['cursorPaging']>['limit'] | null;
912
+ /**
913
+ Pointer to the next or previous page in the list of results.
914
+
915
+ Pass the relevant cursor token from the `pagingMetadata` object in the previous call's response.
916
+ Not relevant for the first request.
917
+ @maxLength: 16000
918
+ */
919
+ cursor?: NonNullable<CommonQueryWithEntityContext['cursorPaging']>['cursor'] | null;
920
+ };
921
+ /**
922
+ Filter object.
923
+
924
+ Learn more about the [filter section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-filter-section).
925
+ */
926
+ filter?: CommonQueryWithEntityContext['filter'] | null;
927
+ /**
928
+ Sort object.
929
+
930
+ Learn more about the [sort section](https://dev.wix.com/docs/rest/articles/getting-started/api-query-language#the-sort-section).
931
+ @maxSize: 5
932
+ */
933
+ sort?: {
934
+ /**
935
+ Name of the field to sort by.
936
+ @maxLength: 512
937
+ */
938
+ fieldName?: NonNullable<CommonQueryWithEntityContext['sort']>[number]['fieldName'];
939
+ /**
940
+ Sort order.
941
+ */
942
+ order?: NonNullable<CommonQueryWithEntityContext['sort']>[number]['order'];
943
+ }[];
944
+ };
945
+ declare const utils: {
946
+ query: _wix_sdk_types.QueryHelpers<ProjectJob, ProjectJobQuerySpec, ProjectJobQuery>;
947
+ };
948
+ /**
949
+ * Drops a job's assistant answer once it has reached the conversation it was meant for. Called by
950
+ * containers-projects after a successful chat write, so the job does not keep a second, indefinite
951
+ * copy of user-visible text that Chat already stores under its own retention rules.
952
+ * @param projectJobId - ID of the job whose delivered answer should be dropped.
953
+ * @internal
954
+ * @documentationMaturity preview
955
+ * @requiredField projectJobId
956
+ * @permissionId containers:project_jobs:v1:project_job:clear_project_job_assistant_response
957
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.ClearProjectJobAssistantResponse
958
+ */
959
+ declare function clearProjectJobAssistantResponse(projectJobId: string): Promise<NonNullablePaths<ClearProjectJobAssistantResponseResponse, `projectJob.projectId` | `projectJob.jobType` | `projectJob.platform` | `projectJob.jobStatus` | `projectJob.prompt` | `projectJob.attachments` | `projectJob.attachments.${number}.type` | `projectJob.attachments.${number}.url` | `projectJob.attachments.${number}.displayName` | `projectJob.codingAgentSessionId` | `projectJob.failureReason` | `projectJob.creditsExempt` | `projectJob.creditsCostUsd` | `projectJob.suggestions` | `projectJob.suggestions.${number}.label` | `projectJob.suggestions.${number}.prompt`, 3>>;
960
+ /**
961
+ * Cancels a pending job.
962
+ * @param projectJobId - ID of the job to cancel.
963
+ * @param revision - Current revision for optimistic locking.
964
+ * @internal
965
+ * @documentationMaturity preview
966
+ * @requiredField projectJobId
967
+ * @requiredField revision
968
+ * @permissionId containers:project_jobs:v1:project_job:cancel_project_job
969
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.CancelProjectJob
970
+ */
971
+ declare function cancelProjectJob(projectJobId: string, revision: string): Promise<NonNullablePaths<CancelProjectJobResponse, `projectJob.projectId` | `projectJob.jobType` | `projectJob.platform` | `projectJob.jobStatus` | `projectJob.prompt` | `projectJob.attachments` | `projectJob.attachments.${number}.type` | `projectJob.attachments.${number}.url` | `projectJob.attachments.${number}.displayName` | `projectJob.codingAgentSessionId` | `projectJob.failureReason` | `projectJob.creditsExempt` | `projectJob.creditsCostUsd` | `projectJob.suggestions` | `projectJob.suggestions.${number}.label` | `projectJob.suggestions.${number}.prompt`, 3>>;
972
+ /**
973
+ * Gets the latest job for a project, for the project owner to poll build progress.
974
+ * @param projectId - ID of the project to get the latest job for.
975
+ * @internal
976
+ * @documentationMaturity preview
977
+ * @requiredField projectId
978
+ * @permissionId containers:project_jobs:v1:project_job:get_latest_project_job
979
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.GetLatestProjectJob
980
+ */
981
+ declare function getLatestProjectJob(projectId: string): Promise<NonNullablePaths<GetLatestProjectJobResponse, `projectJob.projectId` | `projectJob.jobType` | `projectJob.platform` | `projectJob.jobStatus` | `projectJob.prompt` | `projectJob.attachments` | `projectJob.attachments.${number}.type` | `projectJob.attachments.${number}.url` | `projectJob.attachments.${number}.displayName` | `projectJob.codingAgentSessionId` | `projectJob.failureReason` | `projectJob.creditsExempt` | `projectJob.creditsCostUsd` | `projectJob.suggestions` | `projectJob.suggestions.${number}.label` | `projectJob.suggestions.${number}.prompt`, 3>>;
982
+ /**
983
+ * Queues suggestions for the current project conversation.
984
+ * @param projectId - ID of the project receiving the suggestions job.
985
+ * @internal
986
+ * @documentationMaturity preview
987
+ * @requiredField options.conversationId
988
+ * @requiredField projectId
989
+ * @permissionId containers:project_jobs:v1:project_job:create_suggestions_job
990
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.CreateSuggestionsJob
991
+ */
992
+ declare function createSuggestionsJob(projectId: string, options?: NonNullablePaths<CreateSuggestionsJobOptions, `conversationId`, 0>): Promise<NonNullablePaths<CreateSuggestionsJobResponse, `projectJob.projectId` | `projectJob.jobType` | `projectJob.platform` | `projectJob.jobStatus` | `projectJob.prompt` | `projectJob.attachments` | `projectJob.attachments.${number}.type` | `projectJob.attachments.${number}.url` | `projectJob.attachments.${number}.displayName` | `projectJob.codingAgentSessionId` | `projectJob.failureReason` | `projectJob.creditsExempt` | `projectJob.creditsCostUsd` | `projectJob.suggestions` | `projectJob.suggestions.${number}.label` | `projectJob.suggestions.${number}.prompt`, 3>>;
993
+ interface CreateSuggestionsJobOptions {
994
+ /**
995
+ * ID of the conversation receiving the suggestions.
996
+ * @format GUID
997
+ */
998
+ conversationId: string;
999
+ /**
1000
+ * ID of the job whose diff the suggestions should be grounded in — the build/edit job the client
1001
+ * just observed complete. Omitted when there is no specific triggering job (e.g. reopening an
1002
+ * existing, already-built project's conversation). A wrapper, not a plain string: proto3's
1003
+ * string default ("") is indistinguishable on the wire from an explicitly-set empty string, and
1004
+ * the format validator rejected that default as "not a valid GUID" for every legitimately
1005
+ * omitted caller — confirmed by direct testing against a real client request.
1006
+ * @format GUID
1007
+ */
1008
+ sinceJobId?: string | null;
1009
+ }
1010
+ /**
1011
+ * Registers the activity stream for an active job owned by the caller.
1012
+ * @param projectJobId - ID of the project job.
1013
+ * @param streamId - ID of the activity stream.
1014
+ * @internal
1015
+ * @documentationMaturity preview
1016
+ * @requiredField projectJobId
1017
+ * @requiredField streamId
1018
+ * @permissionId containers:project_jobs:v1:project_job:open_project_job_activity
1019
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.OpenProjectJobActivity
1020
+ */
1021
+ declare function openProjectJobActivity(projectJobId: string, streamId: string): Promise<NonNullablePaths<OpenProjectJobActivityResponse, `jobId` | `streamId` | `latestSequence`, 0>>;
1022
+ /**
1023
+ * Persists an idempotent semantic activity batch for the registered stream.
1024
+ * @param projectJobId - ID of the project job.
1025
+ * @param batch - Semantic activity batch to persist. Its Base64-encoded protobuf must fit within 16,000 characters.
1026
+ * @internal
1027
+ * @documentationMaturity preview
1028
+ * @requiredField batch
1029
+ * @requiredField projectJobId
1030
+ * @permissionId containers:project_jobs:v1:project_job:report_project_job_activity
1031
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.ReportProjectJobActivity
1032
+ */
1033
+ declare function reportProjectJobActivity(projectJobId: string, batch: ActivityBatch): Promise<NonNullablePaths<ReportProjectJobActivityResponse, `jobId` | `streamId` | `acceptedSequence` | `latestSequence`, 0>>;
1034
+ /**
1035
+ * Replays persisted activity for the current owner, using the latest stream when omitted.
1036
+ * @param projectJobId - ID of the project job.
1037
+ * @internal
1038
+ * @documentationMaturity preview
1039
+ * @requiredField projectJobId
1040
+ * @permissionId containers:project_jobs:v1:project_job:query_project_job_activity
1041
+ * @fqn wix.containers.project.jobs.v1.ContainersProjectJobs.QueryProjectJobActivity
1042
+ */
1043
+ declare function queryProjectJobActivity(projectJobId: string, options?: QueryProjectJobActivityOptions): Promise<NonNullablePaths<QueryProjectJobActivityResponse, `batches` | `batches.${number}.jobId` | `batches.${number}.streamId` | `batches.${number}.batchSequence` | `batches.${number}.schemaVersion` | `batches.${number}.reportingProfileVersion` | `batches.${number}.workflow` | `latestSequence` | `nextSequence` | `historyExpired` | `jobId` | `streamId` | `notificationAppDefId`, 2>>;
1044
+ interface QueryProjectJobActivityOptions {
1045
+ /**
1046
+ * Omit or leave empty to query the latest stream. Non-empty UUIDs are validated by the service
1047
+ * so the original string wire type can accept omission without GUID validation rejecting it.
1048
+ * @maxLength 36
1049
+ */
1050
+ streamId?: string;
1051
+ /** Return batches after this sequence; zero starts at the first batch. */
1052
+ afterSequence?: string;
1053
+ /** Maximum batches to return; defaults to 50 and is capped at 100. */
1054
+ limit?: number;
1055
+ }
1056
+
1057
+ export { type AccountInfo, type ActionEvent, type ActivityBatch, type ActivityEvent, ActivityEventType, type ActivityEventTypeWithLiterals, ActivitySource, type ActivitySourceWithLiterals, ActivityWorkflow, type ActivityWorkflowWithLiterals, type Attachment, AttachmentType, type AttachmentTypeWithLiterals, type CancelProjectJobRequest, type CancelProjectJobResponse, type ClearProjectJobAssistantResponseRequest, type ClearProjectJobAssistantResponseResponse, type CommonQueryWithEntityContext, type CreateProjectJobRequest, type CreateProjectJobResponse, type CreateSuggestionsJobOptions, type CreateSuggestionsJobRequest, type CreateSuggestionsJobResponse, type CursorPaging, type CursorPagingMetadata, type CursorQuery, type CursorQueryPagingMethodOneOf, type Cursors, type DomainEvent, type DomainEventBodyOneOf, type EntityCreatedEvent, type EntityDeletedEvent, type EntityUpdatedEvent, type GetCurrentProjectJobRequest, type GetCurrentProjectJobResponse, type GetLatestProjectJobRequest, type GetLatestProjectJobResponse, type GetProjectJobRequest, type GetProjectJobResponse, type IdentificationData, type IdentificationDataIdOneOf, JobStatus, type JobStatusWithLiterals, JobType, type JobTypeWithLiterals, type MessageEnvelope, type OpenProjectJobActivityRequest, type OpenProjectJobActivityResponse, Platform, type PlatformWithLiterals, type ProjectJob, type ProjectJobQuery, type ProjectJobQuerySpec, type ProjectJobsQueryBuilder, type ProjectJobsQueryResult, type QueryProjectJobActivityOptions, type QueryProjectJobActivityRequest, type QueryProjectJobActivityResponse, type QueryProjectJobsOptions, type QueryProjectJobsRequest, type QueryProjectJobsResponse, type ReportProjectJobActivityRequest, type ReportProjectJobActivityResponse, type RestoreInfo, SortOrder, type SortOrderWithLiterals, type Sorting, type Suggestion, type UpdateProjectJobStatusOptions, type UpdateProjectJobStatusRequest, type UpdateProjectJobStatusResponse, WebhookIdentityType, type WebhookIdentityTypeWithLiterals, cancelProjectJob, clearProjectJobAssistantResponse, createProjectJob, createSuggestionsJob, getCurrentProjectJob, getLatestProjectJob, getProjectJob, openProjectJobActivity, queryProjectJobActivity, queryProjectJobs, reportProjectJobActivity, typedQueryProjectJobs, updateProjectJobStatus, utils };