samva 0.3.0 → 0.5.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.
Files changed (54) hide show
  1. package/AGENTS.md +1 -1
  2. package/README.md +5 -1
  3. package/dist/{categories-CsUa8ojo.js → categories-B9Nw2v_F.js} +5 -1
  4. package/dist/client/sdk.gen.d.ts +312 -190
  5. package/dist/client/types.gen.d.ts +2284 -728
  6. package/dist/{client-BOghX8fr.js → client-B7gEkvEq.js} +2740 -1036
  7. package/dist/client-attribution-B2yJBXdZ.js +9 -0
  8. package/dist/client-attribution.d.ts +2 -0
  9. package/dist/effect/api-keys.d.ts +51 -51
  10. package/dist/effect/api-keys.js +1 -1
  11. package/dist/effect/campaigns.d.ts +269 -219
  12. package/dist/effect/campaigns.js +1 -1
  13. package/dist/effect/categories.d.ts +6 -6
  14. package/dist/effect/categories.js +1 -1
  15. package/dist/effect/client.js +1 -1
  16. package/dist/effect/contacts.d.ts +225 -225
  17. package/dist/effect/contacts.js +1 -1
  18. package/dist/effect/conversations.d.ts +308 -293
  19. package/dist/effect/conversations.js +1 -1
  20. package/dist/effect/design.d.ts +76 -76
  21. package/dist/effect/design.js +1 -1
  22. package/dist/effect/email.d.ts +923 -213
  23. package/dist/effect/email.js +27 -3
  24. package/dist/effect/generated-metadata.d.ts +4 -0
  25. package/dist/effect/generated.d.ts +14948 -10919
  26. package/dist/effect/index.js +2 -2
  27. package/dist/effect/internal/client.d.ts +1 -1
  28. package/dist/effect/internal/operation.d.ts +31 -20
  29. package/dist/effect/media.d.ts +12 -12
  30. package/dist/effect/media.js +1 -1
  31. package/dist/effect/messages.d.ts +243 -61
  32. package/dist/effect/messages.js +5 -3
  33. package/dist/effect/operations.d.ts +17 -17
  34. package/dist/effect/operations.js +1 -1
  35. package/dist/effect/organizations.d.ts +162 -162
  36. package/dist/effect/organizations.js +1 -1
  37. package/dist/effect/retry.js +1 -1
  38. package/dist/effect/runtime.d.ts +0 -2
  39. package/dist/effect/scheduled-messages.d.ts +375 -277
  40. package/dist/effect/scheduled-messages.js +5 -3
  41. package/dist/effect/templates.d.ts +1383 -1554
  42. package/dist/effect/templates.js +40 -30
  43. package/dist/effect/webhooks.d.ts +81 -47
  44. package/dist/effect/webhooks.js +2 -2
  45. package/dist/index.js +2 -2
  46. package/dist/{normalize-BKFjbR9t.js → normalize-BiIJnycv.js} +2 -3
  47. package/dist/{operation-C2Q4cFJL.js → operation-B4FjN6wq.js} +113 -38
  48. package/dist/promises/errors.gen.d.ts +21 -2
  49. package/dist/promises/index.d.ts +11 -8
  50. package/dist/promises/index.js +2 -2
  51. package/dist/promises/types.gen.d.ts +1 -1
  52. package/dist/{promises-oiy7mOyu.js → promises-CP_nxUus.js} +828 -306
  53. package/dist/service-map.d.ts +136 -44
  54. package/package.json +13 -14
@@ -1,15 +1,34 @@
1
1
  export { CreateTemplatePayload as CreatePayload, UpdateTemplatePayload as UpdatePayload, } from "./generated";
