samva 0.3.0 → 0.4.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 (49) hide show
  1. package/AGENTS.md +1 -1
  2. package/README.md +5 -1
  3. package/dist/client/sdk.gen.d.ts +167 -184
  4. package/dist/client/types.gen.d.ts +1362 -662
  5. package/dist/{client-BOghX8fr.js → client-BmZK_uCt.js} +1797 -935
  6. package/dist/client-attribution-BslSOa_8.js +9 -0
  7. package/dist/client-attribution.d.ts +2 -0
  8. package/dist/effect/api-keys.d.ts +51 -51
  9. package/dist/effect/api-keys.js +1 -1
  10. package/dist/effect/campaigns.d.ts +253 -219
  11. package/dist/effect/campaigns.js +1 -1
  12. package/dist/effect/categories.d.ts +6 -6
  13. package/dist/effect/client.js +1 -1
  14. package/dist/effect/contacts.d.ts +225 -225
  15. package/dist/effect/contacts.js +1 -1
  16. package/dist/effect/conversations.d.ts +293 -293
  17. package/dist/effect/conversations.js +1 -1
  18. package/dist/effect/design.d.ts +76 -76
  19. package/dist/effect/design.js +1 -1
  20. package/dist/effect/email.d.ts +225 -213
  21. package/dist/effect/email.js +2 -2
  22. package/dist/effect/generated.d.ts +12174 -11888
  23. package/dist/effect/index.js +1 -1
  24. package/dist/effect/internal/client.d.ts +1 -1
  25. package/dist/effect/internal/operation.d.ts +20 -19
  26. package/dist/effect/media.d.ts +9 -9
  27. package/dist/effect/media.js +1 -1
  28. package/dist/effect/messages.d.ts +64 -61
  29. package/dist/effect/messages.js +1 -1
  30. package/dist/effect/operations.d.ts +17 -17
  31. package/dist/effect/operations.js +1 -1
  32. package/dist/effect/organizations.d.ts +162 -162
  33. package/dist/effect/organizations.js +1 -1
  34. package/dist/effect/runtime.d.ts +0 -2
  35. package/dist/effect/scheduled-messages.d.ts +290 -276
  36. package/dist/effect/scheduled-messages.js +1 -1
  37. package/dist/effect/templates.d.ts +1371 -1554
  38. package/dist/effect/templates.js +40 -30
  39. package/dist/effect/webhooks.d.ts +47 -47
  40. package/dist/effect/webhooks.js +2 -2
  41. package/dist/index.js +1 -1
  42. package/dist/{normalize-BKFjbR9t.js → normalize-BiIJnycv.js} +2 -3
  43. package/dist/{operation-C2Q4cFJL.js → operation-B1knNlxk.js} +65 -38
  44. package/dist/promises/index.d.ts +10 -8
  45. package/dist/promises/index.js +1 -1
  46. package/dist/promises/types.gen.d.ts +1 -1
  47. package/dist/{promises-oiy7mOyu.js → promises-n1opem5V.js} +293 -262
  48. package/dist/service-map.d.ts +70 -44
  49. 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,11 +308,9 @@ 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;
768
316
  readonly createdAt: string;
