@dazl/api-client 1.0.30 → 1.0.32

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.
@@ -2043,6 +2043,69 @@ export type GetRepoInfoResponses = {
2043
2043
 
2044
2044
  export type GetRepoInfoResponse = GetRepoInfoResponses[keyof GetRepoInfoResponses];
2045
2045
 
2046
+ export type GetProjectRepoInfoData = {
2047
+ body?: never;
2048
+ path: {
2049
+ projectId: string;
2050
+ repoId: string;
2051
+ };
2052
+ query?: never;
2053
+ url: '/github/repo/project/{projectId}/{repoId}/info';
2054
+ };
2055
+
2056
+ export type GetProjectRepoInfoErrors = {
2057
+ /**
2058
+ * Bad request - Invalid parameters or malformed JSON
2059
+ */
2060
+ 400: {
2061
+ message: string;
2062
+ issues?: string;
2063
+ };
2064
+ /**
2065
+ * Unauthorized
2066
+ */
2067
+ 401: ErrorResponse;
2068
+ /**
2069
+ * Forbidden
2070
+ */
2071
+ 403: ErrorResponse;
2072
+ /**
2073
+ * Not Found
2074
+ */
2075
+ 404: ErrorResponse;
2076
+ /**
2077
+ * Conflict
2078
+ */
2079
+ 409: ErrorResponse;
2080
+ /**
2081
+ * Internal server error
2082
+ */
2083
+ 500: ErrorResponse;
2084
+ /**
2085
+ * Service Unavailable
2086
+ */
2087
+ 503: ErrorResponse;
2088
+ };
2089
+
2090
+ export type GetProjectRepoInfoError = GetProjectRepoInfoErrors[keyof GetProjectRepoInfoErrors];
2091
+
2092
+ export type GetProjectRepoInfoResponses = {
2093
+ /**
2094
+ * Returns GitHub info for one of the project's linked repositories
2095
+ */
2096
+ 200: {
2097
+ repoFullName: string;
2098
+ token: string | null;
2099
+ id: string;
2100
+ installationId: number | null;
2101
+ createdAt: string;
2102
+ updatedAt: string;
2103
+ dirName: string | null;
2104
+ };
2105
+ };
2106
+
2107
+ export type GetProjectRepoInfoResponse = GetProjectRepoInfoResponses[keyof GetProjectRepoInfoResponses];
2108
+
2046
2109
  export type CreateRepositoryData = {
2047
2110
  body?: {
2048
2111
  dazlId: string;
@@ -3067,6 +3130,65 @@ export type UpdateProjectResponses = {
3067
3130
 
3068
3131
  export type UpdateProjectResponse = UpdateProjectResponses[keyof UpdateProjectResponses];
3069
3132
 
3133
+ export type DownloadProjectData = {
3134
+ body?: never;
3135
+ path: {
3136
+ projectId: string;
3137
+ };
3138
+ query: {
3139
+ /**
3140
+ * The dazl ID of the requesting user, used for permission checks
3141
+ */
3142
+ ownerDazlId: string;
3143
+ };
3144
+ url: '/project/{projectId}/download';
3145
+ };
3146
+
3147
+ export type DownloadProjectErrors = {
3148
+ /**
3149
+ * Bad request - Invalid parameters or malformed JSON
3150
+ */
3151
+ 400: {
3152
+ message: string;
3153
+ issues?: string;
3154
+ };
3155
+ /**
3156
+ * Unauthorized
3157
+ */
3158
+ 401: ErrorResponse;
3159
+ /**
3160
+ * Forbidden
3161
+ */
3162
+ 403: ErrorResponse;
3163
+ /**
3164
+ * Not Found
3165
+ */
3166
+ 404: ErrorResponse;
3167
+ /**
3168
+ * Conflict
3169
+ */
3170
+ 409: ErrorResponse;
3171
+ /**
3172
+ * Internal server error
3173
+ */
3174
+ 500: ErrorResponse;
3175
+ /**
3176
+ * Service Unavailable
3177
+ */
3178
+ 503: ErrorResponse;
3179
+ };
3180
+
3181
+ export type DownloadProjectError = DownloadProjectErrors[keyof DownloadProjectErrors];
3182
+
3183
+ export type DownloadProjectResponses = {
3184
+ /**
3185
+ * Streams the project's latest snapshot as a gzipped tarball
3186
+ */
3187
+ 200: Blob | File;
3188
+ };
3189
+
3190
+ export type DownloadProjectResponse = DownloadProjectResponses[keyof DownloadProjectResponses];
3191
+
3070
3192
  export type MarkProjectAsInitializedData = {
3071
3193
  body: {
3072
3194
  /**
@@ -3184,37 +3306,48 @@ export type GetProjectInitDataResponses = {
3184
3306
  */
3185
3307
  200: {
3186
3308
  projectId: string;
3187
- gitRepoURL: string;
3309
+ gitRepoURL: string | null;
3188
3310
  gitBranchToClone: string | null;
3189
3311
  gitBranchToCreate: string | null;
3190
- createdAt: string;
3191
- updatedAt: string;
3312
+ createdAt: string | null;
3313
+ updatedAt: string | null;
3314
+ repos: Array<{
3315
+ id: string;
3316
+ projectId: string;
3317
+ repoId: string | null;
3318
+ gitRepoURL: string;
3319
+ gitBranchToClone: string | null;
3320
+ gitBranchToCreate: string | null;
3321
+ dirName: string;
3322
+ attemptCount: number;
3323
+ position: number;
3324
+ createdAt: string;
3325
+ updatedAt: string;
3326
+ }>;
3192
3327
  };
3193
3328
  };
3194
3329
 
3195
3330
  export type GetProjectInitDataResponse = GetProjectInitDataResponses[keyof GetProjectInitDataResponses];
3196
3331
 
3197
- export type CreateProjectData = {
3332
+ export type MarkRepoAsInitializedData = {
3198
3333
  body: {
3199
- name: string;
3200
- userDazlId: string;
3201
- latestScreenshot?: string | null;
3202
- originTemplateId?: string | null;
3203
- createdAt?: string;
3204
- workspaceId?: string;
3205
- remoteEnvConfigId?: string | null;
3206
- projectInitData?: {
3207
- gitRepoURL: string;
3208
- gitBranchToClone?: string | null;
3209
- gitBranchToCreate?: string | null;
3210
- };
3334
+ /**
3335
+ * The dazl ID of the requesting user, used for permission checks
3336
+ */
3337
+ ownerDazlId: string;
3338
+ };
3339
+ path: {
3340
+ projectId: string;
3341
+ /**
3342
+ * The pending init repo entry that has been cloned
3343
+ */
3344
+ initRepoId: string;
3211
3345
  };
3212
- path?: never;
3213
3346
  query?: never;
3214
- url: '/project';
3347
+ url: '/project/{projectId}/project-init-data/{initRepoId}';
3215
3348
  };
3216
3349
 
3217
- export type CreateProjectErrors = {
3350
+ export type MarkRepoAsInitializedErrors = {
3218
3351
  /**
3219
3352
  * Bad request - Invalid parameters or malformed JSON
3220
3353
  */
@@ -3248,53 +3381,40 @@ export type CreateProjectErrors = {
3248
3381
  503: ErrorResponse;
3249
3382
  };
3250
3383
 
3251
- export type CreateProjectError = CreateProjectErrors[keyof CreateProjectErrors];
3384
+ export type MarkRepoAsInitializedError = MarkRepoAsInitializedErrors[keyof MarkRepoAsInitializedErrors];
3252
3385
 
3253
- export type CreateProjectResponses = {
3386
+ export type MarkRepoAsInitializedResponses = {
3254
3387
  /**
3255
- * Returns the created project
3388
+ * Confirms the repo was cloned: the pending entry is removed and its directory recorded on the repo link
3256
3389
  */
3257
3390
  200: {
3258
- project: ProjectRaw;
3391
+ projectId: string;
3392
+ initRepoId: string;
3393
+ dirName: string;
3259
3394
  };
3260
3395
  };
3261
3396
 
3262
- export type CreateProjectResponse = CreateProjectResponses[keyof CreateProjectResponses];
3397
+ export type MarkRepoAsInitializedResponse = MarkRepoAsInitializedResponses[keyof MarkRepoAsInitializedResponses];
3263
3398
 
3264
- export type GetUserProjectsData = {
3265
- body?: never;
3266
- path: {
3399
+ export type ReportRepoInitFailureData = {
3400
+ body: {
3267
3401
  /**
3268
3402
  * The dazl ID of the requesting user, used for permission checks
3269
3403
  */
3270
3404
  ownerDazlId: string;
3271
3405
  };
3272
- query?: {
3273
- /**
3274
- * Filter projects by workspace ID
3275
- */
3276
- workspaceId?: string;
3277
- /**
3278
- * Include deployed projects info in the response
3279
- */
3280
- withDeploy?: boolean | null;
3281
- /**
3282
- * Include project screenshots url in the response
3283
- */
3284
- withScreenshot?: boolean | null;
3285
- /**
3286
- * filter by origin template when provided
3287
- */
3288
- originTemplateId?: string;
3406
+ path: {
3407
+ projectId: string;
3289
3408
  /**
3290
- * Include associated users metadata in the response
3409
+ * The pending init repo entry whose clone failed
3291
3410
  */
3292
- withAssociatedUsers?: boolean | null;
3411
+ initRepoId: string;
3293
3412
  };
3294
- url: '/project/user/{ownerDazlId}';
3413
+ query?: never;
3414
+ url: '/project/{projectId}/project-init-data/{initRepoId}/failure';
3295
3415
  };
3296
3416
 
3297
- export type GetUserProjectsErrors = {
3417
+ export type ReportRepoInitFailureErrors = {
3298
3418
  /**
3299
3419
  * Bad request - Invalid parameters or malformed JSON
3300
3420
  */
@@ -3328,42 +3448,53 @@ export type GetUserProjectsErrors = {
3328
3448
  503: ErrorResponse;
3329
3449
  };
3330
3450
 
3331
- export type GetUserProjectsError = GetUserProjectsErrors[keyof GetUserProjectsErrors];
3451
+ export type ReportRepoInitFailureError = ReportRepoInitFailureErrors[keyof ReportRepoInitFailureErrors];
3332
3452
 
3333
- export type GetUserProjectsResponses = {
3453
+ export type ReportRepoInitFailureResponses = {
3334
3454
  /**
3335
- * Returns the list of projects for the specified user
3455
+ * Records a failed clone attempt; the entry is abandoned once the attempt cap is reached
3336
3456
  */
3337
3457
  200: {
3338
- projects: Array<ProjectRaw & {
3339
- deploy: {
3340
- publishedAt: string;
3341
- productionURL: string;
3342
- netlifyDeployId: string;
3343
- } | null;
3344
- screenshotUrl: string | null;
3345
- productName: string | null;
3346
- }>;
3347
- users?: Array<UserDisplayInfoResponse>;
3458
+ projectId: string;
3459
+ initRepoId: string;
3460
+ dirName: string;
3461
+ attemptCount: number;
3462
+ maxAttempts: number;
3463
+ /**
3464
+ * True when the attempt cap was reached: the pending entry was removed and will not be retried
3465
+ */
3466
+ abandoned: boolean;
3348
3467
  };
3349
3468
  };
3350
3469
 
3351
- export type GetUserProjectsResponse = GetUserProjectsResponses[keyof GetUserProjectsResponses];
3470
+ export type ReportRepoInitFailureResponse = ReportRepoInitFailureResponses[keyof ReportRepoInitFailureResponses];
3352
3471
 
3353
- export type InviteProjectMemberData = {
3472
+ export type CreateProjectData = {
3354
3473
  body: {
3355
- email: string;
3356
- invitedByDazlId: string;
3357
- role: 'admin' | 'contributor' | 'viewer';
3358
- };
3359
- path: {
3360
- projectId: string;
3474
+ name: string;
3475
+ userDazlId: string;
3476
+ latestScreenshot?: string | null;
3477
+ originTemplateId?: string | null;
3478
+ createdAt?: string;
3479
+ workspaceId?: string;
3480
+ remoteEnvConfigId?: string | null;
3481
+ projectInitData?: {
3482
+ gitRepoURL: string;
3483
+ gitBranchToClone?: string | null;
3484
+ gitBranchToCreate?: string | null;
3485
+ };
3486
+ projectInitRepos?: Array<{
3487
+ gitRepoURL: string;
3488
+ gitBranchToClone?: string | null;
3489
+ gitBranchToCreate?: string | null;
3490
+ }>;
3361
3491
  };
3492
+ path?: never;
3362
3493
  query?: never;
3363
- url: '/project/{projectId}/members/invite';
3494
+ url: '/project';
3364
3495
  };
3365
3496
 
3366
- export type InviteProjectMemberErrors = {
3497
+ export type CreateProjectErrors = {
3367
3498
  /**
3368
3499
  * Bad request - Invalid parameters or malformed JSON
3369
3500
  */
@@ -3397,31 +3528,34 @@ export type InviteProjectMemberErrors = {
3397
3528
  503: ErrorResponse;
3398
3529
  };
3399
3530
 
3400
- export type InviteProjectMemberError = InviteProjectMemberErrors[keyof InviteProjectMemberErrors];
3531
+ export type CreateProjectError = CreateProjectErrors[keyof CreateProjectErrors];
3401
3532
 
3402
- export type InviteProjectMemberResponses = {
3533
+ export type CreateProjectResponses = {
3403
3534
  /**
3404
- * Returns the invitation token, or null if user was auto-added to project
3535
+ * Returns the created project
3405
3536
  */
3406
3537
  200: {
3407
- token: string | null;
3538
+ project: ProjectRaw;
3408
3539
  };
3409
3540
  };
3410
3541
 
3411
- export type InviteProjectMemberResponse = InviteProjectMemberResponses[keyof InviteProjectMemberResponses];
3542
+ export type CreateProjectResponse = CreateProjectResponses[keyof CreateProjectResponses];
3412
3543
 
3413
- export type GetProjectCollaboratorsData = {
3544
+ export type ListProjectReposData = {
3414
3545
  body?: never;
3415
3546
  path: {
3416
3547
  projectId: string;
3417
3548
  };
3418
3549
  query: {
3419
- userDazlId: string;
3550
+ /**
3551
+ * The dazl ID of the requesting user, used for permission checks
3552
+ */
3553
+ ownerDazlId: string;
3420
3554
  };
3421
- url: '/project/{projectId}/collaborators';
3555
+ url: '/project/{projectId}/repos';
3422
3556
  };
3423
3557
 
3424
- export type GetProjectCollaboratorsErrors = {
3558
+ export type ListProjectReposErrors = {
3425
3559
  /**
3426
3560
  * Bad request - Invalid parameters or malformed JSON
3427
3561
  */
@@ -3455,56 +3589,62 @@ export type GetProjectCollaboratorsErrors = {
3455
3589
  503: ErrorResponse;
3456
3590
  };
3457
3591
 
3458
- export type GetProjectCollaboratorsError = GetProjectCollaboratorsErrors[keyof GetProjectCollaboratorsErrors];
3592
+ export type ListProjectReposError = ListProjectReposErrors[keyof ListProjectReposErrors];
3459
3593
 
3460
- export type GetProjectCollaboratorsResponses = {
3594
+ export type ListProjectReposResponses = {
3461
3595
  /**
3462
- * Returns the list of project collaborators: both members and invitations
3596
+ * Returns the project's linked and pending git repositories
3463
3597
  */
3464
3598
  200: {
3465
- owner: {
3599
+ repos: Array<{
3600
+ repoId: string;
3601
+ repoFullName: string;
3602
+ host: string;
3466
3603
  /**
3467
- * Dazl ID for the type = "user"
3604
+ * Directory under the project root the repo was cloned into; null for legacy root-layout repos
3468
3605
  */
3606
+ dirName: string | null;
3607
+ hasActiveInstallation: boolean;
3608
+ }>;
3609
+ /**
3610
+ * Repos awaiting their clone by the session container
3611
+ */
3612
+ pending: Array<{
3469
3613
  id: string;
3470
- email: string;
3471
- name?: string;
3472
- picture?: string;
3473
- role: 'admin' | 'contributor' | 'viewer' | 'owner';
3474
- } | null;
3475
- members: Array<{
3476
- /**
3477
- * Dazl ID for the type = "user"
3478
- */
3479
- id: string;
3480
- email: string;
3481
- name?: string;
3482
- picture?: string;
3483
- role: 'admin' | 'contributor' | 'viewer' | 'owner';
3484
- }>;
3485
- invited: Array<{
3486
- role: 'admin' | 'contributor' | 'viewer';
3487
- email?: string;
3488
- id: string;
3614
+ projectId: string;
3615
+ repoId: string | null;
3616
+ gitRepoURL: string;
3617
+ gitBranchToClone: string | null;
3618
+ gitBranchToCreate: string | null;
3619
+ dirName: string;
3620
+ attemptCount: number;
3621
+ position: number;
3622
+ createdAt: string;
3623
+ updatedAt: string;
3489
3624
  }>;
3490
3625
  };
3491
3626
  };
3492
3627
 
3493
- export type GetProjectCollaboratorsResponse = GetProjectCollaboratorsResponses[keyof GetProjectCollaboratorsResponses];
3628
+ export type ListProjectReposResponse = ListProjectReposResponses[keyof ListProjectReposResponses];
3494
3629
 
3495
- export type DeleteProjectMemberData = {
3496
- body?: never;
3630
+ export type AddProjectRepoData = {
3631
+ body: {
3632
+ /**
3633
+ * The dazl ID of the requesting user, used for permission checks
3634
+ */
3635
+ ownerDazlId: string;
3636
+ gitRepoURL: string;
3637
+ gitBranchToClone?: string | null;
3638
+ gitBranchToCreate?: string | null;
3639
+ };
3497
3640
  path: {
3498
3641
  projectId: string;
3499
- memberId: string;
3500
- };
3501
- query: {
3502
- userDazlId: string;
3503
3642
  };
3504
- url: '/project/{projectId}/members/{memberId}';
3643
+ query?: never;
3644
+ url: '/project/{projectId}/repos';
3505
3645
  };
3506
3646
 
3507
- export type DeleteProjectMemberErrors = {
3647
+ export type AddProjectRepoErrors = {
3508
3648
  /**
3509
3649
  * Bad request - Invalid parameters or malformed JSON
3510
3650
  */
@@ -3538,32 +3678,65 @@ export type DeleteProjectMemberErrors = {
3538
3678
  503: ErrorResponse;
3539
3679
  };
3540
3680
 
3541
- export type DeleteProjectMemberError = DeleteProjectMemberErrors[keyof DeleteProjectMemberErrors];
3681
+ export type AddProjectRepoError = AddProjectRepoErrors[keyof AddProjectRepoErrors];
3542
3682
 
3543
- export type DeleteProjectMemberResponses = {
3683
+ export type AddProjectRepoResponses = {
3544
3684
  /**
3545
- * Acknowledges that the project member was deleted
3685
+ * Attaches another git repository to the project; it is cloned into its dirName by the running session or on the next session start
3546
3686
  */
3547
3687
  200: {
3548
- status: 'deleted';
3688
+ repo: {
3689
+ id: string;
3690
+ projectId: string;
3691
+ repoId: string | null;
3692
+ gitRepoURL: string;
3693
+ gitBranchToClone: string | null;
3694
+ gitBranchToCreate: string | null;
3695
+ dirName: string;
3696
+ attemptCount: number;
3697
+ position: number;
3698
+ createdAt: string;
3699
+ updatedAt: string;
3700
+ };
3549
3701
  };
3550
3702
  };
3551
3703
 
3552
- export type DeleteProjectMemberResponse = DeleteProjectMemberResponses[keyof DeleteProjectMemberResponses];
3704
+ export type AddProjectRepoResponse = AddProjectRepoResponses[keyof AddProjectRepoResponses];
3553
3705
 
3554
- export type DeleteProjectInvitationData = {
3706
+ export type GetUserProjectsData = {
3555
3707
  body?: never;
3556
3708
  path: {
3557
- projectId: string;
3558
- invitationId: string;
3709
+ /**
3710
+ * The dazl ID of the requesting user, used for permission checks
3711
+ */
3712
+ ownerDazlId: string;
3559
3713
  };
3560
- query: {
3561
- userDazlId: string;
3714
+ query?: {
3715
+ /**
3716
+ * Filter projects by workspace ID
3717
+ */
3718
+ workspaceId?: string;
3719
+ /**
3720
+ * Include deployed projects info in the response
3721
+ */
3722
+ withDeploy?: boolean | null;
3723
+ /**
3724
+ * Include project screenshots url in the response
3725
+ */
3726
+ withScreenshot?: boolean | null;
3727
+ /**
3728
+ * filter by origin template when provided
3729
+ */
3730
+ originTemplateId?: string;
3731
+ /**
3732
+ * Include associated users metadata in the response
3733
+ */
3734
+ withAssociatedUsers?: boolean | null;
3562
3735
  };
3563
- url: '/project/{projectId}/invitations/{invitationId}';
3736
+ url: '/project/user/{ownerDazlId}';
3564
3737
  };
3565
3738
 
3566
- export type DeleteProjectInvitationErrors = {
3739
+ export type GetUserProjectsErrors = {
3567
3740
  /**
3568
3741
  * Bad request - Invalid parameters or malformed JSON
3569
3742
  */
@@ -3597,32 +3770,42 @@ export type DeleteProjectInvitationErrors = {
3597
3770
  503: ErrorResponse;
3598
3771
  };
3599
3772
 
3600
- export type DeleteProjectInvitationError = DeleteProjectInvitationErrors[keyof DeleteProjectInvitationErrors];
3773
+ export type GetUserProjectsError = GetUserProjectsErrors[keyof GetUserProjectsErrors];
3601
3774
 
3602
- export type DeleteProjectInvitationResponses = {
3775
+ export type GetUserProjectsResponses = {
3603
3776
  /**
3604
- * Acknowledges that the project invitation was deleted
3777
+ * Returns the list of projects for the specified user
3605
3778
  */
3606
3779
  200: {
3607
- status: 'deleted';
3780
+ projects: Array<ProjectRaw & {
3781
+ deploy: {
3782
+ publishedAt: string;
3783
+ productionURL: string;
3784
+ netlifyDeployId: string;
3785
+ } | null;
3786
+ screenshotUrl: string | null;
3787
+ productName: string | null;
3788
+ }>;
3789
+ users?: Array<UserDisplayInfoResponse>;
3608
3790
  };
3609
3791
  };
3610
3792
 
3611
- export type DeleteProjectInvitationResponse = DeleteProjectInvitationResponses[keyof DeleteProjectInvitationResponses];
3793
+ export type GetUserProjectsResponse = GetUserProjectsResponses[keyof GetUserProjectsResponses];
3612
3794
 
3613
- export type InternalDeleteCommentData = {
3614
- body?: never;
3795
+ export type InviteProjectMemberData = {
3796
+ body: {
3797
+ email: string;
3798
+ invitedByDazlId: string;
3799
+ role: 'admin' | 'contributor' | 'viewer';
3800
+ };
3615
3801
  path: {
3616
3802
  projectId: string;
3617
- commentId: string;
3618
- };
3619
- query?: {
3620
- editorDazlUserId?: string;
3621
3803
  };
3622
- url: '/project/{projectId}/comments/{commentId}';
3804
+ query?: never;
3805
+ url: '/project/{projectId}/members/invite';
3623
3806
  };
3624
3807
 
3625
- export type InternalDeleteCommentErrors = {
3808
+ export type InviteProjectMemberErrors = {
3626
3809
  /**
3627
3810
  * Bad request - Invalid parameters or malformed JSON
3628
3811
  */
@@ -3656,30 +3839,31 @@ export type InternalDeleteCommentErrors = {
3656
3839
  503: ErrorResponse;
3657
3840
  };
3658
3841
 
3659
- export type InternalDeleteCommentError = InternalDeleteCommentErrors[keyof InternalDeleteCommentErrors];
3842
+ export type InviteProjectMemberError = InviteProjectMemberErrors[keyof InviteProjectMemberErrors];
3660
3843
 
3661
- export type InternalDeleteCommentResponses = {
3844
+ export type InviteProjectMemberResponses = {
3662
3845
  /**
3663
- * Acknowledges that the comment was deleted
3846
+ * Returns the invitation token, or null if user was auto-added to project
3664
3847
  */
3665
3848
  200: {
3666
- success: true;
3849
+ token: string | null;
3667
3850
  };
3668
3851
  };
3669
3852
 
3670
- export type InternalDeleteCommentResponse = InternalDeleteCommentResponses[keyof InternalDeleteCommentResponses];
3853
+ export type InviteProjectMemberResponse = InviteProjectMemberResponses[keyof InviteProjectMemberResponses];
3671
3854
 
3672
- export type InternalGetProjectCommentData = {
3855
+ export type GetProjectCollaboratorsData = {
3673
3856
  body?: never;
3674
3857
  path: {
3675
3858
  projectId: string;
3676
- commentId: string;
3677
3859
  };
3678
- query?: never;
3679
- url: '/project/{projectId}/comments/{commentId}';
3860
+ query: {
3861
+ userDazlId: string;
3862
+ };
3863
+ url: '/project/{projectId}/collaborators';
3680
3864
  };
3681
3865
 
3682
- export type InternalGetProjectCommentErrors = {
3866
+ export type GetProjectCollaboratorsErrors = {
3683
3867
  /**
3684
3868
  * Bad request - Invalid parameters or malformed JSON
3685
3869
  */
@@ -3713,55 +3897,56 @@ export type InternalGetProjectCommentErrors = {
3713
3897
  503: ErrorResponse;
3714
3898
  };
3715
3899
 
3716
- export type InternalGetProjectCommentError = InternalGetProjectCommentErrors[keyof InternalGetProjectCommentErrors];
3900
+ export type GetProjectCollaboratorsError = GetProjectCollaboratorsErrors[keyof GetProjectCollaboratorsErrors];
3717
3901
 
3718
- export type InternalGetProjectCommentResponses = {
3902
+ export type GetProjectCollaboratorsResponses = {
3719
3903
  /**
3720
- * Returns comment by id for the project
3904
+ * Returns the list of project collaborators: both members and invitations
3721
3905
  */
3722
3906
  200: {
3723
- comment: {
3724
- commentId: string;
3725
- author: {
3726
- dazlUserId: string;
3727
- };
3728
- content: string;
3729
- mentions: Array<UserMention>;
3730
- createdAt: string;
3731
- updatedAt: string;
3732
- lastActivityAt: string;
3733
- isEdited: boolean;
3734
- replies: Array<{
3735
- replyId: string;
3736
- author: {
3737
- dazlUserId: string;
3738
- };
3739
- content: string;
3740
- mentions: Array<UserMention>;
3741
- createdAt: string;
3742
- updatedAt: string;
3743
- gitInfo?: CommentGitInfo;
3744
- }>;
3745
- resolved?: CommentResolved;
3746
- context?: CommentContext;
3747
- gitInfo?: CommentGitInfo;
3748
- };
3907
+ owner: {
3908
+ /**
3909
+ * Dazl ID for the type = "user"
3910
+ */
3911
+ id: string;
3912
+ email: string;
3913
+ name?: string;
3914
+ picture?: string;
3915
+ role: 'admin' | 'contributor' | 'viewer' | 'owner';
3916
+ } | null;
3917
+ members: Array<{
3918
+ /**
3919
+ * Dazl ID for the type = "user"
3920
+ */
3921
+ id: string;
3922
+ email: string;
3923
+ name?: string;
3924
+ picture?: string;
3925
+ role: 'admin' | 'contributor' | 'viewer' | 'owner';
3926
+ }>;
3927
+ invited: Array<{
3928
+ role: 'admin' | 'contributor' | 'viewer';
3929
+ email?: string;
3930
+ id: string;
3931
+ }>;
3749
3932
  };
3750
3933
  };
3751
3934
 
3752
- export type InternalGetProjectCommentResponse = InternalGetProjectCommentResponses[keyof InternalGetProjectCommentResponses];
3935
+ export type GetProjectCollaboratorsResponse = GetProjectCollaboratorsResponses[keyof GetProjectCollaboratorsResponses];
3753
3936
 
3754
- export type InternalEditCommentData = {
3755
- body: InternalEditCommentInput;
3937
+ export type DeleteProjectMemberData = {
3938
+ body?: never;
3756
3939
  path: {
3757
3940
  projectId: string;
3758
- commentId: string;
3941
+ memberId: string;
3759
3942
  };
3760
- query?: never;
3761
- url: '/project/{projectId}/comments/{commentId}';
3943
+ query: {
3944
+ userDazlId: string;
3945
+ };
3946
+ url: '/project/{projectId}/members/{memberId}';
3762
3947
  };
3763
3948
 
3764
- export type InternalEditCommentErrors = {
3949
+ export type DeleteProjectMemberErrors = {
3765
3950
  /**
3766
3951
  * Bad request - Invalid parameters or malformed JSON
3767
3952
  */
@@ -3795,54 +3980,32 @@ export type InternalEditCommentErrors = {
3795
3980
  503: ErrorResponse;
3796
3981
  };
3797
3982
 
3798
- export type InternalEditCommentError = InternalEditCommentErrors[keyof InternalEditCommentErrors];
3983
+ export type DeleteProjectMemberError = DeleteProjectMemberErrors[keyof DeleteProjectMemberErrors];
3799
3984
 
3800
- export type InternalEditCommentResponses = {
3985
+ export type DeleteProjectMemberResponses = {
3801
3986
  /**
3802
- * Returns the updated comment
3987
+ * Acknowledges that the project member was deleted
3803
3988
  */
3804
3989
  200: {
3805
- comment: {
3806
- commentId: string;
3807
- author: {
3808
- dazlUserId: string;
3809
- };
3810
- content: string;
3811
- mentions: Array<UserMention>;
3812
- createdAt: string;
3813
- updatedAt: string;
3814
- lastActivityAt: string;
3815
- isEdited: boolean;
3816
- replies: Array<{
3817
- replyId: string;
3818
- author: {
3819
- dazlUserId: string;
3820
- };
3821
- content: string;
3822
- mentions: Array<UserMention>;
3823
- createdAt: string;
3824
- updatedAt: string;
3825
- gitInfo?: CommentGitInfo;
3826
- }>;
3827
- resolved?: CommentResolved;
3828
- context?: CommentContext;
3829
- gitInfo?: CommentGitInfo;
3830
- };
3990
+ status: 'deleted';
3831
3991
  };
3832
3992
  };
3833
3993
 
3834
- export type InternalEditCommentResponse = InternalEditCommentResponses[keyof InternalEditCommentResponses];
3994
+ export type DeleteProjectMemberResponse = DeleteProjectMemberResponses[keyof DeleteProjectMemberResponses];
3835
3995
 
3836
- export type InternalListProjectCommentsData = {
3996
+ export type DeleteProjectInvitationData = {
3837
3997
  body?: never;
3838
3998
  path: {
3839
3999
  projectId: string;
4000
+ invitationId: string;
3840
4001
  };
3841
- query?: never;
3842
- url: '/project/{projectId}/comments';
4002
+ query: {
4003
+ userDazlId: string;
4004
+ };
4005
+ url: '/project/{projectId}/invitations/{invitationId}';
3843
4006
  };
3844
4007
 
3845
- export type InternalListProjectCommentsErrors = {
4008
+ export type DeleteProjectInvitationErrors = {
3846
4009
  /**
3847
4010
  * Bad request - Invalid parameters or malformed JSON
3848
4011
  */
@@ -3876,14 +4039,130 @@ export type InternalListProjectCommentsErrors = {
3876
4039
  503: ErrorResponse;
3877
4040
  };
3878
4041
 
3879
- export type InternalListProjectCommentsError = InternalListProjectCommentsErrors[keyof InternalListProjectCommentsErrors];
4042
+ export type DeleteProjectInvitationError = DeleteProjectInvitationErrors[keyof DeleteProjectInvitationErrors];
3880
4043
 
3881
- export type InternalListProjectCommentsResponses = {
4044
+ export type DeleteProjectInvitationResponses = {
3882
4045
  /**
3883
- * Returns the list of comments for the project
4046
+ * Acknowledges that the project invitation was deleted
3884
4047
  */
3885
4048
  200: {
3886
- comments: Array<{
4049
+ status: 'deleted';
4050
+ };
4051
+ };
4052
+
4053
+ export type DeleteProjectInvitationResponse = DeleteProjectInvitationResponses[keyof DeleteProjectInvitationResponses];
4054
+
4055
+ export type InternalDeleteCommentData = {
4056
+ body?: never;
4057
+ path: {
4058
+ projectId: string;
4059
+ commentId: string;
4060
+ };
4061
+ query?: {
4062
+ editorDazlUserId?: string;
4063
+ };
4064
+ url: '/project/{projectId}/comments/{commentId}';
4065
+ };
4066
+
4067
+ export type InternalDeleteCommentErrors = {
4068
+ /**
4069
+ * Bad request - Invalid parameters or malformed JSON
4070
+ */
4071
+ 400: {
4072
+ message: string;
4073
+ issues?: string;
4074
+ };
4075
+ /**
4076
+ * Unauthorized
4077
+ */
4078
+ 401: ErrorResponse;
4079
+ /**
4080
+ * Forbidden
4081
+ */
4082
+ 403: ErrorResponse;
4083
+ /**
4084
+ * Not Found
4085
+ */
4086
+ 404: ErrorResponse;
4087
+ /**
4088
+ * Conflict
4089
+ */
4090
+ 409: ErrorResponse;
4091
+ /**
4092
+ * Internal server error
4093
+ */
4094
+ 500: ErrorResponse;
4095
+ /**
4096
+ * Service Unavailable
4097
+ */
4098
+ 503: ErrorResponse;
4099
+ };
4100
+
4101
+ export type InternalDeleteCommentError = InternalDeleteCommentErrors[keyof InternalDeleteCommentErrors];
4102
+
4103
+ export type InternalDeleteCommentResponses = {
4104
+ /**
4105
+ * Acknowledges that the comment was deleted
4106
+ */
4107
+ 200: {
4108
+ success: true;
4109
+ };
4110
+ };
4111
+
4112
+ export type InternalDeleteCommentResponse = InternalDeleteCommentResponses[keyof InternalDeleteCommentResponses];
4113
+
4114
+ export type InternalGetProjectCommentData = {
4115
+ body?: never;
4116
+ path: {
4117
+ projectId: string;
4118
+ commentId: string;
4119
+ };
4120
+ query?: never;
4121
+ url: '/project/{projectId}/comments/{commentId}';
4122
+ };
4123
+
4124
+ export type InternalGetProjectCommentErrors = {
4125
+ /**
4126
+ * Bad request - Invalid parameters or malformed JSON
4127
+ */
4128
+ 400: {
4129
+ message: string;
4130
+ issues?: string;
4131
+ };
4132
+ /**
4133
+ * Unauthorized
4134
+ */
4135
+ 401: ErrorResponse;
4136
+ /**
4137
+ * Forbidden
4138
+ */
4139
+ 403: ErrorResponse;
4140
+ /**
4141
+ * Not Found
4142
+ */
4143
+ 404: ErrorResponse;
4144
+ /**
4145
+ * Conflict
4146
+ */
4147
+ 409: ErrorResponse;
4148
+ /**
4149
+ * Internal server error
4150
+ */
4151
+ 500: ErrorResponse;
4152
+ /**
4153
+ * Service Unavailable
4154
+ */
4155
+ 503: ErrorResponse;
4156
+ };
4157
+
4158
+ export type InternalGetProjectCommentError = InternalGetProjectCommentErrors[keyof InternalGetProjectCommentErrors];
4159
+
4160
+ export type InternalGetProjectCommentResponses = {
4161
+ /**
4162
+ * Returns comment by id for the project
4163
+ */
4164
+ 200: {
4165
+ comment: {
3887
4166
  commentId: string;
3888
4167
  author: {
3889
4168
  dazlUserId: string;
@@ -3908,22 +4187,23 @@ export type InternalListProjectCommentsResponses = {
3908
4187
  resolved?: CommentResolved;
3909
4188
  context?: CommentContext;
3910
4189
  gitInfo?: CommentGitInfo;
3911
- }>;
4190
+ };
3912
4191
  };
3913
4192
  };
3914
4193
 
3915
- export type InternalListProjectCommentsResponse = InternalListProjectCommentsResponses[keyof InternalListProjectCommentsResponses];
4194
+ export type InternalGetProjectCommentResponse = InternalGetProjectCommentResponses[keyof InternalGetProjectCommentResponses];
3916
4195
 
3917
- export type InternalCreateCommentData = {
3918
- body: InternalCreateCommentInput;
4196
+ export type InternalEditCommentData = {
4197
+ body: InternalEditCommentInput;
3919
4198
  path: {
3920
4199
  projectId: string;
4200
+ commentId: string;
3921
4201
  };
3922
4202
  query?: never;
3923
- url: '/project/{projectId}/comments';
4203
+ url: '/project/{projectId}/comments/{commentId}';
3924
4204
  };
3925
4205
 
3926
- export type InternalCreateCommentErrors = {
4206
+ export type InternalEditCommentErrors = {
3927
4207
  /**
3928
4208
  * Bad request - Invalid parameters or malformed JSON
3929
4209
  */
@@ -3957,11 +4237,11 @@ export type InternalCreateCommentErrors = {
3957
4237
  503: ErrorResponse;
3958
4238
  };
3959
4239
 
3960
- export type InternalCreateCommentError = InternalCreateCommentErrors[keyof InternalCreateCommentErrors];
4240
+ export type InternalEditCommentError = InternalEditCommentErrors[keyof InternalEditCommentErrors];
3961
4241
 
3962
- export type InternalCreateCommentResponses = {
4242
+ export type InternalEditCommentResponses = {
3963
4243
  /**
3964
- * Returns the created comment
4244
+ * Returns the updated comment
3965
4245
  */
3966
4246
  200: {
3967
4247
  comment: {
@@ -3993,21 +4273,18 @@ export type InternalCreateCommentResponses = {
3993
4273
  };
3994
4274
  };
3995
4275
 
3996
- export type InternalCreateCommentResponse = InternalCreateCommentResponses[keyof InternalCreateCommentResponses];
4276
+ export type InternalEditCommentResponse = InternalEditCommentResponses[keyof InternalEditCommentResponses];
3997
4277
 
3998
- export type InternalResolveCommentData = {
4278
+ export type InternalListProjectCommentsData = {
3999
4279
  body?: never;
4000
4280
  path: {
4001
4281
  projectId: string;
4002
- commentId: string;
4003
- };
4004
- query: {
4005
- resolvedByDazlUserId: string;
4006
4282
  };
4007
- url: '/project/{projectId}/comments/{commentId}/resolve';
4283
+ query?: never;
4284
+ url: '/project/{projectId}/comments';
4008
4285
  };
4009
4286
 
4010
- export type InternalResolveCommentErrors = {
4287
+ export type InternalListProjectCommentsErrors = {
4011
4288
  /**
4012
4289
  * Bad request - Invalid parameters or malformed JSON
4013
4290
  */
@@ -4041,14 +4318,14 @@ export type InternalResolveCommentErrors = {
4041
4318
  503: ErrorResponse;
4042
4319
  };
4043
4320
 
4044
- export type InternalResolveCommentError = InternalResolveCommentErrors[keyof InternalResolveCommentErrors];
4321
+ export type InternalListProjectCommentsError = InternalListProjectCommentsErrors[keyof InternalListProjectCommentsErrors];
4045
4322
 
4046
- export type InternalResolveCommentResponses = {
4323
+ export type InternalListProjectCommentsResponses = {
4047
4324
  /**
4048
- * Returns the resolved comment
4325
+ * Returns the list of comments for the project
4049
4326
  */
4050
4327
  200: {
4051
- comment: {
4328
+ comments: Array<{
4052
4329
  commentId: string;
4053
4330
  author: {
4054
4331
  dazlUserId: string;
@@ -4073,23 +4350,22 @@ export type InternalResolveCommentResponses = {
4073
4350
  resolved?: CommentResolved;
4074
4351
  context?: CommentContext;
4075
4352
  gitInfo?: CommentGitInfo;
4076
- };
4353
+ }>;
4077
4354
  };
4078
4355
  };
4079
4356
 
4080
- export type InternalResolveCommentResponse = InternalResolveCommentResponses[keyof InternalResolveCommentResponses];
4357
+ export type InternalListProjectCommentsResponse = InternalListProjectCommentsResponses[keyof InternalListProjectCommentsResponses];
4081
4358
 
4082
- export type InternalReopenCommentData = {
4083
- body?: never;
4359
+ export type InternalCreateCommentData = {
4360
+ body: InternalCreateCommentInput;
4084
4361
  path: {
4085
4362
  projectId: string;
4086
- commentId: string;
4087
4363
  };
4088
4364
  query?: never;
4089
- url: '/project/{projectId}/comments/{commentId}/reopen';
4365
+ url: '/project/{projectId}/comments';
4090
4366
  };
4091
4367
 
4092
- export type InternalReopenCommentErrors = {
4368
+ export type InternalCreateCommentErrors = {
4093
4369
  /**
4094
4370
  * Bad request - Invalid parameters or malformed JSON
4095
4371
  */
@@ -4123,11 +4399,11 @@ export type InternalReopenCommentErrors = {
4123
4399
  503: ErrorResponse;
4124
4400
  };
4125
4401
 
4126
- export type InternalReopenCommentError = InternalReopenCommentErrors[keyof InternalReopenCommentErrors];
4402
+ export type InternalCreateCommentError = InternalCreateCommentErrors[keyof InternalCreateCommentErrors];
4127
4403
 
4128
- export type InternalReopenCommentResponses = {
4404
+ export type InternalCreateCommentResponses = {
4129
4405
  /**
4130
- * Returns the reopened comment
4406
+ * Returns the created comment
4131
4407
  */
4132
4408
  200: {
4133
4409
  comment: {
@@ -4159,19 +4435,21 @@ export type InternalReopenCommentResponses = {
4159
4435
  };
4160
4436
  };
4161
4437
 
4162
- export type InternalReopenCommentResponse = InternalReopenCommentResponses[keyof InternalReopenCommentResponses];
4438
+ export type InternalCreateCommentResponse = InternalCreateCommentResponses[keyof InternalCreateCommentResponses];
4163
4439
 
4164
- export type InternalCreateReplyData = {
4165
- body: InternalCreateReplyInput;
4440
+ export type InternalResolveCommentData = {
4441
+ body?: never;
4166
4442
  path: {
4167
4443
  projectId: string;
4168
4444
  commentId: string;
4169
4445
  };
4170
- query?: never;
4171
- url: '/project/{projectId}/comments/{commentId}/replies';
4446
+ query: {
4447
+ resolvedByDazlUserId: string;
4448
+ };
4449
+ url: '/project/{projectId}/comments/{commentId}/resolve';
4172
4450
  };
4173
4451
 
4174
- export type InternalCreateReplyErrors = {
4452
+ export type InternalResolveCommentErrors = {
4175
4453
  /**
4176
4454
  * Bad request - Invalid parameters or malformed JSON
4177
4455
  */
@@ -4205,15 +4483,15 @@ export type InternalCreateReplyErrors = {
4205
4483
  503: ErrorResponse;
4206
4484
  };
4207
4485
 
4208
- export type InternalCreateReplyError = InternalCreateReplyErrors[keyof InternalCreateReplyErrors];
4486
+ export type InternalResolveCommentError = InternalResolveCommentErrors[keyof InternalResolveCommentErrors];
4209
4487
 
4210
- export type InternalCreateReplyResponses = {
4488
+ export type InternalResolveCommentResponses = {
4211
4489
  /**
4212
- * Returns the created reply
4490
+ * Returns the resolved comment
4213
4491
  */
4214
4492
  200: {
4215
- reply: {
4216
- replyId: string;
4493
+ comment: {
4494
+ commentId: string;
4217
4495
  author: {
4218
4496
  dazlUserId: string;
4219
4497
  };
@@ -4221,27 +4499,501 @@ export type InternalCreateReplyResponses = {
4221
4499
  mentions: Array<UserMention>;
4222
4500
  createdAt: string;
4223
4501
  updatedAt: string;
4502
+ lastActivityAt: string;
4503
+ isEdited: boolean;
4504
+ replies: Array<{
4505
+ replyId: string;
4506
+ author: {
4507
+ dazlUserId: string;
4508
+ };
4509
+ content: string;
4510
+ mentions: Array<UserMention>;
4511
+ createdAt: string;
4512
+ updatedAt: string;
4513
+ gitInfo?: CommentGitInfo;
4514
+ }>;
4515
+ resolved?: CommentResolved;
4516
+ context?: CommentContext;
4224
4517
  gitInfo?: CommentGitInfo;
4225
4518
  };
4226
4519
  };
4227
4520
  };
4228
4521
 
4229
- export type InternalCreateReplyResponse = InternalCreateReplyResponses[keyof InternalCreateReplyResponses];
4522
+ export type InternalResolveCommentResponse = InternalResolveCommentResponses[keyof InternalResolveCommentResponses];
4230
4523
 
4231
- export type InternalDeleteReplyData = {
4524
+ export type InternalReopenCommentData = {
4232
4525
  body?: never;
4233
4526
  path: {
4234
4527
  projectId: string;
4235
4528
  commentId: string;
4236
- replyId: string;
4237
4529
  };
4238
- query?: {
4239
- editorDazlUserId?: string;
4530
+ query?: never;
4531
+ url: '/project/{projectId}/comments/{commentId}/reopen';
4532
+ };
4533
+
4534
+ export type InternalReopenCommentErrors = {
4535
+ /**
4536
+ * Bad request - Invalid parameters or malformed JSON
4537
+ */
4538
+ 400: {
4539
+ message: string;
4540
+ issues?: string;
4240
4541
  };
4241
- url: '/project/{projectId}/comments/{commentId}/replies/{replyId}';
4542
+ /**
4543
+ * Unauthorized
4544
+ */
4545
+ 401: ErrorResponse;
4546
+ /**
4547
+ * Forbidden
4548
+ */
4549
+ 403: ErrorResponse;
4550
+ /**
4551
+ * Not Found
4552
+ */
4553
+ 404: ErrorResponse;
4554
+ /**
4555
+ * Conflict
4556
+ */
4557
+ 409: ErrorResponse;
4558
+ /**
4559
+ * Internal server error
4560
+ */
4561
+ 500: ErrorResponse;
4562
+ /**
4563
+ * Service Unavailable
4564
+ */
4565
+ 503: ErrorResponse;
4566
+ };
4567
+
4568
+ export type InternalReopenCommentError = InternalReopenCommentErrors[keyof InternalReopenCommentErrors];
4569
+
4570
+ export type InternalReopenCommentResponses = {
4571
+ /**
4572
+ * Returns the reopened comment
4573
+ */
4574
+ 200: {
4575
+ comment: {
4576
+ commentId: string;
4577
+ author: {
4578
+ dazlUserId: string;
4579
+ };
4580
+ content: string;
4581
+ mentions: Array<UserMention>;
4582
+ createdAt: string;
4583
+ updatedAt: string;
4584
+ lastActivityAt: string;
4585
+ isEdited: boolean;
4586
+ replies: Array<{
4587
+ replyId: string;
4588
+ author: {
4589
+ dazlUserId: string;
4590
+ };
4591
+ content: string;
4592
+ mentions: Array<UserMention>;
4593
+ createdAt: string;
4594
+ updatedAt: string;
4595
+ gitInfo?: CommentGitInfo;
4596
+ }>;
4597
+ resolved?: CommentResolved;
4598
+ context?: CommentContext;
4599
+ gitInfo?: CommentGitInfo;
4600
+ };
4601
+ };
4602
+ };
4603
+
4604
+ export type InternalReopenCommentResponse = InternalReopenCommentResponses[keyof InternalReopenCommentResponses];
4605
+
4606
+ export type InternalCreateReplyData = {
4607
+ body: InternalCreateReplyInput;
4608
+ path: {
4609
+ projectId: string;
4610
+ commentId: string;
4611
+ };
4612
+ query?: never;
4613
+ url: '/project/{projectId}/comments/{commentId}/replies';
4614
+ };
4615
+
4616
+ export type InternalCreateReplyErrors = {
4617
+ /**
4618
+ * Bad request - Invalid parameters or malformed JSON
4619
+ */
4620
+ 400: {
4621
+ message: string;
4622
+ issues?: string;
4623
+ };
4624
+ /**
4625
+ * Unauthorized
4626
+ */
4627
+ 401: ErrorResponse;
4628
+ /**
4629
+ * Forbidden
4630
+ */
4631
+ 403: ErrorResponse;
4632
+ /**
4633
+ * Not Found
4634
+ */
4635
+ 404: ErrorResponse;
4636
+ /**
4637
+ * Conflict
4638
+ */
4639
+ 409: ErrorResponse;
4640
+ /**
4641
+ * Internal server error
4642
+ */
4643
+ 500: ErrorResponse;
4644
+ /**
4645
+ * Service Unavailable
4646
+ */
4647
+ 503: ErrorResponse;
4648
+ };
4649
+
4650
+ export type InternalCreateReplyError = InternalCreateReplyErrors[keyof InternalCreateReplyErrors];
4651
+
4652
+ export type InternalCreateReplyResponses = {
4653
+ /**
4654
+ * Returns the created reply
4655
+ */
4656
+ 200: {
4657
+ reply: {
4658
+ replyId: string;
4659
+ author: {
4660
+ dazlUserId: string;
4661
+ };
4662
+ content: string;
4663
+ mentions: Array<UserMention>;
4664
+ createdAt: string;
4665
+ updatedAt: string;
4666
+ gitInfo?: CommentGitInfo;
4667
+ };
4668
+ };
4669
+ };
4670
+
4671
+ export type InternalCreateReplyResponse = InternalCreateReplyResponses[keyof InternalCreateReplyResponses];
4672
+
4673
+ export type InternalDeleteReplyData = {
4674
+ body?: never;
4675
+ path: {
4676
+ projectId: string;
4677
+ commentId: string;
4678
+ replyId: string;
4679
+ };
4680
+ query?: {
4681
+ editorDazlUserId?: string;
4682
+ };
4683
+ url: '/project/{projectId}/comments/{commentId}/replies/{replyId}';
4684
+ };
4685
+
4686
+ export type InternalDeleteReplyErrors = {
4687
+ /**
4688
+ * Bad request - Invalid parameters or malformed JSON
4689
+ */
4690
+ 400: {
4691
+ message: string;
4692
+ issues?: string;
4693
+ };
4694
+ /**
4695
+ * Unauthorized
4696
+ */
4697
+ 401: ErrorResponse;
4698
+ /**
4699
+ * Forbidden
4700
+ */
4701
+ 403: ErrorResponse;
4702
+ /**
4703
+ * Not Found
4704
+ */
4705
+ 404: ErrorResponse;
4706
+ /**
4707
+ * Conflict
4708
+ */
4709
+ 409: ErrorResponse;
4710
+ /**
4711
+ * Internal server error
4712
+ */
4713
+ 500: ErrorResponse;
4714
+ /**
4715
+ * Service Unavailable
4716
+ */
4717
+ 503: ErrorResponse;
4718
+ };
4719
+
4720
+ export type InternalDeleteReplyError = InternalDeleteReplyErrors[keyof InternalDeleteReplyErrors];
4721
+
4722
+ export type InternalDeleteReplyResponses = {
4723
+ /**
4724
+ * Acknowledges that the reply was deleted
4725
+ */
4726
+ 200: {
4727
+ success: true;
4728
+ };
4729
+ };
4730
+
4731
+ export type InternalDeleteReplyResponse = InternalDeleteReplyResponses[keyof InternalDeleteReplyResponses];
4732
+
4733
+ export type InternalEditReplyData = {
4734
+ body: InternalEditReplyInput;
4735
+ path: {
4736
+ projectId: string;
4737
+ commentId: string;
4738
+ replyId: string;
4739
+ };
4740
+ query?: never;
4741
+ url: '/project/{projectId}/comments/{commentId}/replies/{replyId}';
4742
+ };
4743
+
4744
+ export type InternalEditReplyErrors = {
4745
+ /**
4746
+ * Bad request - Invalid parameters or malformed JSON
4747
+ */
4748
+ 400: {
4749
+ message: string;
4750
+ issues?: string;
4751
+ };
4752
+ /**
4753
+ * Unauthorized
4754
+ */
4755
+ 401: ErrorResponse;
4756
+ /**
4757
+ * Forbidden
4758
+ */
4759
+ 403: ErrorResponse;
4760
+ /**
4761
+ * Not Found
4762
+ */
4763
+ 404: ErrorResponse;
4764
+ /**
4765
+ * Conflict
4766
+ */
4767
+ 409: ErrorResponse;
4768
+ /**
4769
+ * Internal server error
4770
+ */
4771
+ 500: ErrorResponse;
4772
+ /**
4773
+ * Service Unavailable
4774
+ */
4775
+ 503: ErrorResponse;
4776
+ };
4777
+
4778
+ export type InternalEditReplyError = InternalEditReplyErrors[keyof InternalEditReplyErrors];
4779
+
4780
+ export type InternalEditReplyResponses = {
4781
+ /**
4782
+ * Returns the updated reply
4783
+ */
4784
+ 200: {
4785
+ reply: {
4786
+ replyId: string;
4787
+ author: {
4788
+ dazlUserId: string;
4789
+ };
4790
+ content: string;
4791
+ mentions: Array<UserMention>;
4792
+ createdAt: string;
4793
+ updatedAt: string;
4794
+ gitInfo?: CommentGitInfo;
4795
+ };
4796
+ };
4797
+ };
4798
+
4799
+ export type InternalEditReplyResponse = InternalEditReplyResponses[keyof InternalEditReplyResponses];
4800
+
4801
+ export type GetPublicTemplatesData = {
4802
+ body?: never;
4803
+ path?: never;
4804
+ query?: {
4805
+ withScreenshot?: boolean | null;
4806
+ };
4807
+ url: '/template/public-templates';
4808
+ };
4809
+
4810
+ export type GetPublicTemplatesErrors = {
4811
+ /**
4812
+ * Bad request - Invalid parameters or malformed JSON
4813
+ */
4814
+ 400: {
4815
+ message: string;
4816
+ issues?: string;
4817
+ };
4818
+ /**
4819
+ * Unauthorized
4820
+ */
4821
+ 401: ErrorResponse;
4822
+ /**
4823
+ * Forbidden
4824
+ */
4825
+ 403: ErrorResponse;
4826
+ /**
4827
+ * Not Found
4828
+ */
4829
+ 404: ErrorResponse;
4830
+ /**
4831
+ * Conflict
4832
+ */
4833
+ 409: ErrorResponse;
4834
+ /**
4835
+ * Internal server error
4836
+ */
4837
+ 500: ErrorResponse;
4838
+ /**
4839
+ * Service Unavailable
4840
+ */
4841
+ 503: ErrorResponse;
4842
+ };
4843
+
4844
+ export type GetPublicTemplatesError = GetPublicTemplatesErrors[keyof GetPublicTemplatesErrors];
4845
+
4846
+ export type GetPublicTemplatesResponses = {
4847
+ /**
4848
+ * Returns all public templates. Optionally includes screenshots when `withScreenshot` is true. Templates are ordered by the greatest of createdAt and lastUsedAt in descending order.
4849
+ */
4850
+ 200: {
4851
+ templates: Array<{
4852
+ screenshotUrl: string | null;
4853
+ originProjectName: string | null;
4854
+ } & TemplateRaw>;
4855
+ };
4856
+ };
4857
+
4858
+ export type GetPublicTemplatesResponse = GetPublicTemplatesResponses[keyof GetPublicTemplatesResponses];
4859
+
4860
+ export type GetUserTemplatesData = {
4861
+ body?: never;
4862
+ path: {
4863
+ dazlId: string;
4864
+ };
4865
+ query?: {
4866
+ withScreenshot?: boolean | null;
4867
+ withOriginProject?: boolean | null;
4868
+ withAssociatedUsers?: boolean | null;
4869
+ };
4870
+ url: '/template/user/{dazlId}';
4871
+ };
4872
+
4873
+ export type GetUserTemplatesErrors = {
4874
+ /**
4875
+ * Bad request - Invalid parameters or malformed JSON
4876
+ */
4877
+ 400: {
4878
+ message: string;
4879
+ issues?: string;
4880
+ };
4881
+ /**
4882
+ * Unauthorized
4883
+ */
4884
+ 401: ErrorResponse;
4885
+ /**
4886
+ * Forbidden
4887
+ */
4888
+ 403: ErrorResponse;
4889
+ /**
4890
+ * Not Found
4891
+ */
4892
+ 404: ErrorResponse;
4893
+ /**
4894
+ * Conflict
4895
+ */
4896
+ 409: ErrorResponse;
4897
+ /**
4898
+ * Internal server error
4899
+ */
4900
+ 500: ErrorResponse;
4901
+ /**
4902
+ * Service Unavailable
4903
+ */
4904
+ 503: ErrorResponse;
4905
+ };
4906
+
4907
+ export type GetUserTemplatesError = GetUserTemplatesErrors[keyof GetUserTemplatesErrors];
4908
+
4909
+ export type GetUserTemplatesResponses = {
4910
+ /**
4911
+ * Returns all templates for the specified user. Templates are ordered by the greatest of createdAt and lastUsedAt in descending order.
4912
+ */
4913
+ 200: {
4914
+ templates: Array<{
4915
+ screenshotUrl: string | null;
4916
+ originProjectName: string | null;
4917
+ } & TemplateRaw>;
4918
+ users?: Array<UserDisplayInfoResponse>;
4919
+ };
4920
+ };
4921
+
4922
+ export type GetUserTemplatesResponse = GetUserTemplatesResponses[keyof GetUserTemplatesResponses];
4923
+
4924
+ export type DeleteTemplateData = {
4925
+ /**
4926
+ * Owner dazlId of the user attempting to delete the template
4927
+ */
4928
+ body?: {
4929
+ ownerDazlId: string;
4930
+ };
4931
+ path: {
4932
+ templateId: string;
4933
+ };
4934
+ query?: never;
4935
+ url: '/template/{templateId}';
4936
+ };
4937
+
4938
+ export type DeleteTemplateErrors = {
4939
+ /**
4940
+ * Bad request - Invalid parameters or malformed JSON
4941
+ */
4942
+ 400: {
4943
+ message: string;
4944
+ issues?: string;
4945
+ };
4946
+ /**
4947
+ * Unauthorized
4948
+ */
4949
+ 401: ErrorResponse;
4950
+ /**
4951
+ * Forbidden
4952
+ */
4953
+ 403: ErrorResponse;
4954
+ /**
4955
+ * Not Found
4956
+ */
4957
+ 404: ErrorResponse;
4958
+ /**
4959
+ * Conflict
4960
+ */
4961
+ 409: ErrorResponse;
4962
+ /**
4963
+ * Internal server error
4964
+ */
4965
+ 500: ErrorResponse;
4966
+ /**
4967
+ * Service Unavailable
4968
+ */
4969
+ 503: ErrorResponse;
4970
+ };
4971
+
4972
+ export type DeleteTemplateError = DeleteTemplateErrors[keyof DeleteTemplateErrors];
4973
+
4974
+ export type DeleteTemplateResponses = {
4975
+ /**
4976
+ * Deletes the template with the specified ID.
4977
+ */
4978
+ 200: {
4979
+ templateId: string;
4980
+ };
4981
+ };
4982
+
4983
+ export type DeleteTemplateResponse = DeleteTemplateResponses[keyof DeleteTemplateResponses];
4984
+
4985
+ export type GetTemplateData = {
4986
+ body?: never;
4987
+ path: {
4988
+ templateId: string;
4989
+ };
4990
+ query?: {
4991
+ withScreenshot?: boolean | null;
4992
+ };
4993
+ url: '/template/{templateId}';
4242
4994
  };
4243
4995
 
4244
- export type InternalDeleteReplyErrors = {
4996
+ export type GetTemplateErrors = {
4245
4997
  /**
4246
4998
  * Bad request - Invalid parameters or malformed JSON
4247
4999
  */
@@ -4275,31 +5027,37 @@ export type InternalDeleteReplyErrors = {
4275
5027
  503: ErrorResponse;
4276
5028
  };
4277
5029
 
4278
- export type InternalDeleteReplyError = InternalDeleteReplyErrors[keyof InternalDeleteReplyErrors];
5030
+ export type GetTemplateError = GetTemplateErrors[keyof GetTemplateErrors];
4279
5031
 
4280
- export type InternalDeleteReplyResponses = {
5032
+ export type GetTemplateResponses = {
4281
5033
  /**
4282
- * Acknowledges that the reply was deleted
5034
+ * Returns the template with the specified ID.
4283
5035
  */
4284
5036
  200: {
4285
- success: true;
5037
+ template: TemplateRaw;
4286
5038
  };
4287
5039
  };
4288
5040
 
4289
- export type InternalDeleteReplyResponse = InternalDeleteReplyResponses[keyof InternalDeleteReplyResponses];
5041
+ export type GetTemplateResponse = GetTemplateResponses[keyof GetTemplateResponses];
4290
5042
 
4291
- export type InternalEditReplyData = {
4292
- body: InternalEditReplyInput;
5043
+ export type UpdateTemplateData = {
5044
+ body: {
5045
+ description?: string | null;
5046
+ lastUsedAt?: string | null;
5047
+ name?: string;
5048
+ usageCount?: number;
5049
+ isPublic?: boolean;
5050
+ remoteEnvConfigId?: string | null;
5051
+ ownerDazlId?: string;
5052
+ };
4293
5053
  path: {
4294
- projectId: string;
4295
- commentId: string;
4296
- replyId: string;
5054
+ templateId: string;
4297
5055
  };
4298
5056
  query?: never;
4299
- url: '/project/{projectId}/comments/{commentId}/replies/{replyId}';
5057
+ url: '/template/{templateId}';
4300
5058
  };
4301
5059
 
4302
- export type InternalEditReplyErrors = {
5060
+ export type UpdateTemplateErrors = {
4303
5061
  /**
4304
5062
  * Bad request - Invalid parameters or malformed JSON
4305
5063
  */
@@ -4333,39 +5091,36 @@ export type InternalEditReplyErrors = {
4333
5091
  503: ErrorResponse;
4334
5092
  };
4335
5093
 
4336
- export type InternalEditReplyError = InternalEditReplyErrors[keyof InternalEditReplyErrors];
5094
+ export type UpdateTemplateError = UpdateTemplateErrors[keyof UpdateTemplateErrors];
4337
5095
 
4338
- export type InternalEditReplyResponses = {
5096
+ export type UpdateTemplateResponses = {
4339
5097
  /**
4340
- * Returns the updated reply
5098
+ * Updates the template with the specified ID.
4341
5099
  */
4342
5100
  200: {
4343
- reply: {
4344
- replyId: string;
4345
- author: {
4346
- dazlUserId: string;
4347
- };
4348
- content: string;
4349
- mentions: Array<UserMention>;
4350
- createdAt: string;
4351
- updatedAt: string;
4352
- gitInfo?: CommentGitInfo;
4353
- };
5101
+ template: TemplateRaw;
4354
5102
  };
4355
5103
  };
4356
5104
 
4357
- export type InternalEditReplyResponse = InternalEditReplyResponses[keyof InternalEditReplyResponses];
5105
+ export type UpdateTemplateResponse = UpdateTemplateResponses[keyof UpdateTemplateResponses];
4358
5106
 
4359
- export type GetPublicTemplatesData = {
4360
- body?: never;
4361
- path?: never;
4362
- query?: {
4363
- withScreenshot?: boolean | null;
5107
+ export type CreateTemplateData = {
5108
+ body: {
5109
+ originProjectId: string;
5110
+ userDazlId: string;
5111
+ } & {
5112
+ preserveChatHistory: boolean;
5113
+ preserveEnvFile: boolean;
5114
+ name: string;
5115
+ description?: string;
5116
+ emails?: Array<string>;
4364
5117
  };
4365
- url: '/template/public-templates';
5118
+ path?: never;
5119
+ query?: never;
5120
+ url: '/template/create';
4366
5121
  };
4367
5122
 
4368
- export type GetPublicTemplatesErrors = {
5123
+ export type CreateTemplateErrors = {
4369
5124
  /**
4370
5125
  * Bad request - Invalid parameters or malformed JSON
4371
5126
  */
@@ -4399,36 +5154,32 @@ export type GetPublicTemplatesErrors = {
4399
5154
  503: ErrorResponse;
4400
5155
  };
4401
5156
 
4402
- export type GetPublicTemplatesError = GetPublicTemplatesErrors[keyof GetPublicTemplatesErrors];
5157
+ export type CreateTemplateError = CreateTemplateErrors[keyof CreateTemplateErrors];
4403
5158
 
4404
- export type GetPublicTemplatesResponses = {
5159
+ export type CreateTemplateResponses = {
4405
5160
  /**
4406
- * Returns all public templates. Optionally includes screenshots when `withScreenshot` is true. Templates are ordered by the greatest of createdAt and lastUsedAt in descending order.
5161
+ * Creates a new template from the specified project for the specified user.
4407
5162
  */
4408
5163
  200: {
4409
- templates: Array<{
4410
- screenshotUrl: string | null;
4411
- originProjectName: string | null;
4412
- } & TemplateRaw>;
5164
+ template: TemplateRaw;
4413
5165
  };
4414
5166
  };
4415
5167
 
4416
- export type GetPublicTemplatesResponse = GetPublicTemplatesResponses[keyof GetPublicTemplatesResponses];
5168
+ export type CreateTemplateResponse = CreateTemplateResponses[keyof CreateTemplateResponses];
4417
5169
 
4418
- export type GetUserTemplatesData = {
4419
- body?: never;
4420
- path: {
4421
- dazlId: string;
5170
+ export type AddTemplateSharedWithData = {
5171
+ body: {
5172
+ email: string;
5173
+ ownerDazlId: string;
4422
5174
  };
4423
- query?: {
4424
- withScreenshot?: boolean | null;
4425
- withOriginProject?: boolean | null;
4426
- withAssociatedUsers?: boolean | null;
5175
+ path: {
5176
+ templateId: string;
4427
5177
  };
4428
- url: '/template/user/{dazlId}';
5178
+ query?: never;
5179
+ url: '/template/{templateId}/shared-with';
4429
5180
  };
4430
5181
 
4431
- export type GetUserTemplatesErrors = {
5182
+ export type AddTemplateSharedWithErrors = {
4432
5183
  /**
4433
5184
  * Bad request - Invalid parameters or malformed JSON
4434
5185
  */
@@ -4462,38 +5213,32 @@ export type GetUserTemplatesErrors = {
4462
5213
  503: ErrorResponse;
4463
5214
  };
4464
5215
 
4465
- export type GetUserTemplatesError = GetUserTemplatesErrors[keyof GetUserTemplatesErrors];
5216
+ export type AddTemplateSharedWithError = AddTemplateSharedWithErrors[keyof AddTemplateSharedWithErrors];
4466
5217
 
4467
- export type GetUserTemplatesResponses = {
5218
+ export type AddTemplateSharedWithResponses = {
4468
5219
  /**
4469
- * Returns all templates for the specified user. Templates are ordered by the greatest of createdAt and lastUsedAt in descending order.
5220
+ * Adds a shared-with email to the template.
4470
5221
  */
4471
5222
  200: {
4472
- templates: Array<{
4473
- screenshotUrl: string | null;
4474
- originProjectName: string | null;
4475
- } & TemplateRaw>;
4476
- users?: Array<UserDisplayInfoResponse>;
5223
+ template: TemplateRaw;
4477
5224
  };
4478
5225
  };
4479
5226
 
4480
- export type GetUserTemplatesResponse = GetUserTemplatesResponses[keyof GetUserTemplatesResponses];
5227
+ export type AddTemplateSharedWithResponse = AddTemplateSharedWithResponses[keyof AddTemplateSharedWithResponses];
4481
5228
 
4482
- export type DeleteTemplateData = {
4483
- /**
4484
- * Owner dazlId of the user attempting to delete the template
4485
- */
4486
- body?: {
5229
+ export type RemoveTemplateSharedWithData = {
5230
+ body: {
4487
5231
  ownerDazlId: string;
4488
5232
  };
4489
5233
  path: {
4490
5234
  templateId: string;
5235
+ email: string;
4491
5236
  };
4492
5237
  query?: never;
4493
- url: '/template/{templateId}';
5238
+ url: '/template/{templateId}/shared-with/{email}';
4494
5239
  };
4495
5240
 
4496
- export type DeleteTemplateErrors = {
5241
+ export type RemoveTemplateSharedWithErrors = {
4497
5242
  /**
4498
5243
  * Bad request - Invalid parameters or malformed JSON
4499
5244
  */
@@ -4527,31 +5272,33 @@ export type DeleteTemplateErrors = {
4527
5272
  503: ErrorResponse;
4528
5273
  };
4529
5274
 
4530
- export type DeleteTemplateError = DeleteTemplateErrors[keyof DeleteTemplateErrors];
5275
+ export type RemoveTemplateSharedWithError = RemoveTemplateSharedWithErrors[keyof RemoveTemplateSharedWithErrors];
4531
5276
 
4532
- export type DeleteTemplateResponses = {
5277
+ export type RemoveTemplateSharedWithResponses = {
4533
5278
  /**
4534
- * Deletes the template with the specified ID.
5279
+ * Removes a shared-with email from the template.
4535
5280
  */
4536
5281
  200: {
4537
- templateId: string;
5282
+ template: TemplateRaw;
4538
5283
  };
4539
5284
  };
4540
5285
 
4541
- export type DeleteTemplateResponse = DeleteTemplateResponses[keyof DeleteTemplateResponses];
5286
+ export type RemoveTemplateSharedWithResponse = RemoveTemplateSharedWithResponses[keyof RemoveTemplateSharedWithResponses];
4542
5287
 
4543
- export type GetTemplateData = {
4544
- body?: never;
4545
- path: {
4546
- templateId: string;
4547
- };
4548
- query?: {
4549
- withScreenshot?: boolean | null;
5288
+ export type CreateChatData = {
5289
+ body: {
5290
+ projectId: string;
5291
+ ownerDazlId: string;
5292
+ type: string;
5293
+ createdByUserId: string;
5294
+ schemaVersion: number;
4550
5295
  };
4551
- url: '/template/{templateId}';
5296
+ path?: never;
5297
+ query?: never;
5298
+ url: '/chat/create';
4552
5299
  };
4553
5300
 
4554
- export type GetTemplateErrors = {
5301
+ export type CreateChatErrors = {
4555
5302
  /**
4556
5303
  * Bad request - Invalid parameters or malformed JSON
4557
5304
  */
@@ -4585,37 +5332,46 @@ export type GetTemplateErrors = {
4585
5332
  503: ErrorResponse;
4586
5333
  };
4587
5334
 
4588
- export type GetTemplateError = GetTemplateErrors[keyof GetTemplateErrors];
5335
+ export type CreateChatError = CreateChatErrors[keyof CreateChatErrors];
4589
5336
 
4590
- export type GetTemplateResponses = {
5337
+ export type CreateChatResponses = {
4591
5338
  /**
4592
- * Returns the template with the specified ID.
5339
+ * Creates a new chat for the specified project.
4593
5340
  */
4594
5341
  200: {
4595
- template: TemplateRaw;
5342
+ chat: {
5343
+ id: string;
5344
+ projectId: string;
5345
+ type: string;
5346
+ title: string | null;
5347
+ archived: boolean;
5348
+ createdByUserId: string;
5349
+ schemaVersion: number;
5350
+ createdAt: string;
5351
+ updatedAt: string;
5352
+ pinnedContext?: unknown;
5353
+ agentSession?: unknown;
5354
+ messages: Array<unknown>;
5355
+ oldestSequence: number | null;
5356
+ hasMore: boolean;
5357
+ };
4596
5358
  };
4597
5359
  };
4598
5360
 
4599
- export type GetTemplateResponse = GetTemplateResponses[keyof GetTemplateResponses];
5361
+ export type CreateChatResponse = CreateChatResponses[keyof CreateChatResponses];
4600
5362
 
4601
- export type UpdateTemplateData = {
4602
- body: {
4603
- description?: string | null;
4604
- lastUsedAt?: string | null;
4605
- name?: string;
4606
- usageCount?: number;
4607
- isPublic?: boolean;
4608
- remoteEnvConfigId?: string | null;
4609
- ownerDazlId?: string;
4610
- };
5363
+ export type ListProjectChatsData = {
5364
+ body?: never;
4611
5365
  path: {
4612
- templateId: string;
5366
+ projectId: string;
4613
5367
  };
4614
- query?: never;
4615
- url: '/template/{templateId}';
5368
+ query: {
5369
+ ownerDazlId: string;
5370
+ };
5371
+ url: '/chat/project/{projectId}';
4616
5372
  };
4617
5373
 
4618
- export type UpdateTemplateErrors = {
5374
+ export type ListProjectChatsErrors = {
4619
5375
  /**
4620
5376
  * Bad request - Invalid parameters or malformed JSON
4621
5377
  */
@@ -4649,36 +5405,41 @@ export type UpdateTemplateErrors = {
4649
5405
  503: ErrorResponse;
4650
5406
  };
4651
5407
 
4652
- export type UpdateTemplateError = UpdateTemplateErrors[keyof UpdateTemplateErrors];
5408
+ export type ListProjectChatsError = ListProjectChatsErrors[keyof ListProjectChatsErrors];
4653
5409
 
4654
- export type UpdateTemplateResponses = {
5410
+ export type ListProjectChatsResponses = {
4655
5411
  /**
4656
- * Updates the template with the specified ID.
5412
+ * Lists non-deleted chats for the project, ordered by updatedAt descending. Does not include messages.
4657
5413
  */
4658
5414
  200: {
4659
- template: TemplateRaw;
5415
+ chats: Array<{
5416
+ id: string;
5417
+ projectId: string;
5418
+ type: string;
5419
+ title: string | null;
5420
+ archived: boolean;
5421
+ createdByUserId: string;
5422
+ schemaVersion: number;
5423
+ createdAt: string;
5424
+ updatedAt: string;
5425
+ }>;
4660
5426
  };
4661
5427
  };
4662
5428
 
4663
- export type UpdateTemplateResponse = UpdateTemplateResponses[keyof UpdateTemplateResponses];
5429
+ export type ListProjectChatsResponse = ListProjectChatsResponses[keyof ListProjectChatsResponses];
4664
5430
 
4665
- export type CreateTemplateData = {
5431
+ export type DeleteChatData = {
4666
5432
  body: {
4667
- originProjectId: string;
4668
- userDazlId: string;
4669
- } & {
4670
- preserveChatHistory: boolean;
4671
- preserveEnvFile: boolean;
4672
- name: string;
4673
- description?: string;
4674
- emails?: Array<string>;
5433
+ ownerDazlId: string;
5434
+ };
5435
+ path: {
5436
+ chatId: string;
4675
5437
  };
4676
- path?: never;
4677
5438
  query?: never;
4678
- url: '/template/create';
5439
+ url: '/chat/{chatId}';
4679
5440
  };
4680
5441
 
4681
- export type CreateTemplateErrors = {
5442
+ export type DeleteChatErrors = {
4682
5443
  /**
4683
5444
  * Bad request - Invalid parameters or malformed JSON
4684
5445
  */
@@ -4712,32 +5473,33 @@ export type CreateTemplateErrors = {
4712
5473
  503: ErrorResponse;
4713
5474
  };
4714
5475
 
4715
- export type CreateTemplateError = CreateTemplateErrors[keyof CreateTemplateErrors];
5476
+ export type DeleteChatError = DeleteChatErrors[keyof DeleteChatErrors];
4716
5477
 
4717
- export type CreateTemplateResponses = {
5478
+ export type DeleteChatResponses = {
4718
5479
  /**
4719
- * Creates a new template from the specified project for the specified user.
5480
+ * Soft-deletes the chat with the specified ID.
4720
5481
  */
4721
5482
  200: {
4722
- template: TemplateRaw;
5483
+ chatId: string;
4723
5484
  };
4724
5485
  };
4725
5486
 
4726
- export type CreateTemplateResponse = CreateTemplateResponses[keyof CreateTemplateResponses];
5487
+ export type DeleteChatResponse = DeleteChatResponses[keyof DeleteChatResponses];
4727
5488
 
4728
- export type AddTemplateSharedWithData = {
4729
- body: {
4730
- email: string;
4731
- ownerDazlId: string;
4732
- };
5489
+ export type GetChatData = {
5490
+ body?: never;
4733
5491
  path: {
4734
- templateId: string;
5492
+ chatId: string;
4735
5493
  };
4736
- query?: never;
4737
- url: '/template/{templateId}/shared-with';
5494
+ query: {
5495
+ ownerDazlId: string;
5496
+ limit?: number;
5497
+ before?: number | null;
5498
+ };
5499
+ url: '/chat/{chatId}';
4738
5500
  };
4739
5501
 
4740
- export type AddTemplateSharedWithErrors = {
5502
+ export type GetChatErrors = {
4741
5503
  /**
4742
5504
  * Bad request - Invalid parameters or malformed JSON
4743
5505
  */
@@ -4771,32 +5533,55 @@ export type AddTemplateSharedWithErrors = {
4771
5533
  503: ErrorResponse;
4772
5534
  };
4773
5535
 
4774
- export type AddTemplateSharedWithError = AddTemplateSharedWithErrors[keyof AddTemplateSharedWithErrors];
5536
+ export type GetChatError = GetChatErrors[keyof GetChatErrors];
4775
5537
 
4776
- export type AddTemplateSharedWithResponses = {
5538
+ export type GetChatResponses = {
4777
5539
  /**
4778
- * Adds a shared-with email to the template.
5540
+ * Returns the chat with a page of its messages. Without `limit`, returns every message. With `limit`, returns the `hasMore` flag and `oldestSequence` cursor — pass `oldestSequence` back as `before` to fetch the previous (older) page.
4779
5541
  */
4780
5542
  200: {
4781
- template: TemplateRaw;
5543
+ chat: {
5544
+ id: string;
5545
+ projectId: string;
5546
+ type: string;
5547
+ title: string | null;
5548
+ archived: boolean;
5549
+ createdByUserId: string;
5550
+ schemaVersion: number;
5551
+ createdAt: string;
5552
+ updatedAt: string;
5553
+ pinnedContext?: unknown;
5554
+ agentSession?: unknown;
5555
+ messages: Array<unknown>;
5556
+ oldestSequence: number | null;
5557
+ hasMore: boolean;
5558
+ };
4782
5559
  };
4783
5560
  };
4784
5561
 
4785
- export type AddTemplateSharedWithResponse = AddTemplateSharedWithResponses[keyof AddTemplateSharedWithResponses];
5562
+ export type GetChatResponse = GetChatResponses[keyof GetChatResponses];
4786
5563
 
4787
- export type RemoveTemplateSharedWithData = {
5564
+ export type UpdateChatData = {
4788
5565
  body: {
4789
5566
  ownerDazlId: string;
5567
+ title?: string;
5568
+ archived: boolean;
5569
+ pinnedContext?: unknown;
5570
+ agentSession?: unknown;
5571
+ schemaVersion: number;
5572
+ messages: Array<{
5573
+ id: string;
5574
+ [key: string]: unknown;
5575
+ }>;
4790
5576
  };
4791
5577
  path: {
4792
- templateId: string;
4793
- email: string;
5578
+ chatId: string;
4794
5579
  };
4795
5580
  query?: never;
4796
- url: '/template/{templateId}/shared-with/{email}';
5581
+ url: '/chat/{chatId}';
4797
5582
  };
4798
5583
 
4799
- export type RemoveTemplateSharedWithErrors = {
5584
+ export type UpdateChatErrors = {
4800
5585
  /**
4801
5586
  * Bad request - Invalid parameters or malformed JSON
4802
5587
  */
@@ -4830,18 +5615,33 @@ export type RemoveTemplateSharedWithErrors = {
4830
5615
  503: ErrorResponse;
4831
5616
  };
4832
5617
 
4833
- export type RemoveTemplateSharedWithError = RemoveTemplateSharedWithErrors[keyof RemoveTemplateSharedWithErrors];
5618
+ export type UpdateChatError = UpdateChatErrors[keyof UpdateChatErrors];
4834
5619
 
4835
- export type RemoveTemplateSharedWithResponses = {
5620
+ export type UpdateChatResponses = {
4836
5621
  /**
4837
- * Removes a shared-with email from the template.
5622
+ * Replaces the chat's metadata and full message list (whole-document semantics, matching the caller's in-memory chat state).
4838
5623
  */
4839
5624
  200: {
4840
- template: TemplateRaw;
5625
+ chat: {
5626
+ id: string;
5627
+ projectId: string;
5628
+ type: string;
5629
+ title: string | null;
5630
+ archived: boolean;
5631
+ createdByUserId: string;
5632
+ schemaVersion: number;
5633
+ createdAt: string;
5634
+ updatedAt: string;
5635
+ pinnedContext?: unknown;
5636
+ agentSession?: unknown;
5637
+ messages: Array<unknown>;
5638
+ oldestSequence: number | null;
5639
+ hasMore: boolean;
5640
+ };
4841
5641
  };
4842
5642
  };
4843
5643
 
4844
- export type RemoveTemplateSharedWithResponse = RemoveTemplateSharedWithResponses[keyof RemoveTemplateSharedWithResponses];
5644
+ export type UpdateChatResponse = UpdateChatResponses[keyof UpdateChatResponses];
4845
5645
 
4846
5646
  export type GetUploadConfigurationData = {
4847
5647
  body: {