2
2
  export declare const list: ((input?: {
3
- readonly channel?: string | null | undefined;
4
- readonly limit?: string | null | undefined;
5
- readonly search?: string | null | undefined;
6
3
  readonly page?: string | null | undefined;
7
- readonly status?: string | null | undefined;
4
+ readonly limit?: string | null | undefined;
8
5
  readonly category?: string | null | undefined;
6
+ readonly channel?: string | null | undefined;
7
+ readonly status?: string | null | undefined;
8
+ readonly search?: string | null | undefined;
9
9
  readonly sortBy?: string | null | undefined;
10
10
  readonly sortOrder?: string | null | undefined;
11
11
  } | undefined) => import("effect/Effect").Effect<{
12
12
  readonly items: readonly {
13
+ readonly id: string & import("effect/Brand").Brand<"TemplateId">;
14
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
15
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
16
+ readonly entryPath: string;
17
+ readonly name: string;
18
+ readonly slug: string;
19
+ readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
20
+ readonly channel: "email";
21
+ readonly description: string | null;
22
+ readonly category: string | null;
23
+ readonly fromDefault?: {
24
+ readonly email: string;
25
+ readonly name?: string | null;
26
+ } | null;
27
+ readonly replyToDefault?: readonly string[] | null;
28
+ readonly trackingDefault?: {
29
+ readonly opens?: boolean | null;
30
+ readonly clicks?: boolean | null;
31
+ } | null;
13
32
  readonly email: {
14
33
  readonly subject: string;
15
34
  readonly preheader: string | null;
@@ -17,133 +36,37 @@ export declare const list: ((input?: {
17
36
  readonly [x: string]: string;
18
37
  } | null;
19
38
  } | null;
20
- readonly name: string;
21
- readonly createdAt: string;
22
- readonly updatedAt: string;
23
- readonly usageCount: number;
24
- readonly lastUsedAt: string | null;
25
- readonly channel: "email";
26
- readonly id: string & import("effect/Brand").Brand<"TemplateId">;
27
- readonly origin: "dashboard" | "tsx";
28
- readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
29
- readonly description: string | null;
30
- readonly status: string;
31
- readonly isActive: boolean;
32
- readonly category: string | null;
33
- readonly slug: string;
34
- readonly version: number;
35
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
36
- readonly isDefault: boolean;
37
- readonly variableSchema: readonly {
38
- readonly name: string;
39
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
40
- readonly required: boolean;
41
- readonly validation?: {
42
- readonly enum?: readonly string[] | null;
43
- readonly pattern?: string | null;
44
- readonly min?: number | null;
45
- readonly max?: number | null;
46
- readonly minLength?: number | null;
47
- readonly maxLength?: number | null;
48
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
49
- } | null;
50
- readonly default?: import("./generated").JsonValue;
51
- readonly description?: string | null;
52
- }[] | null;
39
+ readonly publicationId: (string & import("effect/Brand").Brand<"TemplatePublicationId">) | null;
40
+ readonly inputContractId: (string & import("effect/Brand").Brand<"TemplateInputContractId">) | null;
41
+ readonly inputSchema: {
42
+ readonly [x: string]: import("./generated").JsonValue;
43
+ } | null;
53
44
  readonly compliance: {
54
45
  readonly metaStatus?: string | null;
55
46
  readonly submittedAt?: string | null;
56
47
  readonly qualityScore?: string | null;
57
48
  readonly rejectedReason?: string | null;
58
49
  readonly lastSyncedAt?: string | null;
59
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
50
+ readonly approvalStatus?: "approved" | "archived" | "draft" | "pending" | "published" | "rejected" | null;
60
51
  readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
61
52
  readonly approvedAt?: string | null;
62
53
  readonly approvalNotes?: string | null;
63
54
  readonly regulatoryRequirements?: readonly {
64
- readonly status: "pending" | "compliant" | "non_compliant";
65
55
  readonly region: string;
66
56
  readonly requirement: string;
57
+ readonly status: "compliant" | "non_compliant" | "pending";
67
58
  readonly notes?: string | null;
68
59
  }[] | null;
69
60
  } | null;
70
- readonly designOverrides: {
71
- readonly footer?: {
72
- readonly address?: {
73
- readonly country: string;
74
- readonly city: string;
75
- readonly street1: string;
76
- readonly region: string;
77
- readonly postalCode: string;
78
- readonly street2?: string | null;
79
- } | null;
80
- readonly companyName?: string | null;
81
- readonly socialLinks?: readonly {
82
- readonly label: string;
83
- readonly url: string;
84
- }[] | null;
85
- readonly customHtml?: string | null;
86
- } | null;
87
- readonly theme?: {
88
- readonly text?: {
89
- readonly [x: string]: {
90
- readonly sizePx: number;
91
- readonly lineHeightPx: number;
92
- };
93
- } | null;
94
- readonly tracking?: {
95
- readonly [x: string]: number;
96
- } | null;
97
- readonly colors?: {
98
- readonly [x: string]: string;
99
- } | null;
100
- readonly colorsDark?: {
101
- readonly [x: string]: string;
102
- } | null;
103
- readonly radiusPx?: {
104
- readonly [x: string]: number;
105
- } | null;
106
- readonly fontFamilies?: {
107
- readonly [x: string]: {
108
- readonly family: string;
109
- readonly source: "system" | "google" | "custom";
110
- readonly fallback: string;
111
- readonly faces?: readonly {
112
- readonly style: "normal" | "italic";
113
- readonly weight: number;
114
- readonly src: string;
115
- readonly unicodeRange?: string | null;
116
- }[] | null;
117
- };
118
- } | null;
119
- readonly fontWeights?: {
120
- readonly [x: string]: number;
121
- } | null;
122
- readonly leading?: {
123
- readonly [x: string]: number;
124
- } | null;
125
- readonly spacingPx?: number | null;
126
- readonly containerPx?: {
127
- readonly [x: string]: number;
128
- } | null;
129
- } | null;
130
- readonly assets?: {
131
- readonly logoUrl?: string | null;
132
- readonly logoDarkUrl?: string | null;
133
- readonly iconUrl?: string | null;
134
- } | null;
135
- } | null;
136
- readonly replyToDefault?: readonly string[] | null;
137
- readonly fromDefault?: {
138
- readonly email: string;
139
- readonly name?: string | null;
140
- } | null;
141
- readonly trackingDefault?: {
142
- readonly opens?: boolean | null;
143
- readonly clicks?: boolean | null;
144
- } | null;
61
+ readonly usageCount: number;
62
+ readonly lastUsedAt: string | null;
63
+ readonly status: string;
64
+ readonly isActive: boolean;
65
+ readonly isDefault: boolean;
145
66
  readonly publishedAt?: string | null;
146
67
  readonly publishedBy?: string | null;
68
+ readonly createdAt: string;
69
+ readonly updatedAt: string;
147
70
  }[];
148
71
  readonly pagination: {
149
72
  readonly page: number;
@@ -151,18 +74,37 @@ export declare const list: ((input?: {
151
74
  readonly total: number;
152
75
  readonly totalPages: number;
153
76
  };
154
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>) & {
77
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>) & {
155
78
  readonly pages: (input?: {
156
- readonly channel?: string | null | undefined;
157
- readonly limit?: string | null | undefined;
158
- readonly search?: string | null | undefined;
159
79
  readonly page?: string | null | undefined;
160
- readonly status?: string | null | undefined;
80
+ readonly limit?: string | null | undefined;
161
81
  readonly category?: string | null | undefined;
82
+ readonly channel?: string | null | undefined;
83
+ readonly status?: string | null | undefined;
84
+ readonly search?: string | null | undefined;
162
85
  readonly sortBy?: string | null | undefined;
163
86
  readonly sortOrder?: string | null | undefined;
164
87
  } | undefined) => import("effect/Stream").Stream<{
165
88
  readonly items: readonly {
89
+ readonly id: string & import("effect/Brand").Brand<"TemplateId">;
90
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
91
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
92
+ readonly entryPath: string;
93
+ readonly name: string;
94
+ readonly slug: string;
95
+ readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
96
+ readonly channel: "email";
97
+ readonly description: string | null;
98
+ readonly category: string | null;
99
+ readonly fromDefault?: {
100
+ readonly email: string;
101
+ readonly name?: string | null;
102
+ } | null;
103
+ readonly replyToDefault?: readonly string[] | null;
104
+ readonly trackingDefault?: {
105
+ readonly opens?: boolean | null;
106
+ readonly clicks?: boolean | null;
107
+ } | null;
166
108
  readonly email: {
167
109
  readonly subject: string;
168
110
  readonly preheader: string | null;
@@ -170,133 +112,37 @@ export declare const list: ((input?: {
170
112
  readonly [x: string]: string;
171
113
  } | null;
172
114
  } | null;
173
- readonly name: string;
174
- readonly createdAt: string;
175
- readonly updatedAt: string;
176
- readonly usageCount: number;
177
- readonly lastUsedAt: string | null;
178
- readonly channel: "email";
179
- readonly id: string & import("effect/Brand").Brand<"TemplateId">;
180
- readonly origin: "dashboard" | "tsx";
181
- readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
182
- readonly description: string | null;
183
- readonly status: string;
184
- readonly isActive: boolean;
185
- readonly category: string | null;
186
- readonly slug: string;
187
- readonly version: number;
188
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
189
- readonly isDefault: boolean;
190
- readonly variableSchema: readonly {
191
- readonly name: string;
192
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
193
- readonly required: boolean;
194
- readonly validation?: {
195
- readonly enum?: readonly string[] | null;
196
- readonly pattern?: string | null;
197
- readonly min?: number | null;
198
- readonly max?: number | null;
199
- readonly minLength?: number | null;
200
- readonly maxLength?: number | null;
201
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
202
- } | null;
203
- readonly default?: import("./generated").JsonValue;
204
- readonly description?: string | null;
205
- }[] | null;
115
+ readonly publicationId: (string & import("effect/Brand").Brand<"TemplatePublicationId">) | null;
116
+ readonly inputContractId: (string & import("effect/Brand").Brand<"TemplateInputContractId">) | null;
117
+ readonly inputSchema: {
118
+ readonly [x: string]: import("./generated").JsonValue;
119
+ } | null;
206
120
  readonly compliance: {
207
121
  readonly metaStatus?: string | null;
208
122
  readonly submittedAt?: string | null;
209
123
  readonly qualityScore?: string | null;
210
124
  readonly rejectedReason?: string | null;
211
125
  readonly lastSyncedAt?: string | null;
212
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
126
+ readonly approvalStatus?: "approved" | "archived" | "draft" | "pending" | "published" | "rejected" | null;
213
127
  readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
214
128
  readonly approvedAt?: string | null;
215
129
  readonly approvalNotes?: string | null;
216
130
  readonly regulatoryRequirements?: readonly {
217
- readonly status: "pending" | "compliant" | "non_compliant";
218
131
  readonly region: string;
219
132
  readonly requirement: string;
133
+ readonly status: "compliant" | "non_compliant" | "pending";
220
134
  readonly notes?: string | null;
221
135
  }[] | null;
222
136
  } | null;
223
- readonly designOverrides: {
224
- readonly footer?: {
225
- readonly address?: {
226
- readonly country: string;
227
- readonly city: string;
228
- readonly street1: string;
229
- readonly region: string;
230
- readonly postalCode: string;
231
- readonly street2?: string | null;
232
- } | null;
233
- readonly companyName?: string | null;
234
- readonly socialLinks?: readonly {
235
- readonly label: string;
236
- readonly url: string;
237
- }[] | null;
238
- readonly customHtml?: string | null;
239
- } | null;
240
- readonly theme?: {
241
- readonly text?: {
242
- readonly [x: string]: {
243
- readonly sizePx: number;
244
- readonly lineHeightPx: number;
245
- };
246
- } | null;
247
- readonly tracking?: {
248
- readonly [x: string]: number;
249
- } | null;
250
- readonly colors?: {
251
- readonly [x: string]: string;
252
- } | null;
253
- readonly colorsDark?: {
254
- readonly [x: string]: string;
255
- } | null;
256
- readonly radiusPx?: {
257
- readonly [x: string]: number;
258
- } | null;
259
- readonly fontFamilies?: {
260
- readonly [x: string]: {
261
- readonly family: string;
262
- readonly source: "system" | "google" | "custom";
263
- readonly fallback: string;
264
- readonly faces?: readonly {
265
- readonly style: "normal" | "italic";
266
- readonly weight: number;
267
- readonly src: string;
268
- readonly unicodeRange?: string | null;
269
- }[] | null;
270
- };
271
- } | null;
272
- readonly fontWeights?: {
273
- readonly [x: string]: number;
274
- } | null;
275
- readonly leading?: {
276
- readonly [x: string]: number;
277
- } | null;
278
- readonly spacingPx?: number | null;
279
- readonly containerPx?: {
280
- readonly [x: string]: number;
281
- } | null;
282
- } | null;
283
- readonly assets?: {
284
- readonly logoUrl?: string | null;
285
- readonly logoDarkUrl?: string | null;
286
- readonly iconUrl?: string | null;
287
- } | null;
288
- } | null;
289
- readonly replyToDefault?: readonly string[] | null;
290
- readonly fromDefault?: {
291
- readonly email: string;
292
- readonly name?: string | null;
293
- } | null;
294
- readonly trackingDefault?: {
295
- readonly opens?: boolean | null;
296
- readonly clicks?: boolean | null;
297
- } | null;
137
+ readonly usageCount: number;
138
+ readonly lastUsedAt: string | null;
139
+ readonly status: string;
140
+ readonly isActive: boolean;
141
+ readonly isDefault: boolean;
298
142
  readonly publishedAt?: string | null;
299
143
  readonly publishedBy?: string | null;
144
+ readonly createdAt: string;
145
+ readonly updatedAt: string;
300
146
  }[];
301
147
  readonly pagination: {
302
148
  readonly page: number;
@@ -304,17 +150,36 @@ export declare const list: ((input?: {
304
150
  readonly total: number;
305
151
  readonly totalPages: number;
306
152
  };
307
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
153
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
308
154
  readonly items: (input?: {
309
- readonly channel?: string | null | undefined;
310
- readonly limit?: string | null | undefined;
311
- readonly search?: string | null | undefined;
312
155
  readonly page?: string | null | undefined;
313
- readonly status?: string | null | undefined;
156
+ readonly limit?: string | null | undefined;
314
157
  readonly category?: string | null | undefined;
158
+ readonly channel?: string | null | undefined;
159
+ readonly status?: string | null | undefined;
160
+ readonly search?: string | null | undefined;
315
161
  readonly sortBy?: string | null | undefined;
316
162
  readonly sortOrder?: string | null | undefined;
317
163
  } | undefined) => import("effect/Stream").Stream<{
164
+ readonly id: string & import("effect/Brand").Brand<"TemplateId">;
165
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
166
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
167
+ readonly entryPath: string;
168
+ readonly name: string;
169
+ readonly slug: string;
170
+ readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
171
+ readonly channel: "email";
172
+ readonly description: string | null;
173
+ readonly category: string | null;
174
+ readonly fromDefault?: {
175
+ readonly email: string;
176
+ readonly name?: string | null;
177
+ } | null;
178
+ readonly replyToDefault?: readonly string[] | null;
179
+ readonly trackingDefault?: {
180
+ readonly opens?: boolean | null;
181
+ readonly clicks?: boolean | null;
182
+ } | null;
318
183
  readonly email: {
319
184
  readonly subject: string;
320
185
  readonly preheader: string | null;
@@ -322,287 +187,68 @@ export declare const list: ((input?: {
322
187
  readonly [x: string]: string;
323
188
  } | null;
324
189
  } | null;
325
- readonly name: string;
326
- readonly createdAt: string;
327
- readonly updatedAt: string;
328
- readonly usageCount: number;
329
- readonly lastUsedAt: string | null;
330
- readonly channel: "email";
331
- readonly id: string & import("effect/Brand").Brand<"TemplateId">;
332
- readonly origin: "dashboard" | "tsx";
333
- readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
334
- readonly description: string | null;
335
- readonly status: string;
336
- readonly isActive: boolean;
337
- readonly category: string | null;
338
- readonly slug: string;
339
- readonly version: number;
340
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
341
- readonly isDefault: boolean;
342
- readonly variableSchema: readonly {
343
- readonly name: string;
344
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
345
- readonly required: boolean;
346
- readonly validation?: {
347
- readonly enum?: readonly string[] | null;
348
- readonly pattern?: string | null;
349
- readonly min?: number | null;
350
- readonly max?: number | null;
351
- readonly minLength?: number | null;
352
- readonly maxLength?: number | null;
353
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
354
- } | null;
355
- readonly default?: import("./generated").JsonValue;
356
- readonly description?: string | null;
357
- }[] | null;
190
+ readonly publicationId: (string & import("effect/Brand").Brand<"TemplatePublicationId">) | null;
191
+ readonly inputContractId: (string & import("effect/Brand").Brand<"TemplateInputContractId">) | null;
192
+ readonly inputSchema: {
193
+ readonly [x: string]: import("./generated").JsonValue;
194
+ } | null;
358
195
  readonly compliance: {
359
196
  readonly metaStatus?: string | null;
360
197
  readonly submittedAt?: string | null;
361
198
  readonly qualityScore?: string | null;
362
199
  readonly rejectedReason?: string | null;
363
200
  readonly lastSyncedAt?: string | null;
364
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
201
+ readonly approvalStatus?: "approved" | "archived" | "draft" | "pending" | "published" | "rejected" | null;
365
202
  readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
366
203
  readonly approvedAt?: string | null;
367
204
  readonly approvalNotes?: string | null;
368
205
  readonly regulatoryRequirements?: readonly {
369
- readonly status: "pending" | "compliant" | "non_compliant";
370
206
  readonly region: string;
371
207
  readonly requirement: string;
208
+ readonly status: "compliant" | "non_compliant" | "pending";
372
209
  readonly notes?: string | null;
373
210
  }[] | null;
374
211
  } | null;
375
- readonly designOverrides: {
376
- readonly footer?: {
377
- readonly address?: {
378
- readonly country: string;
379
- readonly city: string;
380
- readonly street1: string;
381
- readonly region: string;
382
- readonly postalCode: string;
383
- readonly street2?: string | null;
384
- } | null;
385
- readonly companyName?: string | null;
386
- readonly socialLinks?: readonly {
387
- readonly label: string;
388
- readonly url: string;
389
- }[] | null;
390
- readonly customHtml?: string | null;
391
- } | null;
392
- readonly theme?: {
393
- readonly text?: {
394
- readonly [x: string]: {
395
- readonly sizePx: number;
396
- readonly lineHeightPx: number;
397
- };
398
- } | null;
399
- readonly tracking?: {
400
- readonly [x: string]: number;
401
- } | null;
402
- readonly colors?: {
403
- readonly [x: string]: string;
404
- } | null;
405
- readonly colorsDark?: {
406
- readonly [x: string]: string;
407
- } | null;
408
- readonly radiusPx?: {
409
- readonly [x: string]: number;
410
- } | null;
411
- readonly fontFamilies?: {
412
- readonly [x: string]: {
413
- readonly family: string;
414
- readonly source: "system" | "google" | "custom";
415
- readonly fallback: string;
416
- readonly faces?: readonly {
417
- readonly style: "normal" | "italic";
418
- readonly weight: number;
419
- readonly src: string;
420
- readonly unicodeRange?: string | null;
421
- }[] | null;
422
- };
423
- } | null;
424
- readonly fontWeights?: {
425
- readonly [x: string]: number;
426
- } | null;
427
- readonly leading?: {
428
- readonly [x: string]: number;
429
- } | null;
430
- readonly spacingPx?: number | null;
431
- readonly containerPx?: {
432
- readonly [x: string]: number;
433
- } | null;
434
- } | null;
435
- readonly assets?: {
436
- readonly logoUrl?: string | null;
437
- readonly logoDarkUrl?: string | null;
438
- readonly iconUrl?: string | null;
439
- } | null;
440
- } | null;
441
- readonly replyToDefault?: readonly string[] | null;
442
- readonly fromDefault?: {
443
- readonly email: string;
444
- readonly name?: string | null;
445
- } | null;
446
- readonly trackingDefault?: {
447
- readonly opens?: boolean | null;
448
- readonly clicks?: boolean | null;
449
- } | null;
212
+ readonly usageCount: number;
213
+ readonly lastUsedAt: string | null;
214
+ readonly status: string;
215
+ readonly isActive: boolean;
216
+ readonly isDefault: boolean;
450
217
  readonly publishedAt?: string | null;
451
218
  readonly publishedBy?: string | null;
452
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
219
+ readonly createdAt: string;
220
+ readonly updatedAt: string;
221
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
453
222
  };
454
223
  export declare const create: (input: {
455
224
  readonly name: string;
456
- readonly source: string;
457
- readonly headers?: {
458
- readonly [x: string]: string | undefined;
459
- } | null | undefined;
460
- readonly origin?: string | null | undefined;
461
- readonly subject?: string | null | undefined;
225
+ readonly projectName?: string | null | undefined;
226
+ readonly slug?: string | null | undefined;
227
+ readonly galleryTemplateId?: string | null | undefined;
462
228
  readonly description?: string | null | undefined;
463
- readonly isActive?: boolean | null | undefined;
464
229
  readonly category?: string | null | undefined;
465
- readonly slug?: string | null | undefined;
466
- readonly version?: number | null | undefined;
467
- readonly isDefault?: boolean | null | undefined;
468
- readonly variableSchema?: readonly {
469
- readonly name: string;
470
- readonly type: string;
471
- readonly required: boolean;
472
- readonly validation?: {
473
- readonly enum?: readonly string[] | null | undefined;
474
- readonly pattern?: string | null | undefined;
475
- readonly min?: number | null | undefined;
476
- readonly max?: number | null | undefined;
477
- readonly minLength?: number | null | undefined;
478
- readonly maxLength?: number | null | undefined;
479
- readonly format?: string | null | undefined;
480
- } | null | undefined;
481
- readonly default?: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | {
482
- readonly [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any | null | undefined;
483
- } | null)[] | {
484
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
485
- } | null)[] | {
486
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
487
- } | null)[] | {
488
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
489
- } | null)[] | {
490
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
491
- } | null)[] | {
492
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
493
- } | null)[] | {
494
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
495
- } | null)[] | {
496
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
497
- } | null)[] | {
498
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
499
- } | null)[] | {
500
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
501
- } | null)[] | {
502
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
503
- } | null | undefined;
504
- readonly description?: string | null | undefined;
505
- }[] | null | undefined;
506
- readonly compliance?: {
507
- readonly metaStatus?: string | null | undefined;
508
- readonly submittedAt?: string | null | undefined;
509
- readonly qualityScore?: string | null | undefined;
510
- readonly rejectedReason?: string | null | undefined;
511
- readonly lastSyncedAt?: string | null | undefined;
512
- readonly approvalStatus?: string | null | undefined;
513
- readonly approvedBy?: string | null | undefined;
514
- readonly approvedAt?: string | null | undefined;
515
- readonly approvalNotes?: string | null | undefined;
516
- readonly regulatoryRequirements?: readonly {
517
- readonly status: string;
518
- readonly region: string;
519
- readonly requirement: string;
520
- readonly notes?: string | null | undefined;
521
- }[] | null | undefined;
522
- } | null | undefined;
523
- readonly designOverrides?: {
524
- readonly footer?: {
525
- readonly address?: {
526
- readonly country: string;
527
- readonly city: string;
528
- readonly street1: string;
529
- readonly region: string;
530
- readonly postalCode: string;
531
- readonly street2?: string | null | undefined;
532
- } | null | undefined;
533
- readonly companyName?: string | null | undefined;
534
- readonly socialLinks?: readonly {
535
- readonly label: string;
536
- readonly url: string;
537
- }[] | null | undefined;
538
- readonly customHtml?: string | null | undefined;
539
- } | null | undefined;
540
- readonly theme?: {
541
- readonly text?: {
542
- readonly [x: string]: {
543
- readonly sizePx: number;
544
- readonly lineHeightPx: number;
545
- } | undefined;
546
- } | null | undefined;
547
- readonly tracking?: {
548
- readonly [x: string]: number | undefined;
549
- } | null | undefined;
550
- readonly colors?: {
551
- readonly [x: string]: string | undefined;
552
- } | null | undefined;
553
- readonly colorsDark?: {
554
- readonly [x: string]: string | undefined;
555
- } | null | undefined;
556
- readonly radiusPx?: {
557
- readonly [x: string]: number | undefined;
558
- } | null | undefined;
559
- readonly fontFamilies?: {
560
- readonly [x: string]: {
561
- readonly family: string;
562
- readonly source: string;
563
- readonly fallback: string;
564
- readonly faces?: readonly {
565
- readonly style: string;
566
- readonly weight: number;
567
- readonly src: string;
568
- readonly unicodeRange?: string | null | undefined;
569
- }[] | null | undefined;
570
- } | undefined;
571
- } | null | undefined;
572
- readonly fontWeights?: {
573
- readonly [x: string]: number | undefined;
574
- } | null | undefined;
575
- readonly leading?: {
576
- readonly [x: string]: number | undefined;
577
- } | null | undefined;
578
- readonly spacingPx?: number | null | undefined;
579
- readonly containerPx?: {
580
- readonly [x: string]: number | undefined;
581
- } | null | undefined;
582
- } | null | undefined;
583
- readonly assets?: {
584
- readonly logoUrl?: string | null | undefined;
585
- readonly logoDarkUrl?: string | null | undefined;
586
- readonly iconUrl?: string | null | undefined;
587
- } | null | undefined;
588
- } | null | undefined;
589
- readonly performance?: {
590
- readonly usageCount?: number | null | undefined;
591
- readonly lastUsedAt?: string | null | undefined;
592
- readonly deliveryRate?: number | null | undefined;
593
- readonly openRate?: number | null | undefined;
594
- readonly clickRate?: number | null | undefined;
595
- readonly responseRate?: number | null | undefined;
596
- readonly conversionRate?: number | null | undefined;
597
- readonly averageSatisfaction?: number | null | undefined;
598
- readonly totalSent?: number | null | undefined;
599
- readonly totalDelivered?: number | null | undefined;
600
- readonly totalOpened?: number | null | undefined;
601
- readonly totalClicked?: number | null | undefined;
602
- readonly totalResponses?: number | null | undefined;
603
- readonly totalConversions?: number | null | undefined;
604
- } | null | undefined;
230
+ readonly isActive?: boolean | null | undefined;
231
+ readonly idempotencyKey: string;
605
232
  }) => import("effect/Effect").Effect<{
233
+ readonly id: string & import("effect/Brand").Brand<"TemplateId">;
234
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
235
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
236
+ readonly entryPath: string;
237
+ readonly name: string;
238
+ readonly slug: string;
239
+ readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
240
+ readonly channel: "email";
241
+ readonly description: string | null;
242
+ readonly category: string | null;
243
+ readonly fromDefault?: {
244
+ readonly email: string;
245
+ readonly name?: string | null;
246
+ } | null;
247
+ readonly replyToDefault?: readonly string[] | null;
248
+ readonly trackingDefault?: {
249
+ readonly opens?: boolean | null;
250
+ readonly clicks?: boolean | null;
251
+ } | null;
606
252
  readonly email: {
607
253
  readonly subject: string;
608
254
  readonly preheader: string | null;
@@ -610,142 +256,46 @@ export declare const create: (input: {
610
256
  readonly [x: string]: string;
611
257
  } | null;
612
258
  } | null;
613
- readonly name: string;
614
- readonly createdAt: string;
615
- readonly updatedAt: string;
616
- readonly usageCount: number;
617
- readonly lastUsedAt: string | null;
618
- readonly channel: "email";
619
- readonly id: string & import("effect/Brand").Brand<"TemplateId">;
620
- readonly origin: "dashboard" | "tsx";
621
- readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
622
- readonly description: string | null;
623
- readonly status: string;
624
- readonly isActive: boolean;
625
- readonly category: string | null;
626
- readonly slug: string;
627
- readonly version: number;
628
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
629
- readonly isDefault: boolean;
630
- readonly variableSchema: readonly {
631
- readonly name: string;
632
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
633
- readonly required: boolean;
634
- readonly validation?: {
635
- readonly enum?: readonly string[] | null;
636
- readonly pattern?: string | null;
637
- readonly min?: number | null;
638
- readonly max?: number | null;
639
- readonly minLength?: number | null;
640
- readonly maxLength?: number | null;
641
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
642
- } | null;
643
- readonly default?: import("./generated").JsonValue;
644
- readonly description?: string | null;
645
- }[] | null;
259
+ readonly publicationId: (string & import("effect/Brand").Brand<"TemplatePublicationId">) | null;
260
+ readonly inputContractId: (string & import("effect/Brand").Brand<"TemplateInputContractId">) | null;
261
+ readonly inputSchema: {
262
+ readonly [x: string]: import("./generated").JsonValue;
263
+ } | null;
646
264
  readonly compliance: {
647
265
  readonly metaStatus?: string | null;
648
266
  readonly submittedAt?: string | null;
649
267
  readonly qualityScore?: string | null;
650
268
  readonly rejectedReason?: string | null;
651
269
  readonly lastSyncedAt?: string | null;
652
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
270
+ readonly approvalStatus?: "approved" | "archived" | "draft" | "pending" | "published" | "rejected" | null;
653
271
  readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
654
272
  readonly approvedAt?: string | null;
655
273
  readonly approvalNotes?: string | null;
656
274
  readonly regulatoryRequirements?: readonly {
657
- readonly status: "pending" | "compliant" | "non_compliant";
658
275
  readonly region: string;
659
276
  readonly requirement: string;
277
+ readonly status: "compliant" | "non_compliant" | "pending";
660
278
  readonly notes?: string | null;
661
279
  }[] | null;
662
280
  } | null;
663
- readonly designOverrides: {
664
- readonly footer?: {
665
- readonly address?: {
666
- readonly country: string;
667
- readonly city: string;
668
- readonly street1: string;
669
- readonly region: string;
670
- readonly postalCode: string;
671
- readonly street2?: string | null;
672
- } | null;
673
- readonly companyName?: string | null;
674
- readonly socialLinks?: readonly {
675
- readonly label: string;
676
- readonly url: string;
677
- }[] | null;
678
- readonly customHtml?: string | null;
679
- } | null;
680
- readonly theme?: {
681
- readonly text?: {
682
- readonly [x: string]: {
683
- readonly sizePx: number;
684
- readonly lineHeightPx: number;
685
- };
686
- } | null;
687
- readonly tracking?: {
688
- readonly [x: string]: number;
689
- } | null;
690
- readonly colors?: {
691
- readonly [x: string]: string;
692
- } | null;
693
- readonly colorsDark?: {
694
- readonly [x: string]: string;
695
- } | null;
696
- readonly radiusPx?: {
697
- readonly [x: string]: number;
698
- } | null;
699
- readonly fontFamilies?: {
700
- readonly [x: string]: {
701
- readonly family: string;
702
- readonly source: "system" | "google" | "custom";
703
- readonly fallback: string;
704
- readonly faces?: readonly {
705
- readonly style: "normal" | "italic";
706
- readonly weight: number;
707
- readonly src: string;
708
- readonly unicodeRange?: string | null;
709
- }[] | null;
710
- };
711
- } | null;
712
- readonly fontWeights?: {
713
- readonly [x: string]: number;
714
- } | null;
715
- readonly leading?: {
716
- readonly [x: string]: number;
717
- } | null;
718
- readonly spacingPx?: number | null;
719
- readonly containerPx?: {
720
- readonly [x: string]: number;
721
- } | null;
722
- } | null;
723
- readonly assets?: {
724
- readonly logoUrl?: string | null;
725
- readonly logoDarkUrl?: string | null;
726
- readonly iconUrl?: string | null;
727
- } | null;
728
- } | null;
729
- readonly replyToDefault?: readonly string[] | null;
730
- readonly fromDefault?: {
731
- readonly email: string;
732
- readonly name?: string | null;
733
- } | null;
734
- readonly trackingDefault?: {
735
- readonly opens?: boolean | null;
736
- readonly clicks?: boolean | null;
737
- } | null;
281
+ readonly usageCount: number;
282
+ readonly lastUsedAt: string | null;
283
+ readonly status: string;
284
+ readonly isActive: boolean;
285
+ readonly isDefault: boolean;
738
286
  readonly publishedAt?: string | null;
739
287
  readonly publishedBy?: string | null;
740
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
288
+ readonly createdAt: string;
289
+ readonly updatedAt: string;
290
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
741
291
  export declare const listDashboard: ((input: {
292
+ readonly page?: string | null | undefined;
293
+ readonly limit?: string | null | undefined;
742
294
  readonly allowedChannels: string | readonly string[];
295
+ readonly category?: string | null | undefined;
743
296
  readonly channel?: string | null | undefined;
744
- readonly limit?: string | null | undefined;
745
- readonly search?: string | null | undefined;
746
- readonly page?: string | null | undefined;
747
297
  readonly status?: string | null | undefined;
748
- readonly category?: string | null | undefined;
298
+ readonly search?: string | null | undefined;
749
299
  readonly sortBy?: string | null | undefined;
750
300
  readonly sortOrder?: string | null | undefined;
751
301
  }) => import("effect/Effect").Effect<{
@@ -758,13 +308,13 @@ export declare const listDashboard: ((input: {
758
308
  readonly name: string;
759
309
  readonly slug: string;
760
310
  readonly channel: "email";
761
- readonly origin: "dashboard" | "tsx";
762
311
  readonly description: string | null;
763
- readonly category: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null;
764
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
765
- readonly version: number;
312
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
313
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
766
314
  readonly usageCount: number;
767
315
  readonly lastUsedAt: string | null;
316
+ readonly workspaceRevision: string | null;
317
+ readonly previewFixture: string | null;
768
318
  readonly createdAt: string;
769
319
  readonly updatedAt: string;
770
320
  }[];
@@ -779,13 +329,13 @@ export declare const listDashboard: ((input: {
779
329
  readonly name: string;
780
330
  readonly slug: string;
781
331
  readonly channel: "email";
782
- readonly origin: "dashboard" | "tsx";
783
332
  readonly description: string | null;
784
- readonly category: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null;
785
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
786
- readonly version: number;
333
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
334
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
787
335
  readonly usageCount: number;
788
336
  readonly lastUsedAt: string | null;
337
+ readonly workspaceRevision: string | null;
338
+ readonly previewFixture: string | null;
789
339
  readonly createdAt: string;
790
340
  readonly updatedAt: string;
791
341
  };
@@ -796,15 +346,15 @@ export declare const listDashboard: ((input: {
796
346
  readonly total: number;
797
347
  readonly totalPages: number;
798
348
  };
799
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>) & {
349
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>) & {
800
350
  readonly pages: (input: {
351
+ readonly page?: string | null | undefined;
352
+ readonly limit?: string | null | undefined;
801
353
  readonly allowedChannels: string | readonly string[];
354
+ readonly category?: string | null | undefined;
802
355
  readonly channel?: string | null | undefined;
803
- readonly limit?: string | null | undefined;
804
- readonly search?: string | null | undefined;
805
- readonly page?: string | null | undefined;
806
356
  readonly status?: string | null | undefined;
807
- readonly category?: string | null | undefined;
357
+ readonly search?: string | null | undefined;
808
358
  readonly sortBy?: string | null | undefined;
809
359
  readonly sortOrder?: string | null | undefined;
810
360
  }) => import("effect/Stream").Stream<{
@@ -817,13 +367,13 @@ export declare const listDashboard: ((input: {
817
367
  readonly name: string;
818
368
  readonly slug: string;
819
369
  readonly channel: "email";
820
- readonly origin: "dashboard" | "tsx";
821
370
  readonly description: string | null;
822
- readonly category: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null;
823
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
824
- readonly version: number;
371
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
372
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
825
373
  readonly usageCount: number;
826
374
  readonly lastUsedAt: string | null;
375
+ readonly workspaceRevision: string | null;
376
+ readonly previewFixture: string | null;
827
377
  readonly createdAt: string;
828
378
  readonly updatedAt: string;
829
379
  }[];
@@ -838,13 +388,13 @@ export declare const listDashboard: ((input: {
838
388
  readonly name: string;
839
389
  readonly slug: string;
840
390
  readonly channel: "email";
841
- readonly origin: "dashboard" | "tsx";
842
391
  readonly description: string | null;
843
- readonly category: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null;
844
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
845
- readonly version: number;
392
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
393
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
846
394
  readonly usageCount: number;
847
395
  readonly lastUsedAt: string | null;
396
+ readonly workspaceRevision: string | null;
397
+ readonly previewFixture: string | null;
848
398
  readonly createdAt: string;
849
399
  readonly updatedAt: string;
850
400
  };
@@ -855,15 +405,15 @@ export declare const listDashboard: ((input: {
855
405
  readonly total: number;
856
406
  readonly totalPages: number;
857
407
  };
858
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
408
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
859
409
  readonly items: (input: {
410
+ readonly page?: string | null | undefined;
411
+ readonly limit?: string | null | undefined;
860
412
  readonly allowedChannels: string | readonly string[];
413
+ readonly category?: string | null | undefined;
861
414
  readonly channel?: string | null | undefined;
862
- readonly limit?: string | null | undefined;
863
- readonly search?: string | null | undefined;
864
- readonly page?: string | null | undefined;
865
415
  readonly status?: string | null | undefined;
866
- readonly category?: string | null | undefined;
416
+ readonly search?: string | null | undefined;
867
417
  readonly sortBy?: string | null | undefined;
868
418
  readonly sortOrder?: string | null | undefined;
869
419
  }) => import("effect/Stream").Stream<{
@@ -875,13 +425,13 @@ export declare const listDashboard: ((input: {
875
425
  readonly name: string;
876
426
  readonly slug: string;
877
427
  readonly channel: "email";
878
- readonly origin: "dashboard" | "tsx";
879
428
  readonly description: string | null;
880
- readonly category: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null;
881
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
882
- readonly version: number;
429
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
430
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
883
431
  readonly usageCount: number;
884
432
  readonly lastUsedAt: string | null;
433
+ readonly workspaceRevision: string | null;
434
+ readonly previewFixture: string | null;
885
435
  readonly createdAt: string;
886
436
  readonly updatedAt: string;
887
437
  }[];
@@ -896,21 +446,21 @@ export declare const listDashboard: ((input: {
896
446
  readonly name: string;
897
447
  readonly slug: string;
898
448
  readonly channel: "email";
899
- readonly origin: "dashboard" | "tsx";
900
449
  readonly description: string | null;
901
- readonly category: "transactional" | "marketing" | "support" | "notification" | "verification" | "reminder" | "alert" | null;
902
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
903
- readonly version: number;
450
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
451
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
904
452
  readonly usageCount: number;
905
453
  readonly lastUsedAt: string | null;
454
+ readonly workspaceRevision: string | null;
455
+ readonly previewFixture: string | null;
906
456
  readonly createdAt: string;
907
457
  readonly updatedAt: string;
908
458
  };
909
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
459
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
910
460
  };
911
461
  export declare const listFamilies: ((input?: {
912
- readonly limit?: string | null | undefined;
913
462
  readonly page?: string | null | undefined;
463
+ readonly limit?: string | null | undefined;
914
464
  } | undefined) => import("effect/Effect").Effect<{
915
465
  readonly items: readonly {
916
466
  readonly id: string & import("effect/Brand").Brand<"TemplateFamilyId">;
@@ -921,25 +471,8 @@ export declare const listFamilies: ((input?: {
921
471
  readonly name: string;
922
472
  readonly slug: string;
923
473
  readonly channel: "email";
924
- readonly variableSchema: readonly {
925
- readonly name: string;
926
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
927
- readonly required: boolean;
928
- readonly validation?: {
929
- readonly enum?: readonly string[] | null;
930
- readonly pattern?: string | null;
931
- readonly min?: number | null;
932
- readonly max?: number | null;
933
- readonly minLength?: number | null;
934
- readonly maxLength?: number | null;
935
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
936
- } | null;
937
- readonly default?: import("./generated").JsonValue;
938
- readonly description?: string | null;
939
- }[] | null;
940
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
474
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
941
475
  readonly isActive: boolean;
942
- readonly version: number;
943
476
  readonly createdAt: string;
944
477
  readonly updatedAt: string;
945
478
  }[];
@@ -952,10 +485,10 @@ export declare const listFamilies: ((input?: {
952
485
  readonly total: number;
953
486
  readonly totalPages: number;
954
487
  };
955
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>) & {
488
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>) & {
956
489
  readonly pages: (input?: {
957
- readonly limit?: string | null | undefined;
958
490
  readonly page?: string | null | undefined;
491
+ readonly limit?: string | null | undefined;
959
492
  } | undefined) => import("effect/Stream").Stream<{
960
493
  readonly items: readonly {
961
494
  readonly id: string & import("effect/Brand").Brand<"TemplateFamilyId">;
@@ -966,25 +499,8 @@ export declare const listFamilies: ((input?: {
966
499
  readonly name: string;
967
500
  readonly slug: string;
968
501
  readonly channel: "email";
969
- readonly variableSchema: readonly {
970
- readonly name: string;
971
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
972
- readonly required: boolean;
973
- readonly validation?: {
974
- readonly enum?: readonly string[] | null;
975
- readonly pattern?: string | null;
976
- readonly min?: number | null;
977
- readonly max?: number | null;
978
- readonly minLength?: number | null;
979
- readonly maxLength?: number | null;
980
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
981
- } | null;
982
- readonly default?: import("./generated").JsonValue;
983
- readonly description?: string | null;
984
- }[] | null;
985
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
502
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
986
503
  readonly isActive: boolean;
987
- readonly version: number;
988
504
  readonly createdAt: string;
989
505
  readonly updatedAt: string;
990
506
  }[];
@@ -997,10 +513,10 @@ export declare const listFamilies: ((input?: {
997
513
  readonly total: number;
998
514
  readonly totalPages: number;
999
515
  };
1000
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
516
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1001
517
  readonly items: (input?: {
1002
- readonly limit?: string | null | undefined;
1003
518
  readonly page?: string | null | undefined;
519
+ readonly limit?: string | null | undefined;
1004
520
  } | undefined) => import("effect/Stream").Stream<{
1005
521
  readonly id: string & import("effect/Brand").Brand<"TemplateFamilyId">;
1006
522
  readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
@@ -1010,31 +526,14 @@ export declare const listFamilies: ((input?: {
1010
526
  readonly name: string;
1011
527
  readonly slug: string;
1012
528
  readonly channel: "email";
1013
- readonly variableSchema: readonly {
1014
- readonly name: string;
1015
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1016
- readonly required: boolean;
1017
- readonly validation?: {
1018
- readonly enum?: readonly string[] | null;
1019
- readonly pattern?: string | null;
1020
- readonly min?: number | null;
1021
- readonly max?: number | null;
1022
- readonly minLength?: number | null;
1023
- readonly maxLength?: number | null;
1024
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1025
- } | null;
1026
- readonly default?: import("./generated").JsonValue;
1027
- readonly description?: string | null;
1028
- }[] | null;
1029
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
529
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1030
530
  readonly isActive: boolean;
1031
- readonly version: number;
1032
531
  readonly createdAt: string;
1033
532
  readonly updatedAt: string;
1034
533
  }[];
1035
534
  readonly createdAt: string;
1036
535
  readonly updatedAt: string;
1037
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
536
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1038
537
  };
1039
538
  export declare const createFamily: (input: {
1040
539
  readonly name: string;
@@ -1047,31 +546,14 @@ export declare const createFamily: (input: {
1047
546
  readonly name: string;
1048
547
  readonly slug: string;
1049
548
  readonly channel: "email";
1050
- readonly variableSchema: readonly {
1051
- readonly name: string;
1052
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1053
- readonly required: boolean;
1054
- readonly validation?: {
1055
- readonly enum?: readonly string[] | null;
1056
- readonly pattern?: string | null;
1057
- readonly min?: number | null;
1058
- readonly max?: number | null;
1059
- readonly minLength?: number | null;
1060
- readonly maxLength?: number | null;
1061
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1062
- } | null;
1063
- readonly default?: import("./generated").JsonValue;
1064
- readonly description?: string | null;
1065
- }[] | null;
1066
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
549
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1067
550
  readonly isActive: boolean;
1068
- readonly version: number;
1069
551
  readonly createdAt: string;
1070
552
  readonly updatedAt: string;
1071
553
  }[];
1072
554
  readonly createdAt: string;
1073
555
  readonly updatedAt: string;
1074
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ValidationError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
556
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1075
557
  export declare const getFamily: (input: {
1076
558
  readonly familyId: string;
1077
559
  }) => import("effect/Effect").Effect<{
@@ -1083,36 +565,19 @@ export declare const getFamily: (input: {
1083
565
  readonly name: string;
1084
566
  readonly slug: string;
1085
567
  readonly channel: "email";
1086
- readonly variableSchema: readonly {
1087
- readonly name: string;
1088
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1089
- readonly required: boolean;
1090
- readonly validation?: {
1091
- readonly enum?: readonly string[] | null;
1092
- readonly pattern?: string | null;
1093
- readonly min?: number | null;
1094
- readonly max?: number | null;
1095
- readonly minLength?: number | null;
1096
- readonly maxLength?: number | null;
1097
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1098
- } | null;
1099
- readonly default?: import("./generated").JsonValue;
1100
- readonly description?: string | null;
1101
- }[] | null;
1102
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
568
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1103
569
  readonly isActive: boolean;
1104
- readonly version: number;
1105
570
  readonly createdAt: string;
1106
571
  readonly updatedAt: string;
1107
572
  }[];
1108
573
  readonly createdAt: string;
1109
574
  readonly updatedAt: string;
1110
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
575
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1111
576
  export declare const deleteFamily: (input: {
1112
577
  readonly familyId: string;
1113
578
  }) => import("effect/Effect").Effect<{
1114
579
  readonly success: boolean;
1115
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
580
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1116
581
  export declare const renameFamily: (input: {
1117
582
  readonly familyId: string;
1118
583
  readonly name: string;
@@ -1125,31 +590,14 @@ export declare const renameFamily: (input: {
1125
590
  readonly name: string;
1126
591
  readonly slug: string;
1127
592
  readonly channel: "email";
1128
- readonly variableSchema: readonly {
1129
- readonly name: string;
1130
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1131
- readonly required: boolean;
1132
- readonly validation?: {
1133
- readonly enum?: readonly string[] | null;
1134
- readonly pattern?: string | null;
1135
- readonly min?: number | null;
1136
- readonly max?: number | null;
1137
- readonly minLength?: number | null;
1138
- readonly maxLength?: number | null;
1139
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1140
- } | null;
1141
- readonly default?: import("./generated").JsonValue;
1142
- readonly description?: string | null;
1143
- }[] | null;
1144
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
593
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1145
594
  readonly isActive: boolean;
1146
- readonly version: number;
1147
595
  readonly createdAt: string;
1148
596
  readonly updatedAt: string;
1149
597
  }[];
1150
598
  readonly createdAt: string;
1151
599
  readonly updatedAt: string;
1152
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
600
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1153
601
  export declare const createFamilyFromTemplate: (input: {
1154
602
  readonly templateId: string;
1155
603
  readonly name: string;
@@ -1162,31 +610,14 @@ export declare const createFamilyFromTemplate: (input: {
1162
610
  readonly name: string;
1163
611
  readonly slug: string;
1164
612
  readonly channel: "email";
1165
- readonly variableSchema: readonly {
1166
- readonly name: string;
1167
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1168
- readonly required: boolean;
1169
- readonly validation?: {
1170
- readonly enum?: readonly string[] | null;
1171
- readonly pattern?: string | null;
1172
- readonly min?: number | null;
1173
- readonly max?: number | null;
1174
- readonly minLength?: number | null;
1175
- readonly maxLength?: number | null;
1176
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1177
- } | null;
1178
- readonly default?: import("./generated").JsonValue;
1179
- readonly description?: string | null;
1180
- }[] | null;
1181
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
613
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1182
614
  readonly isActive: boolean;
1183
- readonly version: number;
1184
615
  readonly createdAt: string;
1185
616
  readonly updatedAt: string;
1186
617
  }[];
1187
618
  readonly createdAt: string;
1188
619
  readonly updatedAt: string;
1189
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
620
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1190
621
  export declare const attachFamilyMember: (input: {
1191
622
  readonly familyId: string;
1192
623
  readonly templateId: string;
@@ -1199,31 +630,14 @@ export declare const attachFamilyMember: (input: {
1199
630
  readonly name: string;
1200
631
  readonly slug: string;
1201
632
  readonly channel: "email";
1202
- readonly variableSchema: readonly {
1203
- readonly name: string;
1204
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1205
- readonly required: boolean;
1206
- readonly validation?: {
1207
- readonly enum?: readonly string[] | null;
1208
- readonly pattern?: string | null;
1209
- readonly min?: number | null;
1210
- readonly max?: number | null;
1211
- readonly minLength?: number | null;
1212
- readonly maxLength?: number | null;
1213
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1214
- } | null;
1215
- readonly default?: import("./generated").JsonValue;
1216
- readonly description?: string | null;
1217
- }[] | null;
1218
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
633
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1219
634
  readonly isActive: boolean;
1220
- readonly version: number;
1221
635
  readonly createdAt: string;
1222
636
  readonly updatedAt: string;
1223
637
  }[];
1224
638
  readonly createdAt: string;
1225
639
  readonly updatedAt: string;
1226
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
640
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1227
641
  export declare const detachFamilyMember: (input: {
1228
642
  readonly familyId: string;
1229
643
  readonly templateId: string;
@@ -1236,71 +650,36 @@ export declare const detachFamilyMember: (input: {
1236
650
  readonly name: string;
1237
651
  readonly slug: string;
1238
652
  readonly channel: "email";
1239
- readonly variableSchema: readonly {
1240
- readonly name: string;
1241
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1242
- readonly required: boolean;
1243
- readonly validation?: {
1244
- readonly enum?: readonly string[] | null;
1245
- readonly pattern?: string | null;
1246
- readonly min?: number | null;
1247
- readonly max?: number | null;
1248
- readonly minLength?: number | null;
1249
- readonly maxLength?: number | null;
1250
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1251
- } | null;
1252
- readonly default?: import("./generated").JsonValue;
1253
- readonly description?: string | null;
1254
- }[] | null;
1255
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
1256
- readonly isActive: boolean;
1257
- readonly version: number;
1258
- readonly createdAt: string;
1259
- readonly updatedAt: string;
1260
- }[];
1261
- readonly createdAt: string;
1262
- readonly updatedAt: string;
1263
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1264
- export declare const addFamilyChannel: (input: {
1265
- readonly familyId: string;
1266
- readonly channel: string;
1267
- }) => import("effect/Effect").Effect<{
1268
- readonly id: string & import("effect/Brand").Brand<"TemplateFamilyId">;
1269
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1270
- readonly name: string;
1271
- readonly members: readonly {
1272
- readonly id: string & import("effect/Brand").Brand<"TemplateId">;
1273
- readonly name: string;
1274
- readonly slug: string;
1275
- readonly channel: "email";
1276
- readonly variableSchema: readonly {
1277
- readonly name: string;
1278
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1279
- readonly required: boolean;
1280
- readonly validation?: {
1281
- readonly enum?: readonly string[] | null;
1282
- readonly pattern?: string | null;
1283
- readonly min?: number | null;
1284
- readonly max?: number | null;
1285
- readonly minLength?: number | null;
1286
- readonly maxLength?: number | null;
1287
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1288
- } | null;
1289
- readonly default?: import("./generated").JsonValue;
1290
- readonly description?: string | null;
1291
- }[] | null;
1292
- readonly status: "pending" | "archived" | "rejected" | "draft" | "approved" | "published";
653
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1293
654
  readonly isActive: boolean;
1294
- readonly version: number;
1295
655
  readonly createdAt: string;
1296
656
  readonly updatedAt: string;
1297
657
  }[];
1298
658
  readonly createdAt: string;
1299
659
  readonly updatedAt: string;
1300
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
660
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1301
661
  export declare const getById: (input: {
1302
662
  readonly id: string;
1303
663
  }) => import("effect/Effect").Effect<{
664
+ readonly id: string & import("effect/Brand").Brand<"TemplateId">;
665
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
666
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
667
+ readonly entryPath: string;
668
+ readonly name: string;
669
+ readonly slug: string;
670
+ readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
671
+ readonly channel: "email";
672
+ readonly description: string | null;
673
+ readonly category: string | null;
674
+ readonly fromDefault?: {
675
+ readonly email: string;
676
+ readonly name?: string | null;
677
+ } | null;
678
+ readonly replyToDefault?: readonly string[] | null;
679
+ readonly trackingDefault?: {
680
+ readonly opens?: boolean | null;
681
+ readonly clicks?: boolean | null;
682
+ } | null;
1304
683
  readonly email: {
1305
684
  readonly subject: string;
1306
685
  readonly preheader: string | null;
@@ -1308,294 +687,77 @@ export declare const getById: (input: {
1308
687
  readonly [x: string]: string;
1309
688
  } | null;
1310
689
  } | null;
1311
- readonly name: string;
1312
- readonly createdAt: string;
1313
- readonly updatedAt: string;
1314
- readonly usageCount: number;
1315
- readonly lastUsedAt: string | null;
1316
- readonly channel: "email";
1317
- readonly id: string & import("effect/Brand").Brand<"TemplateId">;
1318
- readonly origin: "dashboard" | "tsx";
1319
- readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
1320
- readonly description: string | null;
1321
- readonly status: string;
1322
- readonly isActive: boolean;
1323
- readonly category: string | null;
1324
- readonly slug: string;
1325
- readonly version: number;
1326
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1327
- readonly isDefault: boolean;
1328
- readonly variableSchema: readonly {
1329
- readonly name: string;
1330
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1331
- readonly required: boolean;
1332
- readonly validation?: {
1333
- readonly enum?: readonly string[] | null;
1334
- readonly pattern?: string | null;
1335
- readonly min?: number | null;
1336
- readonly max?: number | null;
1337
- readonly minLength?: number | null;
1338
- readonly maxLength?: number | null;
1339
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1340
- } | null;
1341
- readonly default?: import("./generated").JsonValue;
1342
- readonly description?: string | null;
1343
- }[] | null;
690
+ readonly publicationId: (string & import("effect/Brand").Brand<"TemplatePublicationId">) | null;
691
+ readonly inputContractId: (string & import("effect/Brand").Brand<"TemplateInputContractId">) | null;
692
+ readonly inputSchema: {
693
+ readonly [x: string]: import("./generated").JsonValue;
694
+ } | null;
1344
695
  readonly compliance: {
1345
696
  readonly metaStatus?: string | null;
1346
697
  readonly submittedAt?: string | null;
1347
698
  readonly qualityScore?: string | null;
1348
699
  readonly rejectedReason?: string | null;
1349
700
  readonly lastSyncedAt?: string | null;
1350
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
701
+ readonly approvalStatus?: "approved" | "archived" | "draft" | "pending" | "published" | "rejected" | null;
1351
702
  readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
1352
703
  readonly approvedAt?: string | null;
1353
704
  readonly approvalNotes?: string | null;
1354
705
  readonly regulatoryRequirements?: readonly {
1355
- readonly status: "pending" | "compliant" | "non_compliant";
1356
706
  readonly region: string;
1357
707
  readonly requirement: string;
708
+ readonly status: "compliant" | "non_compliant" | "pending";
1358
709
  readonly notes?: string | null;
1359
710
  }[] | null;
1360
711
  } | null;
1361
- readonly designOverrides: {
1362
- readonly footer?: {
1363
- readonly address?: {
1364
- readonly country: string;
1365
- readonly city: string;
1366
- readonly street1: string;
1367
- readonly region: string;
1368
- readonly postalCode: string;
1369
- readonly street2?: string | null;
1370
- } | null;
1371
- readonly companyName?: string | null;
1372
- readonly socialLinks?: readonly {
1373
- readonly label: string;
1374
- readonly url: string;
1375
- }[] | null;
1376
- readonly customHtml?: string | null;
1377
- } | null;
1378
- readonly theme?: {
1379
- readonly text?: {
1380
- readonly [x: string]: {
1381
- readonly sizePx: number;
1382
- readonly lineHeightPx: number;
1383
- };
1384
- } | null;
1385
- readonly tracking?: {
1386
- readonly [x: string]: number;
1387
- } | null;
1388
- readonly colors?: {
1389
- readonly [x: string]: string;
1390
- } | null;
1391
- readonly colorsDark?: {
1392
- readonly [x: string]: string;
1393
- } | null;
1394
- readonly radiusPx?: {
1395
- readonly [x: string]: number;
1396
- } | null;
1397
- readonly fontFamilies?: {
1398
- readonly [x: string]: {
1399
- readonly family: string;
1400
- readonly source: "system" | "google" | "custom";
1401
- readonly fallback: string;
1402
- readonly faces?: readonly {
1403
- readonly style: "normal" | "italic";
1404
- readonly weight: number;
1405
- readonly src: string;
1406
- readonly unicodeRange?: string | null;
1407
- }[] | null;
1408
- };
1409
- } | null;
1410
- readonly fontWeights?: {
1411
- readonly [x: string]: number;
1412
- } | null;
1413
- readonly leading?: {
1414
- readonly [x: string]: number;
1415
- } | null;
1416
- readonly spacingPx?: number | null;
1417
- readonly containerPx?: {
1418
- readonly [x: string]: number;
1419
- } | null;
1420
- } | null;
1421
- readonly assets?: {
1422
- readonly logoUrl?: string | null;
1423
- readonly logoDarkUrl?: string | null;
1424
- readonly iconUrl?: string | null;
1425
- } | null;
1426
- } | null;
1427
- readonly replyToDefault?: readonly string[] | null;
1428
- readonly fromDefault?: {
1429
- readonly email: string;
1430
- readonly name?: string | null;
1431
- } | null;
1432
- readonly trackingDefault?: {
1433
- readonly opens?: boolean | null;
1434
- readonly clicks?: boolean | null;
1435
- } | null;
712
+ readonly usageCount: number;
713
+ readonly lastUsedAt: string | null;
714
+ readonly status: string;
715
+ readonly isActive: boolean;
716
+ readonly isDefault: boolean;
1436
717
  readonly publishedAt?: string | null;
1437
718
  readonly publishedBy?: string | null;
1438
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
719
+ readonly createdAt: string;
720
+ readonly updatedAt: string;
721
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1439
722
  export declare const remove: (input: {
1440
723
  readonly id: string;
1441
724
  }) => import("effect/Effect").Effect<{
1442
725
  readonly success: boolean;
1443
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
726
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1444
727
  export declare const update: (input: {
1445
728
  readonly id: string;
1446
729
  readonly data: {
1447
730
  readonly name?: string | null | undefined;
1448
- readonly origin?: string | null | undefined;
731
+ readonly slug?: string | null | undefined;
1449
732
  readonly description?: string | null | undefined;
1450
- readonly isActive?: boolean | null | undefined;
1451
733
  readonly category?: string | null | undefined;
1452
- readonly slug?: string | null | undefined;
1453
- readonly version?: number | null | undefined;
1454
- readonly isDefault?: boolean | null | undefined;
1455
- readonly variableSchema?: readonly {
1456
- readonly name: string;
1457
- readonly type: string;
1458
- readonly required: boolean;
1459
- readonly validation?: {
1460
- readonly enum?: readonly string[] | null | undefined;
1461
- readonly pattern?: string | null | undefined;
1462
- readonly min?: number | null | undefined;
1463
- readonly max?: number | null | undefined;
1464
- readonly minLength?: number | null | undefined;
1465
- readonly maxLength?: number | null | undefined;
1466
- readonly format?: string | null | undefined;
1467
- } | null | undefined;
1468
- readonly default?: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | {
1469
- readonly [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any | null | undefined;
1470
- } | null)[] | {
1471
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1472
- } | null)[] | {
1473
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1474
- } | null)[] | {
1475
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1476
- } | null)[] | {
1477
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1478
- } | null)[] | {
1479
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1480
- } | null)[] | {
1481
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1482
- } | null)[] | {
1483
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1484
- } | null)[] | {
1485
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1486
- } | null)[] | {
1487
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1488
- } | null)[] | {
1489
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1490
- } | null | undefined;
1491
- readonly description?: string | null | undefined;
1492
- }[] | null | undefined;
1493
- readonly replyToDefault?: readonly string[] | null | undefined;
1494
734
  readonly fromDefault?: {
1495
735
  readonly email: string;
1496
736
  readonly name?: string | null | undefined;
1497
737
  } | null | undefined;
1498
- readonly compliance?: {
1499
- readonly metaStatus?: string | null | undefined;
1500
- readonly submittedAt?: string | null | undefined;
1501
- readonly qualityScore?: string | null | undefined;
1502
- readonly rejectedReason?: string | null | undefined;
1503
- readonly lastSyncedAt?: string | null | undefined;
1504
- readonly approvalStatus?: string | null | undefined;
1505
- readonly approvedBy?: string | null | undefined;
1506
- readonly approvedAt?: string | null | undefined;
1507
- readonly approvalNotes?: string | null | undefined;
1508
- readonly regulatoryRequirements?: readonly {
1509
- readonly status: string;
1510
- readonly region: string;
1511
- readonly requirement: string;
1512
- readonly notes?: string | null | undefined;
1513
- }[] | null | undefined;
1514
- } | null | undefined;
1515
- readonly designOverrides?: {
1516
- readonly footer?: {
1517
- readonly address?: {
1518
- readonly country: string;
1519
- readonly city: string;
1520
- readonly street1: string;
1521
- readonly region: string;
1522
- readonly postalCode: string;
1523
- readonly street2?: string | null | undefined;
1524
- } | null | undefined;
1525
- readonly companyName?: string | null | undefined;
1526
- readonly socialLinks?: readonly {
1527
- readonly label: string;
1528
- readonly url: string;
1529
- }[] | null | undefined;
1530
- readonly customHtml?: string | null | undefined;
1531
- } | null | undefined;
1532
- readonly theme?: {
1533
- readonly text?: {
1534
- readonly [x: string]: {
1535
- readonly sizePx: number;
1536
- readonly lineHeightPx: number;
1537
- } | undefined;
1538
- } | null | undefined;
1539
- readonly tracking?: {
1540
- readonly [x: string]: number | undefined;
1541
- } | null | undefined;
1542
- readonly colors?: {
1543
- readonly [x: string]: string | undefined;
1544
- } | null | undefined;
1545
- readonly colorsDark?: {
1546
- readonly [x: string]: string | undefined;
1547
- } | null | undefined;
1548
- readonly radiusPx?: {
1549
- readonly [x: string]: number | undefined;
1550
- } | null | undefined;
1551
- readonly fontFamilies?: {
1552
- readonly [x: string]: {
1553
- readonly family: string;
1554
- readonly source: string;
1555
- readonly fallback: string;
1556
- readonly faces?: readonly {
1557
- readonly style: string;
1558
- readonly weight: number;
1559
- readonly src: string;
1560
- readonly unicodeRange?: string | null | undefined;
1561
- }[] | null | undefined;
1562
- } | undefined;
1563
- } | null | undefined;
1564
- readonly fontWeights?: {
1565
- readonly [x: string]: number | undefined;
1566
- } | null | undefined;
1567
- readonly leading?: {
1568
- readonly [x: string]: number | undefined;
1569
- } | null | undefined;
1570
- readonly spacingPx?: number | null | undefined;
1571
- readonly containerPx?: {
1572
- readonly [x: string]: number | undefined;
1573
- } | null | undefined;
1574
- } | null | undefined;
1575
- readonly assets?: {
1576
- readonly logoUrl?: string | null | undefined;
1577
- readonly logoDarkUrl?: string | null | undefined;
1578
- readonly iconUrl?: string | null | undefined;
1579
- } | null | undefined;
1580
- } | null | undefined;
1581
- readonly performance?: {
1582
- readonly usageCount?: number | null | undefined;
1583
- readonly lastUsedAt?: string | null | undefined;
1584
- readonly deliveryRate?: number | null | undefined;
1585
- readonly openRate?: number | null | undefined;
1586
- readonly clickRate?: number | null | undefined;
1587
- readonly responseRate?: number | null | undefined;
1588
- readonly conversionRate?: number | null | undefined;
1589
- readonly averageSatisfaction?: number | null | undefined;
1590
- readonly totalSent?: number | null | undefined;
1591
- readonly totalDelivered?: number | null | undefined;
1592
- readonly totalOpened?: number | null | undefined;
1593
- readonly totalClicked?: number | null | undefined;
1594
- readonly totalResponses?: number | null | undefined;
1595
- readonly totalConversions?: number | null | undefined;
1596
- } | null | undefined;
738
+ readonly replyToDefault?: readonly string[] | null | undefined;
739
+ readonly isActive?: boolean | null | undefined;
1597
740
  };
1598
741
  }) => import("effect/Effect").Effect<{
742
+ readonly id: string & import("effect/Brand").Brand<"TemplateId">;
743
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
744
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
745
+ readonly entryPath: string;
746
+ readonly name: string;
747
+ readonly slug: string;
748
+ readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
749
+ readonly channel: "email";
750
+ readonly description: string | null;
751
+ readonly category: string | null;
752
+ readonly fromDefault?: {
753
+ readonly email: string;
754
+ readonly name?: string | null;
755
+ } | null;
756
+ readonly replyToDefault?: readonly string[] | null;
757
+ readonly trackingDefault?: {
758
+ readonly opens?: boolean | null;
759
+ readonly clicks?: boolean | null;
760
+ } | null;
1599
761
  readonly email: {
1600
762
  readonly subject: string;
1601
763
  readonly preheader: string | null;
@@ -1603,304 +765,392 @@ export declare const update: (input: {
1603
765
  readonly [x: string]: string;
1604
766
  } | null;
1605
767
  } | null;
1606
- readonly name: string;
1607
- readonly createdAt: string;
1608
- readonly updatedAt: string;
1609
- readonly usageCount: number;
1610
- readonly lastUsedAt: string | null;
1611
- readonly channel: "email";
1612
- readonly id: string & import("effect/Brand").Brand<"TemplateId">;
1613
- readonly origin: "dashboard" | "tsx";
1614
- readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
1615
- readonly description: string | null;
1616
- readonly status: string;
1617
- readonly isActive: boolean;
1618
- readonly category: string | null;
1619
- readonly slug: string;
1620
- readonly version: number;
1621
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1622
- readonly isDefault: boolean;
1623
- readonly variableSchema: readonly {
1624
- readonly name: string;
1625
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1626
- readonly required: boolean;
1627
- readonly validation?: {
1628
- readonly enum?: readonly string[] | null;
1629
- readonly pattern?: string | null;
1630
- readonly min?: number | null;
1631
- readonly max?: number | null;
1632
- readonly minLength?: number | null;
1633
- readonly maxLength?: number | null;
1634
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1635
- } | null;
1636
- readonly default?: import("./generated").JsonValue;
1637
- readonly description?: string | null;
1638
- }[] | null;
768
+ readonly publicationId: (string & import("effect/Brand").Brand<"TemplatePublicationId">) | null;
769
+ readonly inputContractId: (string & import("effect/Brand").Brand<"TemplateInputContractId">) | null;
770
+ readonly inputSchema: {
771
+ readonly [x: string]: import("./generated").JsonValue;
772
+ } | null;
1639
773
  readonly compliance: {
1640
774
  readonly metaStatus?: string | null;
1641
775
  readonly submittedAt?: string | null;
1642
776
  readonly qualityScore?: string | null;
1643
777
  readonly rejectedReason?: string | null;
1644
778
  readonly lastSyncedAt?: string | null;
1645
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
779
+ readonly approvalStatus?: "approved" | "archived" | "draft" | "pending" | "published" | "rejected" | null;
1646
780
  readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
1647
781
  readonly approvedAt?: string | null;
1648
782
  readonly approvalNotes?: string | null;
1649
783
  readonly regulatoryRequirements?: readonly {
1650
- readonly status: "pending" | "compliant" | "non_compliant";
1651
784
  readonly region: string;
1652
785
  readonly requirement: string;
786
+ readonly status: "compliant" | "non_compliant" | "pending";
1653
787
  readonly notes?: string | null;
1654
788
  }[] | null;
1655
789
  } | null;
1656
- readonly designOverrides: {
1657
- readonly footer?: {
1658
- readonly address?: {
1659
- readonly country: string;
1660
- readonly city: string;
1661
- readonly street1: string;
1662
- readonly region: string;
1663
- readonly postalCode: string;
1664
- readonly street2?: string | null;
1665
- } | null;
1666
- readonly companyName?: string | null;
1667
- readonly socialLinks?: readonly {
1668
- readonly label: string;
1669
- readonly url: string;
1670
- }[] | null;
1671
- readonly customHtml?: string | null;
1672
- } | null;
1673
- readonly theme?: {
1674
- readonly text?: {
1675
- readonly [x: string]: {
1676
- readonly sizePx: number;
1677
- readonly lineHeightPx: number;
1678
- };
1679
- } | null;
1680
- readonly tracking?: {
1681
- readonly [x: string]: number;
1682
- } | null;
1683
- readonly colors?: {
1684
- readonly [x: string]: string;
1685
- } | null;
1686
- readonly colorsDark?: {
1687
- readonly [x: string]: string;
1688
- } | null;
1689
- readonly radiusPx?: {
1690
- readonly [x: string]: number;
1691
- } | null;
1692
- readonly fontFamilies?: {
1693
- readonly [x: string]: {
1694
- readonly family: string;
1695
- readonly source: "system" | "google" | "custom";
1696
- readonly fallback: string;
1697
- readonly faces?: readonly {
1698
- readonly style: "normal" | "italic";
1699
- readonly weight: number;
1700
- readonly src: string;
1701
- readonly unicodeRange?: string | null;
1702
- }[] | null;
1703
- };
1704
- } | null;
1705
- readonly fontWeights?: {
1706
- readonly [x: string]: number;
1707
- } | null;
1708
- readonly leading?: {
1709
- readonly [x: string]: number;
1710
- } | null;
1711
- readonly spacingPx?: number | null;
1712
- readonly containerPx?: {
1713
- readonly [x: string]: number;
1714
- } | null;
1715
- } | null;
1716
- readonly assets?: {
1717
- readonly logoUrl?: string | null;
1718
- readonly logoDarkUrl?: string | null;
1719
- readonly iconUrl?: string | null;
1720
- } | null;
1721
- } | null;
1722
- readonly replyToDefault?: readonly string[] | null;
1723
- readonly fromDefault?: {
1724
- readonly email: string;
1725
- readonly name?: string | null;
1726
- } | null;
1727
- readonly trackingDefault?: {
1728
- readonly opens?: boolean | null;
1729
- readonly clicks?: boolean | null;
1730
- } | null;
1731
- readonly publishedAt?: string | null;
1732
- readonly publishedBy?: string | null;
1733
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1734
- export declare const approve: (input: {
1735
- readonly id: string;
1736
- readonly data: {
1737
- readonly notes?: string | null | undefined;
1738
- };
1739
- }) => import("effect/Effect").Effect<{
1740
- readonly email: {
1741
- readonly subject: string;
1742
- readonly preheader: string | null;
1743
- readonly headers: {
1744
- readonly [x: string]: string;
1745
- } | null;
1746
- } | null;
1747
- readonly name: string;
1748
- readonly createdAt: string;
1749
- readonly updatedAt: string;
1750
790
  readonly usageCount: number;
1751
791
  readonly lastUsedAt: string | null;
1752
- readonly channel: "email";
1753
- readonly id: string & import("effect/Brand").Brand<"TemplateId">;
1754
- readonly origin: "dashboard" | "tsx";
1755
- readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
1756
- readonly description: string | null;
1757
792
  readonly status: string;
1758
793
  readonly isActive: boolean;
1759
- readonly category: string | null;
1760
- readonly slug: string;
1761
- readonly version: number;
1762
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1763
794
  readonly isDefault: boolean;
1764
- readonly variableSchema: readonly {
1765
- readonly name: string;
1766
- readonly type: "string" | "number" | "boolean" | "object" | "date" | "array";
1767
- readonly required: boolean;
1768
- readonly validation?: {
1769
- readonly enum?: readonly string[] | null;
1770
- readonly pattern?: string | null;
1771
- readonly min?: number | null;
1772
- readonly max?: number | null;
1773
- readonly minLength?: number | null;
1774
- readonly maxLength?: number | null;
1775
- readonly format?: "url" | "email" | "date" | "date-time" | "uuid" | null;
1776
- } | null;
1777
- readonly default?: import("./generated").JsonValue;
1778
- readonly description?: string | null;
1779
- }[] | null;
1780
- readonly compliance: {
1781
- readonly metaStatus?: string | null;
1782
- readonly submittedAt?: string | null;
1783
- readonly qualityScore?: string | null;
1784
- readonly rejectedReason?: string | null;
1785
- readonly lastSyncedAt?: string | null;
1786
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
1787
- readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
1788
- readonly approvedAt?: string | null;
1789
- readonly approvalNotes?: string | null;
1790
- readonly regulatoryRequirements?: readonly {
1791
- readonly status: "pending" | "compliant" | "non_compliant";
1792
- readonly region: string;
1793
- readonly requirement: string;
1794
- readonly notes?: string | null;
1795
- }[] | null;
1796
- } | null;
1797
- readonly designOverrides: {
1798
- readonly footer?: {
1799
- readonly address?: {
1800
- readonly country: string;
1801
- readonly city: string;
1802
- readonly street1: string;
1803
- readonly region: string;
1804
- readonly postalCode: string;
1805
- readonly street2?: string | null;
1806
- } | null;
1807
- readonly companyName?: string | null;
1808
- readonly socialLinks?: readonly {
1809
- readonly label: string;
1810
- readonly url: string;
1811
- }[] | null;
1812
- readonly customHtml?: string | null;
1813
- } | null;
1814
- readonly theme?: {
1815
- readonly text?: {
1816
- readonly [x: string]: {
1817
- readonly sizePx: number;
1818
- readonly lineHeightPx: number;
1819
- };
1820
- } | null;
1821
- readonly tracking?: {
1822
- readonly [x: string]: number;
1823
- } | null;
1824
- readonly colors?: {
1825
- readonly [x: string]: string;
1826
- } | null;
1827
- readonly colorsDark?: {
1828
- readonly [x: string]: string;
1829
- } | null;
1830
- readonly radiusPx?: {
1831
- readonly [x: string]: number;
1832
- } | null;
1833
- readonly fontFamilies?: {
1834
- readonly [x: string]: {
1835
- readonly family: string;
1836
- readonly source: "system" | "google" | "custom";
1837
- readonly fallback: string;
1838
- readonly faces?: readonly {
1839
- readonly style: "normal" | "italic";
1840
- readonly weight: number;
1841
- readonly src: string;
1842
- readonly unicodeRange?: string | null;
1843
- }[] | null;
1844
- };
1845
- } | null;
1846
- readonly fontWeights?: {
1847
- readonly [x: string]: number;
1848
- } | null;
1849
- readonly leading?: {
1850
- readonly [x: string]: number;
1851
- } | null;
1852
- readonly spacingPx?: number | null;
1853
- readonly containerPx?: {
1854
- readonly [x: string]: number;
1855
- } | null;
1856
- } | null;
1857
- readonly assets?: {
1858
- readonly logoUrl?: string | null;
1859
- readonly logoDarkUrl?: string | null;
1860
- readonly iconUrl?: string | null;
1861
- } | null;
1862
- } | null;
1863
- readonly replyToDefault?: readonly string[] | null;
1864
- readonly fromDefault?: {
1865
- readonly email: string;
1866
- readonly name?: string | null;
1867
- } | null;
1868
- readonly trackingDefault?: {
1869
- readonly opens?: boolean | null;
1870
- readonly clicks?: boolean | null;
1871
- } | null;
1872
795
  readonly publishedAt?: string | null;
1873
796
  readonly publishedBy?: string | null;
1874
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1875
- export declare const openDocument: (input: {
1876
- readonly templateId: string;
1877
- }) => import("effect/Effect").Effect<{
1878
- readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1879
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1880
- readonly channel: "email";
1881
- readonly source: string;
1882
- readonly revision: string;
1883
- readonly sourceDigest: string;
1884
797
  readonly createdAt: string;
1885
798
  readonly updatedAt: string;
1886
- readonly createdBy: {
1887
- readonly userId: string & import("effect/Brand").Brand<"UserId">;
1888
- readonly via: "agent" | "api" | "mcp";
799
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
800
+ export declare const openWorkspace: (input: {
801
+ readonly id: string;
802
+ }) => import("effect/Effect").Effect<{
803
+ readonly workspace: {
804
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
805
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
806
+ readonly ownerEpoch: number;
807
+ readonly repositoryName: string;
808
+ readonly defaultBranch: string;
809
+ readonly baseCommit: string;
810
+ readonly remoteHead: string;
811
+ readonly pendingRemoteHead: string | null;
812
+ readonly revision: string;
813
+ readonly overlay: {
814
+ readonly [x: string]: string | null;
815
+ };
816
+ readonly assetChanges: readonly {
817
+ readonly path: string;
818
+ readonly status: "added" | "deleted" | "modified";
819
+ }[];
820
+ readonly conflicts: readonly {
821
+ readonly path: string;
822
+ readonly base: string | null;
823
+ readonly draft: string | null;
824
+ readonly main: string | null;
825
+ }[];
826
+ readonly provenance: {
827
+ readonly references: readonly {
828
+ readonly kind: string;
829
+ readonly digest: string;
830
+ readonly locator?: string;
831
+ }[];
832
+ };
833
+ readonly mounts: readonly ({
834
+ readonly kind: "project";
835
+ readonly root: "/project";
836
+ readonly access: "read-write";
837
+ } | {
838
+ readonly root: string;
839
+ readonly digest: string;
840
+ readonly fileCount: number;
841
+ readonly byteSize: number;
842
+ readonly kind: "started-from";
843
+ readonly access: "read-only";
844
+ readonly templateId: string;
845
+ readonly slug: string;
846
+ readonly name: string;
847
+ } | {
848
+ readonly root: string;
849
+ readonly digest: string;
850
+ readonly fileCount: number;
851
+ readonly byteSize: number;
852
+ readonly kind: "resource";
853
+ readonly access: "read-only";
854
+ readonly resourceId: string;
855
+ readonly name: string;
856
+ } | {
857
+ readonly root: string;
858
+ readonly digest: string;
859
+ readonly fileCount: number;
860
+ readonly byteSize: number;
861
+ readonly kind: "library-template";
862
+ readonly access: "read-only";
863
+ readonly templateId: string;
864
+ readonly slug: string;
865
+ readonly name: string;
866
+ })[];
867
+ readonly libraryManifestDigest: string;
868
+ readonly createdAt: string;
869
+ readonly updatedAt: string;
870
+ readonly createdBy: {
871
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
872
+ readonly via: "agent" | "api" | "mcp";
873
+ };
874
+ readonly updatedBy: {
875
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
876
+ readonly via: "agent" | "api" | "mcp";
877
+ };
1889
878
  };
1890
- readonly updatedBy: {
1891
- readonly userId: string & import("effect/Brand").Brand<"UserId">;
1892
- readonly via: "agent" | "api" | "mcp";
879
+ readonly files: {
880
+ readonly [x: string]: string;
1893
881
  };
1894
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1895
- export declare const getDocument: (input: {
1896
- readonly templateId: string;
882
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
883
+ export declare const getGitRepository: (input: {
884
+ readonly id: string;
1897
885
  }) => import("effect/Effect").Effect<{
1898
- readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1899
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1900
- readonly channel: "email";
1901
- readonly source: string;
886
+ readonly remote: string;
887
+ readonly defaultBranch: string;
888
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
889
+ export declare const issueGitCredential: (input: {
890
+ readonly id: string;
891
+ readonly scope: string;
892
+ }) => import("effect/Effect").Effect<{
893
+ readonly remote: string;
894
+ readonly username: "x-access-token";
895
+ readonly password: string;
896
+ readonly expiresAt: string;
897
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
898
+ export declare const patchWorkspace: (input: {
899
+ readonly id: string;
900
+ readonly expectedRevision: string;
901
+ readonly patches: readonly {
902
+ readonly path: string;
903
+ readonly content: string | null;
904
+ }[];
905
+ readonly idempotencyKey: string;
906
+ }) => import("effect/Effect").Effect<{
907
+ readonly workspace: {
908
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
909
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
910
+ readonly ownerEpoch: number;
911
+ readonly repositoryName: string;
912
+ readonly defaultBranch: string;
913
+ readonly baseCommit: string;
914
+ readonly remoteHead: string;
915
+ readonly pendingRemoteHead: string | null;
916
+ readonly revision: string;
917
+ readonly overlay: {
918
+ readonly [x: string]: string | null;
919
+ };
920
+ readonly assetChanges: readonly {
921
+ readonly path: string;
922
+ readonly status: "added" | "deleted" | "modified";
923
+ }[];
924
+ readonly conflicts: readonly {
925
+ readonly path: string;
926
+ readonly base: string | null;
927
+ readonly draft: string | null;
928
+ readonly main: string | null;
929
+ }[];
930
+ readonly provenance: {
931
+ readonly references: readonly {
932
+ readonly kind: string;
933
+ readonly digest: string;
934
+ readonly locator?: string;
935
+ }[];
936
+ };
937
+ readonly mounts: readonly ({
938
+ readonly kind: "project";
939
+ readonly root: "/project";
940
+ readonly access: "read-write";
941
+ } | {
942
+ readonly root: string;
943
+ readonly digest: string;
944
+ readonly fileCount: number;
945
+ readonly byteSize: number;
946
+ readonly kind: "started-from";
947
+ readonly access: "read-only";
948
+ readonly templateId: string;
949
+ readonly slug: string;
950
+ readonly name: string;
951
+ } | {
952
+ readonly root: string;
953
+ readonly digest: string;
954
+ readonly fileCount: number;
955
+ readonly byteSize: number;
956
+ readonly kind: "resource";
957
+ readonly access: "read-only";
958
+ readonly resourceId: string;
959
+ readonly name: string;
960
+ } | {
961
+ readonly root: string;
962
+ readonly digest: string;
963
+ readonly fileCount: number;
964
+ readonly byteSize: number;
965
+ readonly kind: "library-template";
966
+ readonly access: "read-only";
967
+ readonly templateId: string;
968
+ readonly slug: string;
969
+ readonly name: string;
970
+ })[];
971
+ readonly libraryManifestDigest: string;
972
+ readonly createdAt: string;
973
+ readonly updatedAt: string;
974
+ readonly createdBy: {
975
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
976
+ readonly via: "agent" | "api" | "mcp";
977
+ };
978
+ readonly updatedBy: {
979
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
980
+ readonly via: "agent" | "api" | "mcp";
981
+ };
982
+ };
983
+ readonly files: {
984
+ readonly [x: string]: string;
985
+ };
986
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
987
+ export declare const resolveWorkspaceConflict: (input: {
988
+ readonly id: string;
989
+ readonly expectedRevision: string;
990
+ readonly path: string;
991
+ readonly resolution: string | {
992
+ readonly content: string | null;
993
+ };
994
+ readonly idempotencyKey: string;
995
+ }) => import("effect/Effect").Effect<{
996
+ readonly workspace: {
997
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
998
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
999
+ readonly ownerEpoch: number;
1000
+ readonly repositoryName: string;
1001
+ readonly defaultBranch: string;
1002
+ readonly baseCommit: string;
1003
+ readonly remoteHead: string;
1004
+ readonly pendingRemoteHead: string | null;
1005
+ readonly revision: string;
1006
+ readonly overlay: {
1007
+ readonly [x: string]: string | null;
1008
+ };
1009
+ readonly assetChanges: readonly {
1010
+ readonly path: string;
1011
+ readonly status: "added" | "deleted" | "modified";
1012
+ }[];
1013
+ readonly conflicts: readonly {
1014
+ readonly path: string;
1015
+ readonly base: string | null;
1016
+ readonly draft: string | null;
1017
+ readonly main: string | null;
1018
+ }[];
1019
+ readonly provenance: {
1020
+ readonly references: readonly {
1021
+ readonly kind: string;
1022
+ readonly digest: string;
1023
+ readonly locator?: string;
1024
+ }[];
1025
+ };
1026
+ readonly mounts: readonly ({
1027
+ readonly kind: "project";
1028
+ readonly root: "/project";
1029
+ readonly access: "read-write";
1030
+ } | {
1031
+ readonly root: string;
1032
+ readonly digest: string;
1033
+ readonly fileCount: number;
1034
+ readonly byteSize: number;
1035
+ readonly kind: "started-from";
1036
+ readonly access: "read-only";
1037
+ readonly templateId: string;
1038
+ readonly slug: string;
1039
+ readonly name: string;
1040
+ } | {
1041
+ readonly root: string;
1042
+ readonly digest: string;
1043
+ readonly fileCount: number;
1044
+ readonly byteSize: number;
1045
+ readonly kind: "resource";
1046
+ readonly access: "read-only";
1047
+ readonly resourceId: string;
1048
+ readonly name: string;
1049
+ } | {
1050
+ readonly root: string;
1051
+ readonly digest: string;
1052
+ readonly fileCount: number;
1053
+ readonly byteSize: number;
1054
+ readonly kind: "library-template";
1055
+ readonly access: "read-only";
1056
+ readonly templateId: string;
1057
+ readonly slug: string;
1058
+ readonly name: string;
1059
+ })[];
1060
+ readonly libraryManifestDigest: string;
1061
+ readonly createdAt: string;
1062
+ readonly updatedAt: string;
1063
+ readonly createdBy: {
1064
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1065
+ readonly via: "agent" | "api" | "mcp";
1066
+ };
1067
+ readonly updatedBy: {
1068
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1069
+ readonly via: "agent" | "api" | "mcp";
1070
+ };
1071
+ };
1072
+ readonly files: {
1073
+ readonly [x: string]: string;
1074
+ };
1075
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1076
+ export declare const attachWorkspaceResource: (input: {
1077
+ readonly id: string;
1078
+ readonly expectedRevision: string;
1079
+ readonly resource: {
1080
+ readonly resourceId: string;
1081
+ readonly name: string;
1082
+ readonly files: readonly {
1083
+ readonly path: string;
1084
+ readonly mediaType: string;
1085
+ readonly contentBase64: string;
1086
+ }[];
1087
+ };
1088
+ readonly idempotencyKey: string;
1089
+ }) => import("effect/Effect").Effect<{
1090
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1091
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
1092
+ readonly ownerEpoch: number;
1093
+ readonly repositoryName: string;
1094
+ readonly defaultBranch: string;
1095
+ readonly baseCommit: string;
1096
+ readonly remoteHead: string;
1097
+ readonly pendingRemoteHead: string | null;
1902
1098
  readonly revision: string;
1903
- readonly sourceDigest: string;
1099
+ readonly overlay: {
1100
+ readonly [x: string]: string | null;
1101
+ };
1102
+ readonly assetChanges: readonly {
1103
+ readonly path: string;
1104
+ readonly status: "added" | "deleted" | "modified";
1105
+ }[];
1106
+ readonly conflicts: readonly {
1107
+ readonly path: string;
1108
+ readonly base: string | null;
1109
+ readonly draft: string | null;
1110
+ readonly main: string | null;
1111
+ }[];
1112
+ readonly provenance: {
1113
+ readonly references: readonly {
1114
+ readonly kind: string;
1115
+ readonly digest: string;
1116
+ readonly locator?: string;
1117
+ }[];
1118
+ };
1119
+ readonly mounts: readonly ({
1120
+ readonly kind: "project";
1121
+ readonly root: "/project";
1122
+ readonly access: "read-write";
1123
+ } | {
1124
+ readonly root: string;
1125
+ readonly digest: string;
1126
+ readonly fileCount: number;
1127
+ readonly byteSize: number;
1128
+ readonly kind: "started-from";
1129
+ readonly access: "read-only";
1130
+ readonly templateId: string;
1131
+ readonly slug: string;
1132
+ readonly name: string;
1133
+ } | {
1134
+ readonly root: string;
1135
+ readonly digest: string;
1136
+ readonly fileCount: number;
1137
+ readonly byteSize: number;
1138
+ readonly kind: "resource";
1139
+ readonly access: "read-only";
1140
+ readonly resourceId: string;
1141
+ readonly name: string;
1142
+ } | {
1143
+ readonly root: string;
1144
+ readonly digest: string;
1145
+ readonly fileCount: number;
1146
+ readonly byteSize: number;
1147
+ readonly kind: "library-template";
1148
+ readonly access: "read-only";
1149
+ readonly templateId: string;
1150
+ readonly slug: string;
1151
+ readonly name: string;
1152
+ })[];
1153
+ readonly libraryManifestDigest: string;
1904
1154
  readonly createdAt: string;
1905
1155
  readonly updatedAt: string;
1906
1156
  readonly createdBy: {
@@ -1911,18 +1161,77 @@ export declare const getDocument: (input: {
1911
1161
  readonly userId: string & import("effect/Brand").Brand<"UserId">;
1912
1162
  readonly via: "agent" | "api" | "mcp";
1913
1163
  };
1914
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1915
- export declare const replaceDocument: (input: {
1916
- readonly templateId: string;
1164
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1165
+ export declare const removeWorkspaceResource: (input: {
1166
+ readonly id: string;
1167
+ readonly resourceId: string;
1917
1168
  readonly expectedRevision: string;
1918
- readonly source: string;
1169
+ readonly idempotencyKey: string;
1919
1170
  }) => import("effect/Effect").Effect<{
1920
- readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1921
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1922
- readonly channel: "email";
1923
- readonly source: string;
1171
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1172
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
1173
+ readonly ownerEpoch: number;
1174
+ readonly repositoryName: string;
1175
+ readonly defaultBranch: string;
1176
+ readonly baseCommit: string;
1177
+ readonly remoteHead: string;
1178
+ readonly pendingRemoteHead: string | null;
1924
1179
  readonly revision: string;
1925
- readonly sourceDigest: string;
1180
+ readonly overlay: {
1181
+ readonly [x: string]: string | null;
1182
+ };
1183
+ readonly assetChanges: readonly {
1184
+ readonly path: string;
1185
+ readonly status: "added" | "deleted" | "modified";
1186
+ }[];
1187
+ readonly conflicts: readonly {
1188
+ readonly path: string;
1189
+ readonly base: string | null;
1190
+ readonly draft: string | null;
1191
+ readonly main: string | null;
1192
+ }[];
1193
+ readonly provenance: {
1194
+ readonly references: readonly {
1195
+ readonly kind: string;
1196
+ readonly digest: string;
1197
+ readonly locator?: string;
1198
+ }[];
1199
+ };
1200
+ readonly mounts: readonly ({
1201
+ readonly kind: "project";
1202
+ readonly root: "/project";
1203
+ readonly access: "read-write";
1204
+ } | {
1205
+ readonly root: string;
1206
+ readonly digest: string;
1207
+ readonly fileCount: number;
1208
+ readonly byteSize: number;
1209
+ readonly kind: "started-from";
1210
+ readonly access: "read-only";
1211
+ readonly templateId: string;
1212
+ readonly slug: string;
1213
+ readonly name: string;
1214
+ } | {
1215
+ readonly root: string;
1216
+ readonly digest: string;
1217
+ readonly fileCount: number;
1218
+ readonly byteSize: number;
1219
+ readonly kind: "resource";
1220
+ readonly access: "read-only";
1221
+ readonly resourceId: string;
1222
+ readonly name: string;
1223
+ } | {
1224
+ readonly root: string;
1225
+ readonly digest: string;
1226
+ readonly fileCount: number;
1227
+ readonly byteSize: number;
1228
+ readonly kind: "library-template";
1229
+ readonly access: "read-only";
1230
+ readonly templateId: string;
1231
+ readonly slug: string;
1232
+ readonly name: string;
1233
+ })[];
1234
+ readonly libraryManifestDigest: string;
1926
1235
  readonly createdAt: string;
1927
1236
  readonly updatedAt: string;
1928
1237
  readonly createdBy: {
@@ -1933,185 +1242,705 @@ export declare const replaceDocument: (input: {
1933
1242
  readonly userId: string & import("effect/Brand").Brand<"UserId">;
1934
1243
  readonly via: "agent" | "api" | "mcp";
1935
1244
  };
1936
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1937
- export declare const saveDocument: (input: {
1938
- readonly templateId: string;
1939
- readonly revision: string;
1245
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1246
+ export declare const reconcileWorkspace: (input: {
1247
+ readonly id: string;
1248
+ readonly expectedRevision: string;
1249
+ readonly assetResolution?: string | undefined;
1250
+ readonly expectedRemoteHead?: string | undefined;
1251
+ readonly idempotencyKey: string;
1940
1252
  }) => import("effect/Effect").Effect<{
1253
+ readonly workspace: {
1254
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1255
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
1256
+ readonly ownerEpoch: number;
1257
+ readonly repositoryName: string;
1258
+ readonly defaultBranch: string;
1259
+ readonly baseCommit: string;
1260
+ readonly remoteHead: string;
1261
+ readonly pendingRemoteHead: string | null;
1262
+ readonly revision: string;
1263
+ readonly overlay: {
1264
+ readonly [x: string]: string | null;
1265
+ };
1266
+ readonly assetChanges: readonly {
1267
+ readonly path: string;
1268
+ readonly status: "added" | "deleted" | "modified";
1269
+ }[];
1270
+ readonly conflicts: readonly {
1271
+ readonly path: string;
1272
+ readonly base: string | null;
1273
+ readonly draft: string | null;
1274
+ readonly main: string | null;
1275
+ }[];
1276
+ readonly provenance: {
1277
+ readonly references: readonly {
1278
+ readonly kind: string;
1279
+ readonly digest: string;
1280
+ readonly locator?: string;
1281
+ }[];
1282
+ };
1283
+ readonly mounts: readonly ({
1284
+ readonly kind: "project";
1285
+ readonly root: "/project";
1286
+ readonly access: "read-write";
1287
+ } | {
1288
+ readonly root: string;
1289
+ readonly digest: string;
1290
+ readonly fileCount: number;
1291
+ readonly byteSize: number;
1292
+ readonly kind: "started-from";
1293
+ readonly access: "read-only";
1294
+ readonly templateId: string;
1295
+ readonly slug: string;
1296
+ readonly name: string;
1297
+ } | {
1298
+ readonly root: string;
1299
+ readonly digest: string;
1300
+ readonly fileCount: number;
1301
+ readonly byteSize: number;
1302
+ readonly kind: "resource";
1303
+ readonly access: "read-only";
1304
+ readonly resourceId: string;
1305
+ readonly name: string;
1306
+ } | {
1307
+ readonly root: string;
1308
+ readonly digest: string;
1309
+ readonly fileCount: number;
1310
+ readonly byteSize: number;
1311
+ readonly kind: "library-template";
1312
+ readonly access: "read-only";
1313
+ readonly templateId: string;
1314
+ readonly slug: string;
1315
+ readonly name: string;
1316
+ })[];
1317
+ readonly libraryManifestDigest: string;
1318
+ readonly createdAt: string;
1319
+ readonly updatedAt: string;
1320
+ readonly createdBy: {
1321
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1322
+ readonly via: "agent" | "api" | "mcp";
1323
+ };
1324
+ readonly updatedBy: {
1325
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1326
+ readonly via: "agent" | "api" | "mcp";
1327
+ };
1328
+ };
1329
+ readonly files: {
1330
+ readonly [x: string]: string;
1331
+ };
1332
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1333
+ export declare const restoreWorkspace: (input: {
1941
1334
  readonly id: string;
1942
- readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1943
- readonly documentRevision: string;
1944
- readonly sourceDigest: string;
1945
- readonly compilerVersion: string;
1946
- readonly createdAt: string;
1947
- readonly versionId: string;
1948
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1949
- export declare const renderDocument: (input: {
1950
- readonly templateId: string;
1951
- readonly revision: string;
1952
- readonly variables?: {
1953
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | {
1954
- readonly [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any | null | undefined;
1955
- } | null)[] | {
1956
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1957
- } | null)[] | {
1958
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1959
- } | null)[] | {
1960
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1961
- } | null)[] | {
1962
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1963
- } | null)[] | {
1964
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1965
- } | null)[] | {
1966
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1967
- } | null)[] | {
1968
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1969
- } | null)[] | {
1970
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1971
- } | null)[] | {
1972
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1973
- } | null)[] | {
1974
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1975
- } | null)[] | {
1976
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1977
- } | null | undefined;
1978
- } | null | undefined;
1335
+ readonly expectedRevision: string;
1336
+ readonly commit: string;
1337
+ readonly idempotencyKey: string;
1979
1338
  }) => import("effect/Effect").Effect<{
1980
- readonly text: string;
1981
- readonly channel: "email";
1982
- readonly missingVariables: readonly string[];
1983
- readonly subject?: string | null;
1984
- readonly html?: string | null;
1985
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1986
- export declare const checkDocumentSpam: (input: {
1987
- readonly templateId: string;
1988
- readonly revision: string;
1989
- readonly variables?: {
1990
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | {
1991
- readonly [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any | null | undefined;
1992
- } | null)[] | {
1993
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1994
- } | null)[] | {
1995
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1996
- } | null)[] | {
1997
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
1998
- } | null)[] | {
1999
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2000
- } | null)[] | {
2001
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2002
- } | null)[] | {
2003
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2004
- } | null)[] | {
2005
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2006
- } | null)[] | {
2007
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2008
- } | null)[] | {
2009
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2010
- } | null)[] | {
2011
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2012
- } | null)[] | {
2013
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2014
- } | null | undefined;
2015
- } | null | undefined;
1339
+ readonly view: {
1340
+ readonly workspace: {
1341
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1342
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
1343
+ readonly ownerEpoch: number;
1344
+ readonly repositoryName: string;
1345
+ readonly defaultBranch: string;
1346
+ readonly baseCommit: string;
1347
+ readonly remoteHead: string;
1348
+ readonly pendingRemoteHead: string | null;
1349
+ readonly revision: string;
1350
+ readonly overlay: {
1351
+ readonly [x: string]: string | null;
1352
+ };
1353
+ readonly assetChanges: readonly {
1354
+ readonly path: string;
1355
+ readonly status: "added" | "deleted" | "modified";
1356
+ }[];
1357
+ readonly conflicts: readonly {
1358
+ readonly path: string;
1359
+ readonly base: string | null;
1360
+ readonly draft: string | null;
1361
+ readonly main: string | null;
1362
+ }[];
1363
+ readonly provenance: {
1364
+ readonly references: readonly {
1365
+ readonly kind: string;
1366
+ readonly digest: string;
1367
+ readonly locator?: string;
1368
+ }[];
1369
+ };
1370
+ readonly mounts: readonly ({
1371
+ readonly kind: "project";
1372
+ readonly root: "/project";
1373
+ readonly access: "read-write";
1374
+ } | {
1375
+ readonly root: string;
1376
+ readonly digest: string;
1377
+ readonly fileCount: number;
1378
+ readonly byteSize: number;
1379
+ readonly kind: "started-from";
1380
+ readonly access: "read-only";
1381
+ readonly templateId: string;
1382
+ readonly slug: string;
1383
+ readonly name: string;
1384
+ } | {
1385
+ readonly root: string;
1386
+ readonly digest: string;
1387
+ readonly fileCount: number;
1388
+ readonly byteSize: number;
1389
+ readonly kind: "resource";
1390
+ readonly access: "read-only";
1391
+ readonly resourceId: string;
1392
+ readonly name: string;
1393
+ } | {
1394
+ readonly root: string;
1395
+ readonly digest: string;
1396
+ readonly fileCount: number;
1397
+ readonly byteSize: number;
1398
+ readonly kind: "library-template";
1399
+ readonly access: "read-only";
1400
+ readonly templateId: string;
1401
+ readonly slug: string;
1402
+ readonly name: string;
1403
+ })[];
1404
+ readonly libraryManifestDigest: string;
1405
+ readonly createdAt: string;
1406
+ readonly updatedAt: string;
1407
+ readonly createdBy: {
1408
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1409
+ readonly via: "agent" | "api" | "mcp";
1410
+ };
1411
+ readonly updatedBy: {
1412
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1413
+ readonly via: "agent" | "api" | "mcp";
1414
+ };
1415
+ };
1416
+ readonly files: {
1417
+ readonly [x: string]: string;
1418
+ };
1419
+ };
1420
+ readonly source: {
1421
+ readonly digest: string;
1422
+ readonly content: string;
1423
+ };
1424
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1425
+ export declare const saveWorkspace: (input: {
1426
+ readonly id: string;
1427
+ readonly expectedRevision: string;
1428
+ readonly expectedHead: string;
1429
+ readonly message: string;
1430
+ readonly idempotencyKey: string;
2016
1431
  }) => import("effect/Effect").Effect<{
2017
- readonly score: number;
2018
- readonly severity: "low" | "medium" | "high";
2019
- readonly issues: readonly {
2020
- readonly rule: string;
2021
- readonly description: string;
2022
- readonly severity: "low" | "medium" | "high";
2023
- readonly score: number;
1432
+ readonly commit: string;
1433
+ readonly parentCommit: string;
1434
+ readonly tree: string;
1435
+ readonly revision: string;
1436
+ readonly changedPaths: readonly string[];
1437
+ readonly sourceDigest: string;
1438
+ readonly buildDigest: string;
1439
+ readonly warnings: readonly {
1440
+ readonly code: string;
1441
+ readonly severity: "error" | "info" | "warning";
1442
+ readonly message: string;
1443
+ readonly origins: readonly {
1444
+ readonly fileName: string;
1445
+ readonly lineNumber: number;
1446
+ readonly columnNumber: number;
1447
+ }[];
1448
+ readonly clients?: readonly string[] | null;
1449
+ readonly notes?: string | null;
1450
+ readonly provenance?: string | null;
1451
+ readonly fixtures?: readonly string[] | null;
1452
+ readonly occurrences?: readonly (readonly {
1453
+ readonly fileName: string;
1454
+ readonly lineNumber: number;
1455
+ readonly columnNumber: number;
1456
+ }[])[] | null;
1457
+ readonly compatibility?: {
1458
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1459
+ readonly title: string;
1460
+ } | null;
2024
1461
  }[];
2025
- readonly recommendations: readonly string[];
2026
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
2027
- export declare const sendDocumentTest: (input: {
2028
- readonly templateId: string;
2029
- readonly to: string;
1462
+ readonly incompatibilities: readonly {
1463
+ readonly code: string;
1464
+ readonly severity: "error" | "info" | "warning";
1465
+ readonly message: string;
1466
+ readonly origins: readonly {
1467
+ readonly fileName: string;
1468
+ readonly lineNumber: number;
1469
+ readonly columnNumber: number;
1470
+ }[];
1471
+ readonly clients?: readonly string[] | null;
1472
+ readonly notes?: string | null;
1473
+ readonly provenance?: string | null;
1474
+ readonly fixtures?: readonly string[] | null;
1475
+ readonly occurrences?: readonly (readonly {
1476
+ readonly fileName: string;
1477
+ readonly lineNumber: number;
1478
+ readonly columnNumber: number;
1479
+ }[])[] | null;
1480
+ readonly compatibility?: {
1481
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1482
+ readonly title: string;
1483
+ } | null;
1484
+ }[];
1485
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1486
+ export declare const checkWorkspace: (input: {
1487
+ readonly id: string;
1488
+ readonly expectedRevision: string;
1489
+ }) => import("effect/Effect").Effect<{
1490
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
2030
1491
  readonly revision: string;
2031
- readonly variables?: {
2032
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | {
2033
- readonly [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any | null | undefined;
2034
- } | null)[] | {
2035
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2036
- } | null)[] | {
2037
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2038
- } | null)[] | {
2039
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2040
- } | null)[] | {
2041
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2042
- } | null)[] | {
2043
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2044
- } | null)[] | {
2045
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2046
- } | null)[] | {
2047
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2048
- } | null)[] | {
2049
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2050
- } | null)[] | {
2051
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2052
- } | null)[] | {
2053
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2054
- } | null)[] | {
2055
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null)[] | /*elided*/ any | null | undefined;
2056
- } | null | undefined;
2057
- } | null | undefined;
1492
+ readonly entryPath: string;
1493
+ readonly declaration: {
1494
+ readonly codeDigest: string;
1495
+ readonly templateId: string;
1496
+ readonly input: {
1497
+ readonly schema: {
1498
+ readonly [x: string]: import("./generated").JsonValue;
1499
+ };
1500
+ readonly schemaDigest: string;
1501
+ readonly contractDigest: string;
1502
+ };
1503
+ readonly runtime: {
1504
+ readonly now?: number;
1505
+ readonly randomSeed?: number;
1506
+ };
1507
+ readonly fixtures: readonly string[];
1508
+ } | null;
1509
+ readonly diagnostics: readonly {
1510
+ readonly code: string;
1511
+ readonly severity: "error" | "info" | "warning";
1512
+ readonly message: string;
1513
+ readonly origins: readonly {
1514
+ readonly fileName: string;
1515
+ readonly lineNumber: number;
1516
+ readonly columnNumber: number;
1517
+ }[];
1518
+ readonly clients?: readonly string[] | null;
1519
+ readonly notes?: string | null;
1520
+ readonly provenance?: string | null;
1521
+ readonly fixtures?: readonly string[] | null;
1522
+ readonly occurrences?: readonly (readonly {
1523
+ readonly fileName: string;
1524
+ readonly lineNumber: number;
1525
+ readonly columnNumber: number;
1526
+ }[])[] | null;
1527
+ readonly compatibility?: {
1528
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1529
+ readonly title: string;
1530
+ } | null;
1531
+ }[];
1532
+ readonly incompatibilities: readonly {
1533
+ readonly code: string;
1534
+ readonly severity: "error" | "info" | "warning";
1535
+ readonly message: string;
1536
+ readonly origins: readonly {
1537
+ readonly fileName: string;
1538
+ readonly lineNumber: number;
1539
+ readonly columnNumber: number;
1540
+ }[];
1541
+ readonly clients?: readonly string[] | null;
1542
+ readonly notes?: string | null;
1543
+ readonly provenance?: string | null;
1544
+ readonly fixtures?: readonly string[] | null;
1545
+ readonly occurrences?: readonly (readonly {
1546
+ readonly fileName: string;
1547
+ readonly lineNumber: number;
1548
+ readonly columnNumber: number;
1549
+ }[])[] | null;
1550
+ readonly compatibility?: {
1551
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1552
+ readonly title: string;
1553
+ } | null;
1554
+ }[];
1555
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1556
+ export declare const renderWorkspaceFixture: (input: {
1557
+ readonly id: string;
1558
+ readonly expectedRevision: string;
1559
+ readonly fixture: string;
2058
1560
  }) => import("effect/Effect").Effect<{
2059
- readonly messageId: string;
2060
- readonly status: string;
1561
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1562
+ readonly revision: string;
1563
+ readonly entryPath: string;
1564
+ readonly declaration: {
1565
+ readonly codeDigest: string;
1566
+ readonly templateId: string;
1567
+ readonly input: {
1568
+ readonly schema: {
1569
+ readonly [x: string]: import("./generated").JsonValue;
1570
+ };
1571
+ readonly schemaDigest: string;
1572
+ readonly contractDigest: string;
1573
+ };
1574
+ readonly runtime: {
1575
+ readonly now?: number;
1576
+ readonly randomSeed?: number;
1577
+ };
1578
+ readonly fixtures: readonly string[];
1579
+ } | null;
1580
+ readonly diagnostics: readonly {
1581
+ readonly code: string;
1582
+ readonly severity: "error" | "info" | "warning";
1583
+ readonly message: string;
1584
+ readonly origins: readonly {
1585
+ readonly fileName: string;
1586
+ readonly lineNumber: number;
1587
+ readonly columnNumber: number;
1588
+ }[];
1589
+ readonly clients?: readonly string[] | null;
1590
+ readonly notes?: string | null;
1591
+ readonly provenance?: string | null;
1592
+ readonly fixtures?: readonly string[] | null;
1593
+ readonly occurrences?: readonly (readonly {
1594
+ readonly fileName: string;
1595
+ readonly lineNumber: number;
1596
+ readonly columnNumber: number;
1597
+ }[])[] | null;
1598
+ readonly compatibility?: {
1599
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1600
+ readonly title: string;
1601
+ } | null;
1602
+ }[];
1603
+ readonly incompatibilities: readonly {
1604
+ readonly code: string;
1605
+ readonly severity: "error" | "info" | "warning";
1606
+ readonly message: string;
1607
+ readonly origins: readonly {
1608
+ readonly fileName: string;
1609
+ readonly lineNumber: number;
1610
+ readonly columnNumber: number;
1611
+ }[];
1612
+ readonly clients?: readonly string[] | null;
1613
+ readonly notes?: string | null;
1614
+ readonly provenance?: string | null;
1615
+ readonly fixtures?: readonly string[] | null;
1616
+ readonly occurrences?: readonly (readonly {
1617
+ readonly fileName: string;
1618
+ readonly lineNumber: number;
1619
+ readonly columnNumber: number;
1620
+ }[])[] | null;
1621
+ readonly compatibility?: {
1622
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1623
+ readonly title: string;
1624
+ } | null;
1625
+ }[];
1626
+ readonly fixture: string;
2061
1627
  readonly rendered: {
1628
+ readonly subject: string;
1629
+ readonly preheader?: string;
1630
+ readonly html: string;
2062
1631
  readonly text: string;
2063
- readonly channel: "email";
2064
- readonly missingVariables: readonly string[];
2065
- readonly subject?: string | null;
2066
- readonly html?: string | null;
2067
- };
2068
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").PaymentRequiredError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").BillingProviderError | import("./generated").ConflictError | import("./generated").RateLimitedError | import("./generated").WebhookEnqueueError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
2069
- export declare const listDocumentVersions: (input: {
2070
- readonly templateId: string;
1632
+ readonly selections: readonly {
1633
+ readonly instancePath: string;
1634
+ readonly tag: string;
1635
+ readonly origins: readonly {
1636
+ readonly fileName: string;
1637
+ readonly lineNumber: number;
1638
+ readonly columnNumber: number;
1639
+ }[];
1640
+ readonly authored: boolean;
1641
+ readonly occurrence: number;
1642
+ readonly occurrences: number;
1643
+ readonly parentPath?: string;
1644
+ readonly start: number;
1645
+ readonly end: number;
1646
+ }[];
1647
+ } | null;
1648
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1649
+ export declare const publish: (input: {
1650
+ readonly id: string;
1651
+ readonly projectId: string;
1652
+ readonly commitSha: string;
1653
+ readonly entryPath: string;
1654
+ readonly expectedWorkspaceRevision: string;
2071
1655
  }) => import("effect/Effect").Effect<{
2072
- readonly versions: readonly {
2073
- readonly versionId: string & import("effect/Brand").Brand<"TemplateSourceVersionId">;
2074
- readonly version: number;
2075
- readonly status: string;
2076
- readonly isCurrent: boolean;
2077
- readonly materializationId: string;
2078
- readonly documentRevision: string;
2079
- readonly sourceDigest: string;
2080
- readonly compilerVersion: string;
2081
- readonly publishedAt: string | null;
2082
- readonly archivedAt: string | null;
2083
- readonly createdAt: string;
1656
+ readonly id: string & import("effect/Brand").Brand<"TemplatePublicationId">;
1657
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1658
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1659
+ readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1660
+ readonly inputContractId: string & import("effect/Brand").Brand<"TemplateInputContractId">;
1661
+ readonly commitSha: string;
1662
+ readonly treeSha: string;
1663
+ readonly entryPath: string;
1664
+ readonly buildIdentity: string;
1665
+ readonly manifest: {
1666
+ readonly templateKey: string;
1667
+ readonly executable: {
1668
+ readonly codeDigest: string;
1669
+ readonly bytes: number;
1670
+ };
1671
+ readonly input: {
1672
+ readonly schemaDigest: string;
1673
+ readonly contractDigest: string;
1674
+ };
1675
+ readonly environment: {
1676
+ readonly locale: string;
1677
+ readonly timeZone: "UTC";
1678
+ readonly now?: number;
1679
+ readonly randomSeed?: number;
1680
+ readonly compiler: string;
1681
+ readonly runtime: string;
1682
+ readonly checker: string;
1683
+ readonly lockKind: "bun" | "npm";
1684
+ readonly lockDigest: string;
1685
+ readonly digest: string;
1686
+ };
1687
+ readonly assets: {
1688
+ readonly base: string;
1689
+ readonly entries: readonly {
1690
+ readonly path: string;
1691
+ readonly fileName: string;
1692
+ readonly digest: string;
1693
+ readonly bytes: number;
1694
+ readonly contentType: string;
1695
+ readonly url: string;
1696
+ }[];
1697
+ };
1698
+ readonly source: {
1699
+ readonly commitSha: string;
1700
+ readonly treeSha: string;
1701
+ readonly entryPath: string;
1702
+ readonly treeDigest: string;
1703
+ };
1704
+ };
1705
+ readonly executable: {
1706
+ readonly key: string;
1707
+ readonly digest: string;
1708
+ };
1709
+ readonly assets: readonly {
1710
+ readonly path: string;
1711
+ readonly fileName: string;
1712
+ readonly digest: string;
1713
+ readonly bytes: number;
1714
+ readonly contentType: string;
1715
+ readonly url: string;
2084
1716
  }[];
2085
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
2086
- export declare const publishDocument: (input: {
2087
- readonly templateId: string;
2088
- }) => import("effect/Effect").Effect<{
2089
- readonly versionId: string;
2090
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
2091
- export declare const unpublishDocument: (input: {
2092
- readonly templateId: string;
2093
- }) => import("effect/Effect").Effect<{
2094
- readonly versionId: string;
2095
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
2096
- export declare const restoreDocument: (input: {
2097
- readonly templateId: string;
2098
- readonly versionId: string;
2099
- readonly expectedRevision: string;
1717
+ readonly warnings: readonly {
1718
+ readonly code: string;
1719
+ readonly severity: "error" | "info" | "warning";
1720
+ readonly message: string;
1721
+ readonly origins: readonly {
1722
+ readonly fileName: string;
1723
+ readonly lineNumber: number;
1724
+ readonly columnNumber: number;
1725
+ }[];
1726
+ readonly clients?: readonly string[] | null;
1727
+ readonly notes?: string | null;
1728
+ readonly provenance?: string | null;
1729
+ readonly fixtures?: readonly string[] | null;
1730
+ readonly occurrences?: readonly (readonly {
1731
+ readonly fileName: string;
1732
+ readonly lineNumber: number;
1733
+ readonly columnNumber: number;
1734
+ }[])[] | null;
1735
+ readonly compatibility?: {
1736
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1737
+ readonly title: string;
1738
+ } | null;
1739
+ }[];
1740
+ readonly incompatibilities: readonly {
1741
+ readonly code: string;
1742
+ readonly severity: "error" | "info" | "warning";
1743
+ readonly message: string;
1744
+ readonly origins: readonly {
1745
+ readonly fileName: string;
1746
+ readonly lineNumber: number;
1747
+ readonly columnNumber: number;
1748
+ }[];
1749
+ readonly clients?: readonly string[] | null;
1750
+ readonly notes?: string | null;
1751
+ readonly provenance?: string | null;
1752
+ readonly fixtures?: readonly string[] | null;
1753
+ readonly occurrences?: readonly (readonly {
1754
+ readonly fileName: string;
1755
+ readonly lineNumber: number;
1756
+ readonly columnNumber: number;
1757
+ }[])[] | null;
1758
+ readonly compatibility?: {
1759
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1760
+ readonly title: string;
1761
+ } | null;
1762
+ }[];
1763
+ readonly status: string;
1764
+ readonly publishedAt: string;
1765
+ readonly publishedBy: string | null;
1766
+ readonly createdAt: string;
1767
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1768
+ export declare const getPublication: (input: {
1769
+ readonly id: string;
1770
+ readonly publicationId: string;
2100
1771
  }) => import("effect/Effect").Effect<{
2101
- readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1772
+ readonly id: string & import("effect/Brand").Brand<"TemplatePublicationId">;
2102
1773
  readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
2103
- readonly channel: "email";
2104
- readonly source: string;
2105
- readonly revision: string;
2106
- readonly sourceDigest: string;
1774
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1775
+ readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1776
+ readonly inputContractId: string & import("effect/Brand").Brand<"TemplateInputContractId">;
1777
+ readonly commitSha: string;
1778
+ readonly treeSha: string;
1779
+ readonly entryPath: string;
1780
+ readonly buildIdentity: string;
1781
+ readonly manifest: {
1782
+ readonly templateKey: string;
1783
+ readonly executable: {
1784
+ readonly codeDigest: string;
1785
+ readonly bytes: number;
1786
+ };
1787
+ readonly input: {
1788
+ readonly schemaDigest: string;
1789
+ readonly contractDigest: string;
1790
+ };
1791
+ readonly environment: {
1792
+ readonly locale: string;
1793
+ readonly timeZone: "UTC";
1794
+ readonly now?: number;
1795
+ readonly randomSeed?: number;
1796
+ readonly compiler: string;
1797
+ readonly runtime: string;
1798
+ readonly checker: string;
1799
+ readonly lockKind: "bun" | "npm";
1800
+ readonly lockDigest: string;
1801
+ readonly digest: string;
1802
+ };
1803
+ readonly assets: {
1804
+ readonly base: string;
1805
+ readonly entries: readonly {
1806
+ readonly path: string;
1807
+ readonly fileName: string;
1808
+ readonly digest: string;
1809
+ readonly bytes: number;
1810
+ readonly contentType: string;
1811
+ readonly url: string;
1812
+ }[];
1813
+ };
1814
+ readonly source: {
1815
+ readonly commitSha: string;
1816
+ readonly treeSha: string;
1817
+ readonly entryPath: string;
1818
+ readonly treeDigest: string;
1819
+ };
1820
+ };
1821
+ readonly executable: {
1822
+ readonly key: string;
1823
+ readonly digest: string;
1824
+ };
1825
+ readonly assets: readonly {
1826
+ readonly path: string;
1827
+ readonly fileName: string;
1828
+ readonly digest: string;
1829
+ readonly bytes: number;
1830
+ readonly contentType: string;
1831
+ readonly url: string;
1832
+ }[];
1833
+ readonly warnings: readonly {
1834
+ readonly code: string;
1835
+ readonly severity: "error" | "info" | "warning";
1836
+ readonly message: string;
1837
+ readonly origins: readonly {
1838
+ readonly fileName: string;
1839
+ readonly lineNumber: number;
1840
+ readonly columnNumber: number;
1841
+ }[];
1842
+ readonly clients?: readonly string[] | null;
1843
+ readonly notes?: string | null;
1844
+ readonly provenance?: string | null;
1845
+ readonly fixtures?: readonly string[] | null;
1846
+ readonly occurrences?: readonly (readonly {
1847
+ readonly fileName: string;
1848
+ readonly lineNumber: number;
1849
+ readonly columnNumber: number;
1850
+ }[])[] | null;
1851
+ readonly compatibility?: {
1852
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1853
+ readonly title: string;
1854
+ } | null;
1855
+ }[];
1856
+ readonly incompatibilities: readonly {
1857
+ readonly code: string;
1858
+ readonly severity: "error" | "info" | "warning";
1859
+ readonly message: string;
1860
+ readonly origins: readonly {
1861
+ readonly fileName: string;
1862
+ readonly lineNumber: number;
1863
+ readonly columnNumber: number;
1864
+ }[];
1865
+ readonly clients?: readonly string[] | null;
1866
+ readonly notes?: string | null;
1867
+ readonly provenance?: string | null;
1868
+ readonly fixtures?: readonly string[] | null;
1869
+ readonly occurrences?: readonly (readonly {
1870
+ readonly fileName: string;
1871
+ readonly lineNumber: number;
1872
+ readonly columnNumber: number;
1873
+ }[])[] | null;
1874
+ readonly compatibility?: {
1875
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1876
+ readonly title: string;
1877
+ } | null;
1878
+ }[];
1879
+ readonly status: string;
1880
+ readonly publishedAt: string;
1881
+ readonly publishedBy: string | null;
2107
1882
  readonly createdAt: string;
2108
- readonly updatedAt: string;
2109
- readonly createdBy: {
2110
- readonly userId: string & import("effect/Brand").Brand<"UserId">;
2111
- readonly via: "agent" | "api" | "mcp";
1883
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1884
+ export declare const listInputContracts: (input: {
1885
+ readonly id: string;
1886
+ }) => import("effect/Effect").Effect<readonly {
1887
+ readonly id: string & import("effect/Brand").Brand<"TemplateInputContractId">;
1888
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1889
+ readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1890
+ readonly version: number;
1891
+ readonly validationDigest: string;
1892
+ readonly schema: {
1893
+ readonly [x: string]: import("./generated").JsonValue;
2112
1894
  };
2113
- readonly updatedBy: {
2114
- readonly userId: string & import("effect/Brand").Brand<"UserId">;
2115
- readonly via: "agent" | "api" | "mcp";
1895
+ readonly createdAt: string;
1896
+ }[], import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1897
+ export declare const getInputContract: (input: {
1898
+ readonly id: string;
1899
+ readonly inputContractId: string;
1900
+ }) => import("effect/Effect").Effect<{
1901
+ readonly id: string & import("effect/Brand").Brand<"TemplateInputContractId">;
1902
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1903
+ readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1904
+ readonly version: number;
1905
+ readonly validationDigest: string;
1906
+ readonly schema: {
1907
+ readonly [x: string]: import("./generated").JsonValue;
2116
1908
  };
2117
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("./generated").ValidationError | import("./generated").ConflictError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
1909
+ readonly createdAt: string;
1910
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1911
+ export declare const diffWorkspace: (input: {
1912
+ readonly id: string;
1913
+ readonly expectedRevision: string;
1914
+ }) => import("effect/Effect").Effect<{
1915
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1916
+ readonly baseCommit: string;
1917
+ readonly revision: string;
1918
+ readonly changes: readonly {
1919
+ readonly path: string;
1920
+ readonly before: string | null;
1921
+ readonly after: string | null;
1922
+ readonly status: "added" | "deleted" | "modified";
1923
+ }[];
1924
+ readonly assetChanges: readonly {
1925
+ readonly path: string;
1926
+ readonly status: "added" | "deleted" | "modified";
1927
+ }[];
1928
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1929
+ export declare const workspaceHistory: (input: {
1930
+ readonly id: string;
1931
+ readonly limit?: string | null | undefined;
1932
+ }) => import("effect/Effect").Effect<{
1933
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1934
+ readonly head: string;
1935
+ readonly commits: readonly {
1936
+ readonly commit: string;
1937
+ readonly tree: string;
1938
+ readonly parentCommit: string | null;
1939
+ readonly message: string;
1940
+ readonly committedAt: string;
1941
+ }[];
1942
+ readonly publication: {
1943
+ readonly id: string & import("effect/Brand").Brand<"TemplatePublicationId">;
1944
+ readonly commit: string;
1945
+ } | null;
1946
+ }, import("./generated").ConflictError | import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;