@@ -779,11 +327,9 @@ export declare const listDashboard: ((input: {
779
327
  readonly name: string;
780
328
  readonly slug: string;
781
329
  readonly channel: "email";
782
- readonly origin: "dashboard" | "tsx";
783
330
  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;
331
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
332
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
787
333
  readonly usageCount: number;
788
334
  readonly lastUsedAt: string | null;
789
335
  readonly createdAt: string;
@@ -796,15 +342,15 @@ export declare const listDashboard: ((input: {
796
342
  readonly total: number;
797
343
  readonly totalPages: number;
798
344
  };
799
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>) & {
345
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>) & {
800
346
  readonly pages: (input: {
347
+ readonly page?: string | null | undefined;
348
+ readonly limit?: string | null | undefined;
801
349
  readonly allowedChannels: string | readonly string[];
350
+ readonly category?: string | null | undefined;
802
351
  readonly channel?: string | null | undefined;
803
- readonly limit?: string | null | undefined;
804
- readonly search?: string | null | undefined;
805
- readonly page?: string | null | undefined;
806
352
  readonly status?: string | null | undefined;
807
- readonly category?: string | null | undefined;
353
+ readonly search?: string | null | undefined;
808
354
  readonly sortBy?: string | null | undefined;
809
355
  readonly sortOrder?: string | null | undefined;
810
356
  }) => import("effect/Stream").Stream<{
@@ -817,11 +363,9 @@ export declare const listDashboard: ((input: {
817
363
  readonly name: string;
818
364
  readonly slug: string;
819
365
  readonly channel: "email";
820
- readonly origin: "dashboard" | "tsx";
821
366
  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;
367
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
368
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
825
369
  readonly usageCount: number;
826
370
  readonly lastUsedAt: string | null;
827
371
  readonly createdAt: string;
@@ -838,11 +382,9 @@ export declare const listDashboard: ((input: {
838
382
  readonly name: string;
839
383
  readonly slug: string;
840
384
  readonly channel: "email";
841
- readonly origin: "dashboard" | "tsx";
842
385
  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;
386
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
387
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
846
388
  readonly usageCount: number;
847
389
  readonly lastUsedAt: string | null;
848
390
  readonly createdAt: string;
@@ -855,15 +397,15 @@ export declare const listDashboard: ((input: {
855
397
  readonly total: number;
856
398
  readonly totalPages: number;
857
399
  };
858
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
400
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
859
401
  readonly items: (input: {
402
+ readonly page?: string | null | undefined;
403
+ readonly limit?: string | null | undefined;
860
404
  readonly allowedChannels: string | readonly string[];
405
+ readonly category?: string | null | undefined;
861
406
  readonly channel?: string | null | undefined;
862
- readonly limit?: string | null | undefined;
863
- readonly search?: string | null | undefined;
864
- readonly page?: string | null | undefined;
865
407
  readonly status?: string | null | undefined;
866
- readonly category?: string | null | undefined;
408
+ readonly search?: string | null | undefined;
867
409
  readonly sortBy?: string | null | undefined;
868
410
  readonly sortOrder?: string | null | undefined;
869
411
  }) => import("effect/Stream").Stream<{
@@ -875,11 +417,9 @@ export declare const listDashboard: ((input: {
875
417
  readonly name: string;
876
418
  readonly slug: string;
877
419
  readonly channel: "email";
878
- readonly origin: "dashboard" | "tsx";
879
420
  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;
421
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
422
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
883
423
  readonly usageCount: number;
884
424
  readonly lastUsedAt: string | null;
885
425
  readonly createdAt: string;
@@ -896,21 +436,19 @@ export declare const listDashboard: ((input: {
896
436
  readonly name: string;
897
437
  readonly slug: string;
898
438
  readonly channel: "email";
899
- readonly origin: "dashboard" | "tsx";
900
439
  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;
440
+ readonly category: "alert" | "marketing" | "notification" | "reminder" | "support" | "transactional" | "verification" | null;
441
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
904
442
  readonly usageCount: number;
905
443
  readonly lastUsedAt: string | null;
906
444
  readonly createdAt: string;
907
445
  readonly updatedAt: string;
908
446
  };
909
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
447
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
910
448
  };
911
449
  export declare const listFamilies: ((input?: {
912
- readonly limit?: string | null | undefined;
913
450
  readonly page?: string | null | undefined;
451
+ readonly limit?: string | null | undefined;
914
452
  } | undefined) => import("effect/Effect").Effect<{
915
453
  readonly items: readonly {
916
454
  readonly id: string & import("effect/Brand").Brand<"TemplateFamilyId">;
@@ -921,25 +459,8 @@ export declare const listFamilies: ((input?: {
921
459
  readonly name: string;
922
460
  readonly slug: string;
923
461
  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";
462
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
941
463
  readonly isActive: boolean;
942
- readonly version: number;
943
464
  readonly createdAt: string;
944
465
  readonly updatedAt: string;
945
466
  }[];
@@ -952,10 +473,10 @@ export declare const listFamilies: ((input?: {
952
473
  readonly total: number;
953
474
  readonly totalPages: number;
954
475
  };
955
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>) & {
476
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>) & {
956
477
  readonly pages: (input?: {
957
- readonly limit?: string | null | undefined;
958
478
  readonly page?: string | null | undefined;
479
+ readonly limit?: string | null | undefined;
959
480
  } | undefined) => import("effect/Stream").Stream<{
960
481
  readonly items: readonly {
961
482
  readonly id: string & import("effect/Brand").Brand<"TemplateFamilyId">;
@@ -966,25 +487,8 @@ export declare const listFamilies: ((input?: {
966
487
  readonly name: string;
967
488
  readonly slug: string;
968
489
  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";
490
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
986
491
  readonly isActive: boolean;
987
- readonly version: number;
988
492
  readonly createdAt: string;
989
493
  readonly updatedAt: string;
990
494
  }[];
@@ -997,10 +501,10 @@ export declare const listFamilies: ((input?: {
997
501
  readonly total: number;
998
502
  readonly totalPages: number;
999
503
  };
1000
- }, import("./generated").UnauthorizedError | import("./generated").ForbiddenError | import("./generated").InternalError | import("effect/unstable/http/HttpClientError").HttpClientError | import("effect/Schema").SchemaError, import("./client").Service>;
504
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1001
505
  readonly items: (input?: {
1002
- readonly limit?: string | null | undefined;
1003
506
  readonly page?: string | null | undefined;
507
+ readonly limit?: string | null | undefined;
1004
508
  } | undefined) => import("effect/Stream").Stream<{
1005
509
  readonly id: string & import("effect/Brand").Brand<"TemplateFamilyId">;
1006
510
  readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
@@ -1010,31 +514,14 @@ export declare const listFamilies: ((input?: {
1010
514
  readonly name: string;
1011
515
  readonly slug: string;
1012
516
  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";
517
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1030
518
  readonly isActive: boolean;
1031
- readonly version: number;
1032
519
  readonly createdAt: string;
1033
520
  readonly updatedAt: string;
1034
521
  }[];
1035
522
  readonly createdAt: string;
1036
523
  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>;
524
+ }, import("./generated").ForbiddenError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
1038
525
  };
1039
526
  export declare const createFamily: (input: {
1040
527
  readonly name: string;
@@ -1047,31 +534,14 @@ export declare const createFamily: (input: {
1047
534
  readonly name: string;
1048
535
  readonly slug: string;
1049
536
  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";
537
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1067
538
  readonly isActive: boolean;
1068
- readonly version: number;
1069
539
  readonly createdAt: string;
1070
540
  readonly updatedAt: string;
1071
541
  }[];
1072
542
  readonly createdAt: string;
1073
543
  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>;
544
+ }, 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
545
  export declare const getFamily: (input: {
1076
546
  readonly familyId: string;
1077
547
  }) => import("effect/Effect").Effect<{
@@ -1083,36 +553,19 @@ export declare const getFamily: (input: {
1083
553
  readonly name: string;
1084
554
  readonly slug: string;
1085
555
  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";
556
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1103
557
  readonly isActive: boolean;
1104
- readonly version: number;
1105
558
  readonly createdAt: string;
1106
559
  readonly updatedAt: string;
1107
560
  }[];
1108
561
  readonly createdAt: string;
1109
562
  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>;
563
+ }, 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
564
  export declare const deleteFamily: (input: {
1112
565
  readonly familyId: string;
1113
566
  }) => import("effect/Effect").Effect<{
1114
567
  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>;
568
+ }, 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
569
  export declare const renameFamily: (input: {
1117
570
  readonly familyId: string;
1118
571
  readonly name: string;
@@ -1125,31 +578,14 @@ export declare const renameFamily: (input: {
1125
578
  readonly name: string;
1126
579
  readonly slug: string;
1127
580
  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";
581
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1145
582
  readonly isActive: boolean;
1146
- readonly version: number;
1147
583
  readonly createdAt: string;
1148
584
  readonly updatedAt: string;
1149
585
  }[];
1150
586
  readonly createdAt: string;
1151
587
  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>;
588
+ }, 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
589
  export declare const createFamilyFromTemplate: (input: {
1154
590
  readonly templateId: string;
1155
591
  readonly name: string;
@@ -1162,31 +598,14 @@ export declare const createFamilyFromTemplate: (input: {
1162
598
  readonly name: string;
1163
599
  readonly slug: string;
1164
600
  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";
601
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1182
602
  readonly isActive: boolean;
1183
- readonly version: number;
1184
603
  readonly createdAt: string;
1185
604
  readonly updatedAt: string;
1186
605
  }[];
1187
606
  readonly createdAt: string;
1188
607
  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>;
608
+ }, 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
609
  export declare const attachFamilyMember: (input: {
1191
610
  readonly familyId: string;
1192
611
  readonly templateId: string;
@@ -1199,31 +618,14 @@ export declare const attachFamilyMember: (input: {
1199
618
  readonly name: string;
1200
619
  readonly slug: string;
1201
620
  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";
621
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1219
622
  readonly isActive: boolean;
1220
- readonly version: number;
1221
623
  readonly createdAt: string;
1222
624
  readonly updatedAt: string;
1223
625
  }[];
1224
626
  readonly createdAt: string;
1225
627
  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>;
628
+ }, 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
629
  export declare const detachFamilyMember: (input: {
1228
630
  readonly familyId: string;
1229
631
  readonly templateId: string;
@@ -1236,71 +638,36 @@ export declare const detachFamilyMember: (input: {
1236
638
  readonly name: string;
1237
639
  readonly slug: string;
1238
640
  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";
641
+ readonly status: "approved" | "archived" | "draft" | "pending" | "published" | "rejected";
1293
642
  readonly isActive: boolean;
1294
- readonly version: number;
1295
643
  readonly createdAt: string;
1296
644
  readonly updatedAt: string;
1297
645
  }[];
1298
646
  readonly createdAt: string;
1299
647
  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>;
648
+ }, 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
649
  export declare const getById: (input: {
1302
650
  readonly id: string;
1303
651
  }) => import("effect/Effect").Effect<{
652
+ readonly id: string & import("effect/Brand").Brand<"TemplateId">;
653
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
654
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
655
+ readonly entryPath: string;
656
+ readonly name: string;
657
+ readonly slug: string;
658
+ readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
659
+ readonly channel: "email";
660
+ readonly description: string | null;
661
+ readonly category: string | null;
662
+ readonly fromDefault?: {
663
+ readonly email: string;
664
+ readonly name?: string | null;
665
+ } | null;
666
+ readonly replyToDefault?: readonly string[] | null;
667
+ readonly trackingDefault?: {
668
+ readonly opens?: boolean | null;
669
+ readonly clicks?: boolean | null;
670
+ } | null;
1304
671
  readonly email: {
1305
672
  readonly subject: string;
1306
673
  readonly preheader: string | null;
@@ -1308,294 +675,77 @@ export declare const getById: (input: {
1308
675
  readonly [x: string]: string;
1309
676
  } | null;
1310
677
  } | 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;
678
+ readonly publicationId: (string & import("effect/Brand").Brand<"TemplatePublicationId">) | null;
679
+ readonly inputContractId: (string & import("effect/Brand").Brand<"TemplateInputContractId">) | null;
680
+ readonly inputSchema: {
681
+ readonly [x: string]: import("./generated").JsonValue;
682
+ } | null;
1344
683
  readonly compliance: {
1345
684
  readonly metaStatus?: string | null;
1346
685
  readonly submittedAt?: string | null;
1347
686
  readonly qualityScore?: string | null;
1348
687
  readonly rejectedReason?: string | null;
1349
688
  readonly lastSyncedAt?: string | null;
1350
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
689
+ readonly approvalStatus?: "approved" | "archived" | "draft" | "pending" | "published" | "rejected" | null;
1351
690
  readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
1352
691
  readonly approvedAt?: string | null;
1353
692
  readonly approvalNotes?: string | null;
1354
693
  readonly regulatoryRequirements?: readonly {
1355
- readonly status: "pending" | "compliant" | "non_compliant";
1356
694
  readonly region: string;
1357
695
  readonly requirement: string;
696
+ readonly status: "compliant" | "non_compliant" | "pending";
1358
697
  readonly notes?: string | null;
1359
698
  }[] | null;
1360
699
  } | 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;
700
+ readonly usageCount: number;
701
+ readonly lastUsedAt: string | null;
702
+ readonly status: string;
703
+ readonly isActive: boolean;
704
+ readonly isDefault: boolean;
1436
705
  readonly publishedAt?: string | null;
1437
706
  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>;
707
+ readonly createdAt: string;
708
+ readonly updatedAt: string;
709
+ }, 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
710
  export declare const remove: (input: {
1440
711
  readonly id: string;
1441
712
  }) => import("effect/Effect").Effect<{
1442
713
  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>;
714
+ }, 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
715
  export declare const update: (input: {
1445
716
  readonly id: string;
1446
717
  readonly data: {
1447
718
  readonly name?: string | null | undefined;
1448
- readonly origin?: string | null | undefined;
719
+ readonly slug?: string | null | undefined;
1449
720
  readonly description?: string | null | undefined;
1450
- readonly isActive?: boolean | null | undefined;
1451
721
  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
722
  readonly fromDefault?: {
1495
723
  readonly email: string;
1496
724
  readonly name?: string | null | undefined;
1497
725
  } | 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;
726
+ readonly replyToDefault?: readonly string[] | null | undefined;
727
+ readonly isActive?: boolean | null | undefined;
1597
728
  };
1598
729
  }) => import("effect/Effect").Effect<{
730
+ readonly id: string & import("effect/Brand").Brand<"TemplateId">;
731
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
732
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
733
+ readonly entryPath: string;
734
+ readonly name: string;
735
+ readonly slug: string;
736
+ readonly familyId: (string & import("effect/Brand").Brand<"TemplateFamilyId">) | null;
737
+ readonly channel: "email";
738
+ readonly description: string | null;
739
+ readonly category: string | null;
740
+ readonly fromDefault?: {
741
+ readonly email: string;
742
+ readonly name?: string | null;
743
+ } | null;
744
+ readonly replyToDefault?: readonly string[] | null;
745
+ readonly trackingDefault?: {
746
+ readonly opens?: boolean | null;
747
+ readonly clicks?: boolean | null;
748
+ } | null;
1599
749
  readonly email: {
1600
750
  readonly subject: string;
1601
751
  readonly preheader: string | null;
@@ -1603,304 +753,392 @@ export declare const update: (input: {
1603
753
  readonly [x: string]: string;
1604
754
  } | null;
1605
755
  } | 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;
756
+ readonly publicationId: (string & import("effect/Brand").Brand<"TemplatePublicationId">) | null;
757
+ readonly inputContractId: (string & import("effect/Brand").Brand<"TemplateInputContractId">) | null;
758
+ readonly inputSchema: {
759
+ readonly [x: string]: import("./generated").JsonValue;
760
+ } | null;
1639
761
  readonly compliance: {
1640
762
  readonly metaStatus?: string | null;
1641
763
  readonly submittedAt?: string | null;
1642
764
  readonly qualityScore?: string | null;
1643
765
  readonly rejectedReason?: string | null;
1644
766
  readonly lastSyncedAt?: string | null;
1645
- readonly approvalStatus?: "pending" | "archived" | "rejected" | "draft" | "approved" | "published" | null;
767
+ readonly approvalStatus?: "approved" | "archived" | "draft" | "pending" | "published" | "rejected" | null;
1646
768
  readonly approvedBy?: (string & import("effect/Brand").Brand<"UserId">) | null;
1647
769
  readonly approvedAt?: string | null;
1648
770
  readonly approvalNotes?: string | null;
1649
771
  readonly regulatoryRequirements?: readonly {
1650
- readonly status: "pending" | "compliant" | "non_compliant";
1651
772
  readonly region: string;
1652
773
  readonly requirement: string;
774
+ readonly status: "compliant" | "non_compliant" | "pending";
1653
775
  readonly notes?: string | null;
1654
776
  }[] | null;
1655
777
  } | 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
778
  readonly usageCount: number;
1751
779
  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
780
  readonly status: string;
1758
781
  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
782
  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
783
  readonly publishedAt?: string | null;
1873
784
  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
785
  readonly createdAt: string;
1885
786
  readonly updatedAt: string;
1886
- readonly createdBy: {
1887
- readonly userId: string & import("effect/Brand").Brand<"UserId">;
1888
- readonly via: "agent" | "api" | "mcp";
787
+ }, 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>;
788
+ export declare const openWorkspace: (input: {
789
+ readonly id: string;
790
+ }) => import("effect/Effect").Effect<{
791
+ readonly workspace: {
792
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
793
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
794
+ readonly ownerEpoch: number;
795
+ readonly repositoryName: string;
796
+ readonly defaultBranch: string;
797
+ readonly baseCommit: string;
798
+ readonly remoteHead: string;
799
+ readonly pendingRemoteHead: string | null;
800
+ readonly revision: string;
801
+ readonly overlay: {
802
+ readonly [x: string]: string | null;
803
+ };
804
+ readonly assetChanges: readonly {
805
+ readonly path: string;
806
+ readonly status: "added" | "deleted" | "modified";
807
+ }[];
808
+ readonly conflicts: readonly {
809
+ readonly path: string;
810
+ readonly base: string | null;
811
+ readonly draft: string | null;
812
+ readonly main: string | null;
813
+ }[];
814
+ readonly provenance: {
815
+ readonly references: readonly {
816
+ readonly kind: string;
817
+ readonly digest: string;
818
+ readonly locator?: string;
819
+ }[];
820
+ };
821
+ readonly mounts: readonly ({
822
+ readonly kind: "project";
823
+ readonly root: "/project";
824
+ readonly access: "read-write";
825
+ } | {
826
+ readonly root: string;
827
+ readonly digest: string;
828
+ readonly fileCount: number;
829
+ readonly byteSize: number;
830
+ readonly kind: "started-from";
831
+ readonly access: "read-only";
832
+ readonly templateId: string;
833
+ readonly slug: string;
834
+ readonly name: string;
835
+ } | {
836
+ readonly root: string;
837
+ readonly digest: string;
838
+ readonly fileCount: number;
839
+ readonly byteSize: number;
840
+ readonly kind: "resource";
841
+ readonly access: "read-only";
842
+ readonly resourceId: string;
843
+ readonly name: string;
844
+ } | {
845
+ readonly root: string;
846
+ readonly digest: string;
847
+ readonly fileCount: number;
848
+ readonly byteSize: number;
849
+ readonly kind: "library-template";
850
+ readonly access: "read-only";
851
+ readonly templateId: string;
852
+ readonly slug: string;
853
+ readonly name: string;
854
+ })[];
855
+ readonly libraryManifestDigest: string;
856
+ readonly createdAt: string;
857
+ readonly updatedAt: string;
858
+ readonly createdBy: {
859
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
860
+ readonly via: "agent" | "api" | "mcp";
861
+ };
862
+ readonly updatedBy: {
863
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
864
+ readonly via: "agent" | "api" | "mcp";
865
+ };
1889
866
  };
1890
- readonly updatedBy: {
1891
- readonly userId: string & import("effect/Brand").Brand<"UserId">;
1892
- readonly via: "agent" | "api" | "mcp";
867
+ readonly files: {
868
+ readonly [x: string]: string;
1893
869
  };
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;
870
+ }, 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>;
871
+ export declare const getGitRepository: (input: {
872
+ readonly id: string;
1897
873
  }) => 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;
874
+ readonly remote: string;
875
+ readonly defaultBranch: string;
876
+ }, 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>;
877
+ export declare const issueGitCredential: (input: {
878
+ readonly id: string;
879
+ readonly scope: string;
880
+ }) => import("effect/Effect").Effect<{
881
+ readonly remote: string;
882
+ readonly username: "x-access-token";
883
+ readonly password: string;
884
+ readonly expiresAt: string;
885
+ }, 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>;
886
+ export declare const patchWorkspace: (input: {
887
+ readonly id: string;
888
+ readonly expectedRevision: string;
889
+ readonly patches: readonly {
890
+ readonly path: string;
891
+ readonly content: string | null;
892
+ }[];
893
+ readonly idempotencyKey: string;
894
+ }) => import("effect/Effect").Effect<{
895
+ readonly workspace: {
896
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
897
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
898
+ readonly ownerEpoch: number;
899
+ readonly repositoryName: string;
900
+ readonly defaultBranch: string;
901
+ readonly baseCommit: string;
902
+ readonly remoteHead: string;
903
+ readonly pendingRemoteHead: string | null;
904
+ readonly revision: string;
905
+ readonly overlay: {
906
+ readonly [x: string]: string | null;
907
+ };
908
+ readonly assetChanges: readonly {
909
+ readonly path: string;
910
+ readonly status: "added" | "deleted" | "modified";
911
+ }[];
912
+ readonly conflicts: readonly {
913
+ readonly path: string;
914
+ readonly base: string | null;
915
+ readonly draft: string | null;
916
+ readonly main: string | null;
917
+ }[];
918
+ readonly provenance: {
919
+ readonly references: readonly {
920
+ readonly kind: string;
921
+ readonly digest: string;
922
+ readonly locator?: string;
923
+ }[];
924
+ };
925
+ readonly mounts: readonly ({
926
+ readonly kind: "project";
927
+ readonly root: "/project";
928
+ readonly access: "read-write";
929
+ } | {
930
+ readonly root: string;
931
+ readonly digest: string;
932
+ readonly fileCount: number;
933
+ readonly byteSize: number;
934
+ readonly kind: "started-from";
935
+ readonly access: "read-only";
936
+ readonly templateId: string;
937
+ readonly slug: string;
938
+ readonly name: string;
939
+ } | {
940
+ readonly root: string;
941
+ readonly digest: string;
942
+ readonly fileCount: number;
943
+ readonly byteSize: number;
944
+ readonly kind: "resource";
945
+ readonly access: "read-only";
946
+ readonly resourceId: string;
947
+ readonly name: string;
948
+ } | {
949
+ readonly root: string;
950
+ readonly digest: string;
951
+ readonly fileCount: number;
952
+ readonly byteSize: number;
953
+ readonly kind: "library-template";
954
+ readonly access: "read-only";
955
+ readonly templateId: string;
956
+ readonly slug: string;
957
+ readonly name: string;
958
+ })[];
959
+ readonly libraryManifestDigest: string;
960
+ readonly createdAt: string;
961
+ readonly updatedAt: string;
962
+ readonly createdBy: {
963
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
964
+ readonly via: "agent" | "api" | "mcp";
965
+ };
966
+ readonly updatedBy: {
967
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
968
+ readonly via: "agent" | "api" | "mcp";
969
+ };
970
+ };
971
+ readonly files: {
972
+ readonly [x: string]: string;
973
+ };
974
+ }, 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>;
975
+ export declare const resolveWorkspaceConflict: (input: {
976
+ readonly id: string;
977
+ readonly expectedRevision: string;
978
+ readonly path: string;
979
+ readonly resolution: string | {
980
+ readonly content: string | null;
981
+ };
982
+ readonly idempotencyKey: string;
983
+ }) => import("effect/Effect").Effect<{
984
+ readonly workspace: {
985
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
986
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
987
+ readonly ownerEpoch: number;
988
+ readonly repositoryName: string;
989
+ readonly defaultBranch: string;
990
+ readonly baseCommit: string;
991
+ readonly remoteHead: string;
992
+ readonly pendingRemoteHead: string | null;
993
+ readonly revision: string;
994
+ readonly overlay: {
995
+ readonly [x: string]: string | null;
996
+ };
997
+ readonly assetChanges: readonly {
998
+ readonly path: string;
999
+ readonly status: "added" | "deleted" | "modified";
1000
+ }[];
1001
+ readonly conflicts: readonly {
1002
+ readonly path: string;
1003
+ readonly base: string | null;
1004
+ readonly draft: string | null;
1005
+ readonly main: string | null;
1006
+ }[];
1007
+ readonly provenance: {
1008
+ readonly references: readonly {
1009
+ readonly kind: string;
1010
+ readonly digest: string;
1011
+ readonly locator?: string;
1012
+ }[];
1013
+ };
1014
+ readonly mounts: readonly ({
1015
+ readonly kind: "project";
1016
+ readonly root: "/project";
1017
+ readonly access: "read-write";
1018
+ } | {
1019
+ readonly root: string;
1020
+ readonly digest: string;
1021
+ readonly fileCount: number;
1022
+ readonly byteSize: number;
1023
+ readonly kind: "started-from";
1024
+ readonly access: "read-only";
1025
+ readonly templateId: string;
1026
+ readonly slug: string;
1027
+ readonly name: string;
1028
+ } | {
1029
+ readonly root: string;
1030
+ readonly digest: string;
1031
+ readonly fileCount: number;
1032
+ readonly byteSize: number;
1033
+ readonly kind: "resource";
1034
+ readonly access: "read-only";
1035
+ readonly resourceId: string;
1036
+ readonly name: string;
1037
+ } | {
1038
+ readonly root: string;
1039
+ readonly digest: string;
1040
+ readonly fileCount: number;
1041
+ readonly byteSize: number;
1042
+ readonly kind: "library-template";
1043
+ readonly access: "read-only";
1044
+ readonly templateId: string;
1045
+ readonly slug: string;
1046
+ readonly name: string;
1047
+ })[];
1048
+ readonly libraryManifestDigest: string;
1049
+ readonly createdAt: string;
1050
+ readonly updatedAt: string;
1051
+ readonly createdBy: {
1052
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1053
+ readonly via: "agent" | "api" | "mcp";
1054
+ };
1055
+ readonly updatedBy: {
1056
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1057
+ readonly via: "agent" | "api" | "mcp";
1058
+ };
1059
+ };
1060
+ readonly files: {
1061
+ readonly [x: string]: string;
1062
+ };
1063
+ }, 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>;
1064
+ export declare const attachWorkspaceResource: (input: {
1065
+ readonly id: string;
1066
+ readonly expectedRevision: string;
1067
+ readonly resource: {
1068
+ readonly resourceId: string;
1069
+ readonly name: string;
1070
+ readonly files: readonly {
1071
+ readonly path: string;
1072
+ readonly mediaType: string;
1073
+ readonly contentBase64: string;
1074
+ }[];
1075
+ };
1076
+ readonly idempotencyKey: string;
1077
+ }) => import("effect/Effect").Effect<{
1078
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1079
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
1080
+ readonly ownerEpoch: number;
1081
+ readonly repositoryName: string;
1082
+ readonly defaultBranch: string;
1083
+ readonly baseCommit: string;
1084
+ readonly remoteHead: string;
1085
+ readonly pendingRemoteHead: string | null;
1902
1086
  readonly revision: string;
1903
- readonly sourceDigest: string;
1087
+ readonly overlay: {
1088
+ readonly [x: string]: string | null;
1089
+ };
1090
+ readonly assetChanges: readonly {
1091
+ readonly path: string;
1092
+ readonly status: "added" | "deleted" | "modified";
1093
+ }[];
1094
+ readonly conflicts: readonly {
1095
+ readonly path: string;
1096
+ readonly base: string | null;
1097
+ readonly draft: string | null;
1098
+ readonly main: string | null;
1099
+ }[];
1100
+ readonly provenance: {
1101
+ readonly references: readonly {
1102
+ readonly kind: string;
1103
+ readonly digest: string;
1104
+ readonly locator?: string;
1105
+ }[];
1106
+ };
1107
+ readonly mounts: readonly ({
1108
+ readonly kind: "project";
1109
+ readonly root: "/project";
1110
+ readonly access: "read-write";
1111
+ } | {
1112
+ readonly root: string;
1113
+ readonly digest: string;
1114
+ readonly fileCount: number;
1115
+ readonly byteSize: number;
1116
+ readonly kind: "started-from";
1117
+ readonly access: "read-only";
1118
+ readonly templateId: string;
1119
+ readonly slug: string;
1120
+ readonly name: string;
1121
+ } | {
1122
+ readonly root: string;
1123
+ readonly digest: string;
1124
+ readonly fileCount: number;
1125
+ readonly byteSize: number;
1126
+ readonly kind: "resource";
1127
+ readonly access: "read-only";
1128
+ readonly resourceId: string;
1129
+ readonly name: string;
1130
+ } | {
1131
+ readonly root: string;
1132
+ readonly digest: string;
1133
+ readonly fileCount: number;
1134
+ readonly byteSize: number;
1135
+ readonly kind: "library-template";
1136
+ readonly access: "read-only";
1137
+ readonly templateId: string;
1138
+ readonly slug: string;
1139
+ readonly name: string;
1140
+ })[];
1141
+ readonly libraryManifestDigest: string;
1904
1142
  readonly createdAt: string;
1905
1143
  readonly updatedAt: string;
1906
1144
  readonly createdBy: {
@@ -1911,18 +1149,77 @@ export declare const getDocument: (input: {
1911
1149
  readonly userId: string & import("effect/Brand").Brand<"UserId">;
1912
1150
  readonly via: "agent" | "api" | "mcp";
1913
1151
  };
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;
1152
+ }, 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>;
1153
+ export declare const removeWorkspaceResource: (input: {
1154
+ readonly id: string;
1155
+ readonly resourceId: string;
1917
1156
  readonly expectedRevision: string;
1918
- readonly source: string;
1157
+ readonly idempotencyKey: string;
1919
1158
  }) => 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;
1159
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1160
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
1161
+ readonly ownerEpoch: number;
1162
+ readonly repositoryName: string;
1163
+ readonly defaultBranch: string;
1164
+ readonly baseCommit: string;
1165
+ readonly remoteHead: string;
1166
+ readonly pendingRemoteHead: string | null;
1924
1167
  readonly revision: string;
1925
- readonly sourceDigest: string;
1168
+ readonly overlay: {
1169
+ readonly [x: string]: string | null;
1170
+ };
1171
+ readonly assetChanges: readonly {
1172
+ readonly path: string;
1173
+ readonly status: "added" | "deleted" | "modified";
1174
+ }[];
1175
+ readonly conflicts: readonly {
1176
+ readonly path: string;
1177
+ readonly base: string | null;
1178
+ readonly draft: string | null;
1179
+ readonly main: string | null;
1180
+ }[];
1181
+ readonly provenance: {
1182
+ readonly references: readonly {
1183
+ readonly kind: string;
1184
+ readonly digest: string;
1185
+ readonly locator?: string;
1186
+ }[];
1187
+ };
1188
+ readonly mounts: readonly ({
1189
+ readonly kind: "project";
1190
+ readonly root: "/project";
1191
+ readonly access: "read-write";
1192
+ } | {
1193
+ readonly root: string;
1194
+ readonly digest: string;
1195
+ readonly fileCount: number;
1196
+ readonly byteSize: number;
1197
+ readonly kind: "started-from";
1198
+ readonly access: "read-only";
1199
+ readonly templateId: string;
1200
+ readonly slug: string;
1201
+ readonly name: string;
1202
+ } | {
1203
+ readonly root: string;
1204
+ readonly digest: string;
1205
+ readonly fileCount: number;
1206
+ readonly byteSize: number;
1207
+ readonly kind: "resource";
1208
+ readonly access: "read-only";
1209
+ readonly resourceId: string;
1210
+ readonly name: string;
1211
+ } | {
1212
+ readonly root: string;
1213
+ readonly digest: string;
1214
+ readonly fileCount: number;
1215
+ readonly byteSize: number;
1216
+ readonly kind: "library-template";
1217
+ readonly access: "read-only";
1218
+ readonly templateId: string;
1219
+ readonly slug: string;
1220
+ readonly name: string;
1221
+ })[];
1222
+ readonly libraryManifestDigest: string;
1926
1223
  readonly createdAt: string;
1927
1224
  readonly updatedAt: string;
1928
1225
  readonly createdBy: {
@@ -1933,185 +1230,705 @@ export declare const replaceDocument: (input: {
1933
1230
  readonly userId: string & import("effect/Brand").Brand<"UserId">;
1934
1231
  readonly via: "agent" | "api" | "mcp";
1935
1232
  };
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;
1233
+ }, 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>;
1234
+ export declare const reconcileWorkspace: (input: {
1235
+ readonly id: string;
1236
+ readonly expectedRevision: string;
1237
+ readonly assetResolution?: string | undefined;
1238
+ readonly expectedRemoteHead?: string | undefined;
1239
+ readonly idempotencyKey: string;
1940
1240
  }) => import("effect/Effect").Effect<{
1241
+ readonly workspace: {
1242
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1243
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
1244
+ readonly ownerEpoch: number;
1245
+ readonly repositoryName: string;
1246
+ readonly defaultBranch: string;
1247
+ readonly baseCommit: string;
1248
+ readonly remoteHead: string;
1249
+ readonly pendingRemoteHead: string | null;
1250
+ readonly revision: string;
1251
+ readonly overlay: {
1252
+ readonly [x: string]: string | null;
1253
+ };
1254
+ readonly assetChanges: readonly {
1255
+ readonly path: string;
1256
+ readonly status: "added" | "deleted" | "modified";
1257
+ }[];
1258
+ readonly conflicts: readonly {
1259
+ readonly path: string;
1260
+ readonly base: string | null;
1261
+ readonly draft: string | null;
1262
+ readonly main: string | null;
1263
+ }[];
1264
+ readonly provenance: {
1265
+ readonly references: readonly {
1266
+ readonly kind: string;
1267
+ readonly digest: string;
1268
+ readonly locator?: string;
1269
+ }[];
1270
+ };
1271
+ readonly mounts: readonly ({
1272
+ readonly kind: "project";
1273
+ readonly root: "/project";
1274
+ readonly access: "read-write";
1275
+ } | {
1276
+ readonly root: string;
1277
+ readonly digest: string;
1278
+ readonly fileCount: number;
1279
+ readonly byteSize: number;
1280
+ readonly kind: "started-from";
1281
+ readonly access: "read-only";
1282
+ readonly templateId: string;
1283
+ readonly slug: string;
1284
+ readonly name: string;
1285
+ } | {
1286
+ readonly root: string;
1287
+ readonly digest: string;
1288
+ readonly fileCount: number;
1289
+ readonly byteSize: number;
1290
+ readonly kind: "resource";
1291
+ readonly access: "read-only";
1292
+ readonly resourceId: string;
1293
+ readonly name: string;
1294
+ } | {
1295
+ readonly root: string;
1296
+ readonly digest: string;
1297
+ readonly fileCount: number;
1298
+ readonly byteSize: number;
1299
+ readonly kind: "library-template";
1300
+ readonly access: "read-only";
1301
+ readonly templateId: string;
1302
+ readonly slug: string;
1303
+ readonly name: string;
1304
+ })[];
1305
+ readonly libraryManifestDigest: string;
1306
+ readonly createdAt: string;
1307
+ readonly updatedAt: string;
1308
+ readonly createdBy: {
1309
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1310
+ readonly via: "agent" | "api" | "mcp";
1311
+ };
1312
+ readonly updatedBy: {
1313
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1314
+ readonly via: "agent" | "api" | "mcp";
1315
+ };
1316
+ };
1317
+ readonly files: {
1318
+ readonly [x: string]: string;
1319
+ };
1320
+ }, 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>;
1321
+ export declare const restoreWorkspace: (input: {
1941
1322
  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;
1323
+ readonly expectedRevision: string;
1324
+ readonly commit: string;
1325
+ readonly idempotencyKey: string;
1979
1326
  }) => 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;
1327
+ readonly view: {
1328
+ readonly workspace: {
1329
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1330
+ readonly organizationId: (string & import("effect/Brand").Brand<"OrganizationId">) | null;
1331
+ readonly ownerEpoch: number;
1332
+ readonly repositoryName: string;
1333
+ readonly defaultBranch: string;
1334
+ readonly baseCommit: string;
1335
+ readonly remoteHead: string;
1336
+ readonly pendingRemoteHead: string | null;
1337
+ readonly revision: string;
1338
+ readonly overlay: {
1339
+ readonly [x: string]: string | null;
1340
+ };
1341
+ readonly assetChanges: readonly {
1342
+ readonly path: string;
1343
+ readonly status: "added" | "deleted" | "modified";
1344
+ }[];
1345
+ readonly conflicts: readonly {
1346
+ readonly path: string;
1347
+ readonly base: string | null;
1348
+ readonly draft: string | null;
1349
+ readonly main: string | null;
1350
+ }[];
1351
+ readonly provenance: {
1352
+ readonly references: readonly {
1353
+ readonly kind: string;
1354
+ readonly digest: string;
1355
+ readonly locator?: string;
1356
+ }[];
1357
+ };
1358
+ readonly mounts: readonly ({
1359
+ readonly kind: "project";
1360
+ readonly root: "/project";
1361
+ readonly access: "read-write";
1362
+ } | {
1363
+ readonly root: string;
1364
+ readonly digest: string;
1365
+ readonly fileCount: number;
1366
+ readonly byteSize: number;
1367
+ readonly kind: "started-from";
1368
+ readonly access: "read-only";
1369
+ readonly templateId: string;
1370
+ readonly slug: string;
1371
+ readonly name: string;
1372
+ } | {
1373
+ readonly root: string;
1374
+ readonly digest: string;
1375
+ readonly fileCount: number;
1376
+ readonly byteSize: number;
1377
+ readonly kind: "resource";
1378
+ readonly access: "read-only";
1379
+ readonly resourceId: string;
1380
+ readonly name: string;
1381
+ } | {
1382
+ readonly root: string;
1383
+ readonly digest: string;
1384
+ readonly fileCount: number;
1385
+ readonly byteSize: number;
1386
+ readonly kind: "library-template";
1387
+ readonly access: "read-only";
1388
+ readonly templateId: string;
1389
+ readonly slug: string;
1390
+ readonly name: string;
1391
+ })[];
1392
+ readonly libraryManifestDigest: string;
1393
+ readonly createdAt: string;
1394
+ readonly updatedAt: string;
1395
+ readonly createdBy: {
1396
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1397
+ readonly via: "agent" | "api" | "mcp";
1398
+ };
1399
+ readonly updatedBy: {
1400
+ readonly userId: string & import("effect/Brand").Brand<"UserId">;
1401
+ readonly via: "agent" | "api" | "mcp";
1402
+ };
1403
+ };
1404
+ readonly files: {
1405
+ readonly [x: string]: string;
1406
+ };
1407
+ };
1408
+ readonly source: {
1409
+ readonly digest: string;
1410
+ readonly content: string;
1411
+ };
1412
+ }, 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>;
1413
+ export declare const saveWorkspace: (input: {
1414
+ readonly id: string;
1415
+ readonly expectedRevision: string;
1416
+ readonly expectedHead: string;
1417
+ readonly message: string;
1418
+ readonly idempotencyKey: string;
2016
1419
  }) => 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;
1420
+ readonly commit: string;
1421
+ readonly parentCommit: string;
1422
+ readonly tree: string;
1423
+ readonly revision: string;
1424
+ readonly changedPaths: readonly string[];
1425
+ readonly sourceDigest: string;
1426
+ readonly buildDigest: string;
1427
+ readonly warnings: readonly {
1428
+ readonly code: string;
1429
+ readonly severity: "error" | "info" | "warning";
1430
+ readonly message: string;
1431
+ readonly origins: readonly {
1432
+ readonly fileName: string;
1433
+ readonly lineNumber: number;
1434
+ readonly columnNumber: number;
1435
+ }[];
1436
+ readonly clients?: readonly string[] | null;
1437
+ readonly notes?: string | null;
1438
+ readonly provenance?: string | null;
1439
+ readonly fixtures?: readonly string[] | null;
1440
+ readonly occurrences?: readonly (readonly {
1441
+ readonly fileName: string;
1442
+ readonly lineNumber: number;
1443
+ readonly columnNumber: number;
1444
+ }[])[] | null;
1445
+ readonly compatibility?: {
1446
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1447
+ readonly title: string;
1448
+ } | null;
2024
1449
  }[];
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;
1450
+ readonly incompatibilities: readonly {
1451
+ readonly code: string;
1452
+ readonly severity: "error" | "info" | "warning";
1453
+ readonly message: string;
1454
+ readonly origins: readonly {
1455
+ readonly fileName: string;
1456
+ readonly lineNumber: number;
1457
+ readonly columnNumber: number;
1458
+ }[];
1459
+ readonly clients?: readonly string[] | null;
1460
+ readonly notes?: string | null;
1461
+ readonly provenance?: string | null;
1462
+ readonly fixtures?: readonly string[] | null;
1463
+ readonly occurrences?: readonly (readonly {
1464
+ readonly fileName: string;
1465
+ readonly lineNumber: number;
1466
+ readonly columnNumber: number;
1467
+ }[])[] | null;
1468
+ readonly compatibility?: {
1469
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1470
+ readonly title: string;
1471
+ } | null;
1472
+ }[];
1473
+ }, 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>;
1474
+ export declare const checkWorkspace: (input: {
1475
+ readonly id: string;
1476
+ readonly expectedRevision: string;
1477
+ }) => import("effect/Effect").Effect<{
1478
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
2030
1479
  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;
1480
+ readonly entryPath: string;
1481
+ readonly declaration: {
1482
+ readonly codeDigest: string;
1483
+ readonly templateId: string;
1484
+ readonly input: {
1485
+ readonly schema: {
1486
+ readonly [x: string]: import("./generated").JsonValue;
1487
+ };
1488
+ readonly schemaDigest: string;
1489
+ readonly contractDigest: string;
1490
+ };
1491
+ readonly runtime: {
1492
+ readonly now?: number;
1493
+ readonly randomSeed?: number;
1494
+ };
1495
+ readonly fixtures: readonly string[];
1496
+ } | null;
1497
+ readonly diagnostics: readonly {
1498
+ readonly code: string;
1499
+ readonly severity: "error" | "info" | "warning";
1500
+ readonly message: string;
1501
+ readonly origins: readonly {
1502
+ readonly fileName: string;
1503
+ readonly lineNumber: number;
1504
+ readonly columnNumber: number;
1505
+ }[];
1506
+ readonly clients?: readonly string[] | null;
1507
+ readonly notes?: string | null;
1508
+ readonly provenance?: string | null;
1509
+ readonly fixtures?: readonly string[] | null;
1510
+ readonly occurrences?: readonly (readonly {
1511
+ readonly fileName: string;
1512
+ readonly lineNumber: number;
1513
+ readonly columnNumber: number;
1514
+ }[])[] | null;
1515
+ readonly compatibility?: {
1516
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1517
+ readonly title: string;
1518
+ } | null;
1519
+ }[];
1520
+ readonly incompatibilities: readonly {
1521
+ readonly code: string;
1522
+ readonly severity: "error" | "info" | "warning";
1523
+ readonly message: string;
1524
+ readonly origins: readonly {
1525
+ readonly fileName: string;
1526
+ readonly lineNumber: number;
1527
+ readonly columnNumber: number;
1528
+ }[];
1529
+ readonly clients?: readonly string[] | null;
1530
+ readonly notes?: string | null;
1531
+ readonly provenance?: string | null;
1532
+ readonly fixtures?: readonly string[] | null;
1533
+ readonly occurrences?: readonly (readonly {
1534
+ readonly fileName: string;
1535
+ readonly lineNumber: number;
1536
+ readonly columnNumber: number;
1537
+ }[])[] | null;
1538
+ readonly compatibility?: {
1539
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1540
+ readonly title: string;
1541
+ } | null;
1542
+ }[];
1543
+ }, 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>;
1544
+ export declare const renderWorkspaceFixture: (input: {
1545
+ readonly id: string;
1546
+ readonly expectedRevision: string;
1547
+ readonly fixture: string;
2058
1548
  }) => import("effect/Effect").Effect<{
2059
- readonly messageId: string;
2060
- readonly status: string;
1549
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1550
+ readonly revision: string;
1551
+ readonly entryPath: string;
1552
+ readonly declaration: {
1553
+ readonly codeDigest: string;
1554
+ readonly templateId: string;
1555
+ readonly input: {
1556
+ readonly schema: {
1557
+ readonly [x: string]: import("./generated").JsonValue;
1558
+ };
1559
+ readonly schemaDigest: string;
1560
+ readonly contractDigest: string;
1561
+ };
1562
+ readonly runtime: {
1563
+ readonly now?: number;
1564
+ readonly randomSeed?: number;
1565
+ };
1566
+ readonly fixtures: readonly string[];
1567
+ } | null;
1568
+ readonly diagnostics: readonly {
1569
+ readonly code: string;
1570
+ readonly severity: "error" | "info" | "warning";
1571
+ readonly message: string;
1572
+ readonly origins: readonly {
1573
+ readonly fileName: string;
1574
+ readonly lineNumber: number;
1575
+ readonly columnNumber: number;
1576
+ }[];
1577
+ readonly clients?: readonly string[] | null;
1578
+ readonly notes?: string | null;
1579
+ readonly provenance?: string | null;
1580
+ readonly fixtures?: readonly string[] | null;
1581
+ readonly occurrences?: readonly (readonly {
1582
+ readonly fileName: string;
1583
+ readonly lineNumber: number;
1584
+ readonly columnNumber: number;
1585
+ }[])[] | null;
1586
+ readonly compatibility?: {
1587
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1588
+ readonly title: string;
1589
+ } | null;
1590
+ }[];
1591
+ readonly incompatibilities: readonly {
1592
+ readonly code: string;
1593
+ readonly severity: "error" | "info" | "warning";
1594
+ readonly message: string;
1595
+ readonly origins: readonly {
1596
+ readonly fileName: string;
1597
+ readonly lineNumber: number;
1598
+ readonly columnNumber: number;
1599
+ }[];
1600
+ readonly clients?: readonly string[] | null;
1601
+ readonly notes?: string | null;
1602
+ readonly provenance?: string | null;
1603
+ readonly fixtures?: readonly string[] | null;
1604
+ readonly occurrences?: readonly (readonly {
1605
+ readonly fileName: string;
1606
+ readonly lineNumber: number;
1607
+ readonly columnNumber: number;
1608
+ }[])[] | null;
1609
+ readonly compatibility?: {
1610
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1611
+ readonly title: string;
1612
+ } | null;
1613
+ }[];
1614
+ readonly fixture: string;
2061
1615
  readonly rendered: {
1616
+ readonly subject: string;
1617
+ readonly preheader?: string;
1618
+ readonly html: string;
2062
1619
  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;
1620
+ readonly selections: readonly {
1621
+ readonly instancePath: string;
1622
+ readonly tag: string;
1623
+ readonly origins: readonly {
1624
+ readonly fileName: string;
1625
+ readonly lineNumber: number;
1626
+ readonly columnNumber: number;
1627
+ }[];
1628
+ readonly authored: boolean;
1629
+ readonly occurrence: number;
1630
+ readonly occurrences: number;
1631
+ readonly parentPath?: string;
1632
+ readonly start: number;
1633
+ readonly end: number;
1634
+ }[];
1635
+ } | null;
1636
+ }, 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>;
1637
+ export declare const publish: (input: {
1638
+ readonly id: string;
1639
+ readonly projectId: string;
1640
+ readonly commitSha: string;
1641
+ readonly entryPath: string;
1642
+ readonly expectedWorkspaceRevision: string;
2071
1643
  }) => 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;
1644
+ readonly id: string & import("effect/Brand").Brand<"TemplatePublicationId">;
1645
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1646
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1647
+ readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1648
+ readonly inputContractId: string & import("effect/Brand").Brand<"TemplateInputContractId">;
1649
+ readonly commitSha: string;
1650
+ readonly treeSha: string;
1651
+ readonly entryPath: string;
1652
+ readonly buildIdentity: string;
1653
+ readonly manifest: {
1654
+ readonly templateKey: string;
1655
+ readonly executable: {
1656
+ readonly codeDigest: string;
1657
+ readonly bytes: number;
1658
+ };
1659
+ readonly input: {
1660
+ readonly schemaDigest: string;
1661
+ readonly contractDigest: string;
1662
+ };
1663
+ readonly environment: {
1664
+ readonly locale: string;
1665
+ readonly timeZone: "UTC";
1666
+ readonly now?: number;
1667
+ readonly randomSeed?: number;
1668
+ readonly compiler: string;
1669
+ readonly runtime: string;
1670
+ readonly checker: string;
1671
+ readonly lockKind: "bun" | "npm";
1672
+ readonly lockDigest: string;
1673
+ readonly digest: string;
1674
+ };
1675
+ readonly assets: {
1676
+ readonly base: string;
1677
+ readonly entries: readonly {
1678
+ readonly path: string;
1679
+ readonly fileName: string;
1680
+ readonly digest: string;
1681
+ readonly bytes: number;
1682
+ readonly contentType: string;
1683
+ readonly url: string;
1684
+ }[];
1685
+ };
1686
+ readonly source: {
1687
+ readonly commitSha: string;
1688
+ readonly treeSha: string;
1689
+ readonly entryPath: string;
1690
+ readonly treeDigest: string;
1691
+ };
1692
+ };
1693
+ readonly executable: {
1694
+ readonly key: string;
1695
+ readonly digest: string;
1696
+ };
1697
+ readonly assets: readonly {
1698
+ readonly path: string;
1699
+ readonly fileName: string;
1700
+ readonly digest: string;
1701
+ readonly bytes: number;
1702
+ readonly contentType: string;
1703
+ readonly url: string;
2084
1704
  }[];
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;
1705
+ readonly warnings: readonly {
1706
+ readonly code: string;
1707
+ readonly severity: "error" | "info" | "warning";
1708
+ readonly message: string;
1709
+ readonly origins: readonly {
1710
+ readonly fileName: string;
1711
+ readonly lineNumber: number;
1712
+ readonly columnNumber: number;
1713
+ }[];
1714
+ readonly clients?: readonly string[] | null;
1715
+ readonly notes?: string | null;
1716
+ readonly provenance?: string | null;
1717
+ readonly fixtures?: readonly string[] | null;
1718
+ readonly occurrences?: readonly (readonly {
1719
+ readonly fileName: string;
1720
+ readonly lineNumber: number;
1721
+ readonly columnNumber: number;
1722
+ }[])[] | null;
1723
+ readonly compatibility?: {
1724
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1725
+ readonly title: string;
1726
+ } | null;
1727
+ }[];
1728
+ readonly incompatibilities: readonly {
1729
+ readonly code: string;
1730
+ readonly severity: "error" | "info" | "warning";
1731
+ readonly message: string;
1732
+ readonly origins: readonly {
1733
+ readonly fileName: string;
1734
+ readonly lineNumber: number;
1735
+ readonly columnNumber: number;
1736
+ }[];
1737
+ readonly clients?: readonly string[] | null;
1738
+ readonly notes?: string | null;
1739
+ readonly provenance?: string | null;
1740
+ readonly fixtures?: readonly string[] | null;
1741
+ readonly occurrences?: readonly (readonly {
1742
+ readonly fileName: string;
1743
+ readonly lineNumber: number;
1744
+ readonly columnNumber: number;
1745
+ }[])[] | null;
1746
+ readonly compatibility?: {
1747
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1748
+ readonly title: string;
1749
+ } | null;
1750
+ }[];
1751
+ readonly status: string;
1752
+ readonly publishedAt: string;
1753
+ readonly publishedBy: string | null;
1754
+ readonly createdAt: string;
1755
+ }, 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>;
1756
+ export declare const getPublication: (input: {
1757
+ readonly id: string;
1758
+ readonly publicationId: string;
2100
1759
  }) => import("effect/Effect").Effect<{
2101
- readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1760
+ readonly id: string & import("effect/Brand").Brand<"TemplatePublicationId">;
2102
1761
  readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
2103
- readonly channel: "email";
2104
- readonly source: string;
2105
- readonly revision: string;
2106
- readonly sourceDigest: string;
1762
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1763
+ readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1764
+ readonly inputContractId: string & import("effect/Brand").Brand<"TemplateInputContractId">;
1765
+ readonly commitSha: string;
1766
+ readonly treeSha: string;
1767
+ readonly entryPath: string;
1768
+ readonly buildIdentity: string;
1769
+ readonly manifest: {
1770
+ readonly templateKey: string;
1771
+ readonly executable: {
1772
+ readonly codeDigest: string;
1773
+ readonly bytes: number;
1774
+ };
1775
+ readonly input: {
1776
+ readonly schemaDigest: string;
1777
+ readonly contractDigest: string;
1778
+ };
1779
+ readonly environment: {
1780
+ readonly locale: string;
1781
+ readonly timeZone: "UTC";
1782
+ readonly now?: number;
1783
+ readonly randomSeed?: number;
1784
+ readonly compiler: string;
1785
+ readonly runtime: string;
1786
+ readonly checker: string;
1787
+ readonly lockKind: "bun" | "npm";
1788
+ readonly lockDigest: string;
1789
+ readonly digest: string;
1790
+ };
1791
+ readonly assets: {
1792
+ readonly base: string;
1793
+ readonly entries: readonly {
1794
+ readonly path: string;
1795
+ readonly fileName: string;
1796
+ readonly digest: string;
1797
+ readonly bytes: number;
1798
+ readonly contentType: string;
1799
+ readonly url: string;
1800
+ }[];
1801
+ };
1802
+ readonly source: {
1803
+ readonly commitSha: string;
1804
+ readonly treeSha: string;
1805
+ readonly entryPath: string;
1806
+ readonly treeDigest: string;
1807
+ };
1808
+ };
1809
+ readonly executable: {
1810
+ readonly key: string;
1811
+ readonly digest: string;
1812
+ };
1813
+ readonly assets: readonly {
1814
+ readonly path: string;
1815
+ readonly fileName: string;
1816
+ readonly digest: string;
1817
+ readonly bytes: number;
1818
+ readonly contentType: string;
1819
+ readonly url: string;
1820
+ }[];
1821
+ readonly warnings: readonly {
1822
+ readonly code: string;
1823
+ readonly severity: "error" | "info" | "warning";
1824
+ readonly message: string;
1825
+ readonly origins: readonly {
1826
+ readonly fileName: string;
1827
+ readonly lineNumber: number;
1828
+ readonly columnNumber: number;
1829
+ }[];
1830
+ readonly clients?: readonly string[] | null;
1831
+ readonly notes?: string | null;
1832
+ readonly provenance?: string | null;
1833
+ readonly fixtures?: readonly string[] | null;
1834
+ readonly occurrences?: readonly (readonly {
1835
+ readonly fileName: string;
1836
+ readonly lineNumber: number;
1837
+ readonly columnNumber: number;
1838
+ }[])[] | null;
1839
+ readonly compatibility?: {
1840
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1841
+ readonly title: string;
1842
+ } | null;
1843
+ }[];
1844
+ readonly incompatibilities: readonly {
1845
+ readonly code: string;
1846
+ readonly severity: "error" | "info" | "warning";
1847
+ readonly message: string;
1848
+ readonly origins: readonly {
1849
+ readonly fileName: string;
1850
+ readonly lineNumber: number;
1851
+ readonly columnNumber: number;
1852
+ }[];
1853
+ readonly clients?: readonly string[] | null;
1854
+ readonly notes?: string | null;
1855
+ readonly provenance?: string | null;
1856
+ readonly fixtures?: readonly string[] | null;
1857
+ readonly occurrences?: readonly (readonly {
1858
+ readonly fileName: string;
1859
+ readonly lineNumber: number;
1860
+ readonly columnNumber: number;
1861
+ }[])[] | null;
1862
+ readonly compatibility?: {
1863
+ readonly assessment: "degradation" | "not-applicable" | "risk" | "unverified";
1864
+ readonly title: string;
1865
+ } | null;
1866
+ }[];
1867
+ readonly status: string;
1868
+ readonly publishedAt: string;
1869
+ readonly publishedBy: string | null;
2107
1870
  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";
1871
+ }, 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>;
1872
+ export declare const listInputContracts: (input: {
1873
+ readonly id: string;
1874
+ }) => import("effect/Effect").Effect<readonly {
1875
+ readonly id: string & import("effect/Brand").Brand<"TemplateInputContractId">;
1876
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1877
+ readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1878
+ readonly version: number;
1879
+ readonly validationDigest: string;
1880
+ readonly schema: {
1881
+ readonly [x: string]: import("./generated").JsonValue;
2112
1882
  };
2113
- readonly updatedBy: {
2114
- readonly userId: string & import("effect/Brand").Brand<"UserId">;
2115
- readonly via: "agent" | "api" | "mcp";
1883
+ readonly createdAt: string;
1884
+ }[], 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>;
1885
+ export declare const getInputContract: (input: {
1886
+ readonly id: string;
1887
+ readonly inputContractId: string;
1888
+ }) => import("effect/Effect").Effect<{
1889
+ readonly id: string & import("effect/Brand").Brand<"TemplateInputContractId">;
1890
+ readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1891
+ readonly templateId: string & import("effect/Brand").Brand<"TemplateId">;
1892
+ readonly version: number;
1893
+ readonly validationDigest: string;
1894
+ readonly schema: {
1895
+ readonly [x: string]: import("./generated").JsonValue;
2116
1896
  };
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>;
1897
+ readonly createdAt: string;
1898
+ }, 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>;
1899
+ export declare const diffWorkspace: (input: {
1900
+ readonly id: string;
1901
+ readonly expectedRevision: string;
1902
+ }) => import("effect/Effect").Effect<{
1903
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1904
+ readonly baseCommit: string;
1905
+ readonly revision: string;
1906
+ readonly changes: readonly {
1907
+ readonly path: string;
1908
+ readonly before: string | null;
1909
+ readonly after: string | null;
1910
+ readonly status: "added" | "deleted" | "modified";
1911
+ }[];
1912
+ readonly assetChanges: readonly {
1913
+ readonly path: string;
1914
+ readonly status: "added" | "deleted" | "modified";
1915
+ }[];
1916
+ }, 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>;
1917
+ export declare const workspaceHistory: (input: {
1918
+ readonly id: string;
1919
+ readonly limit?: string | null | undefined;
1920
+ }) => import("effect/Effect").Effect<{
1921
+ readonly projectId: string & import("effect/Brand").Brand<"TemplateProjectId">;
1922
+ readonly head: string;
1923
+ readonly commits: readonly {
1924
+ readonly commit: string;
1925
+ readonly tree: string;
1926
+ readonly parentCommit: string | null;
1927
+ readonly message: string;
1928
+ readonly committedAt: string;
1929
+ }[];
1930
+ readonly publication: {
1931
+ readonly id: string & import("effect/Brand").Brand<"TemplatePublicationId">;
1932
+ readonly commit: string;
1933
+ } | null;
1934
+ }, 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>;