@uniformdev/canvas 17.0.0 → 17.1.1-alpha.152

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.
package/dist/index.d.ts CHANGED
@@ -1,7 +1,9 @@
1
- import { C as ComponentInstance, a as ComponentParameter, b as CompositionGetParameters, c as CompositionPutParameters, d as CompositionDeleteParameters, e as ComponentDefinitionGetParameters, f as ComponentDefinitionPutParameters, g as ComponentDefinitionDeleteParameters, P as PreviewEventBus } from './createEventBus-aea3860f.js';
2
- export { A as CanvasDefinitions, B as ChannelSubscription, r as ComponentDefinition, k as ComponentDefinitionAPIDeleteRequest, j as ComponentDefinitionAPIPutRequest, i as ComponentDefinitionAPIResponse, g as ComponentDefinitionDeleteParameters, e as ComponentDefinitionGetParameters, h as ComponentDefinitionGetResponse, l as ComponentDefinitionListAPIOptions, m as ComponentDefinitionParameter, q as ComponentDefinitionPermission, f as ComponentDefinitionPutParameters, p as ComponentDefinitionSlot, o as ComponentDefinitionSlugSettings, n as ComponentDefinitionVariant, C as ComponentInstance, a as ComponentParameter, z as ComponentParameterBinding, w as CompositionAPIDeleteRequest, y as CompositionAPIOptions, v as CompositionAPIResponse, d as CompositionDeleteParameters, u as CompositionGetListResponse, b as CompositionGetParameters, t as CompositionGetResponse, x as CompositionListAPIResponse, c as CompositionPutParameters, s as CreatingComponentDefinition, P as PreviewEventBus, R as RootComponentInstance, D as createEventBus } from './createEventBus-aea3860f.js';
1
+ import { C as ComponentInstance, a as ComponentParameter, c as components, b as CompositionGetParameters, d as CompositionPutParameters, e as CompositionDeleteParameters, f as ComponentDefinitionGetParameters, g as ComponentDefinitionPutParameters, h as ComponentDefinitionDeleteParameters, P as PreviewEventBus } from './createEventBus-b9cdb6ff.js';
2
+ export { H as CanvasDefinitions, I as ChannelSubscription, s as ComponentDefinition, l as ComponentDefinitionAPIDeleteRequest, k as ComponentDefinitionAPIPutRequest, j as ComponentDefinitionAPIResponse, h as ComponentDefinitionDeleteParameters, f as ComponentDefinitionGetParameters, i as ComponentDefinitionGetResponse, m as ComponentDefinitionListAPIOptions, n as ComponentDefinitionParameter, r as ComponentDefinitionPermission, g as ComponentDefinitionPutParameters, q as ComponentDefinitionSlot, p as ComponentDefinitionSlugSettings, o as ComponentDefinitionVariant, C as ComponentInstance, a as ComponentParameter, D as ComponentParameterBinding, z as CompositionAPIDeleteRequest, B as CompositionAPIOptions, y as CompositionAPIResponse, G as CompositionDataDefinition, F as CompositionDataDefinitions, E as CompositionDataVariables, e as CompositionDeleteParameters, x as CompositionGetListResponse, u as CompositionGetOrderBy, b as CompositionGetParameters, v as CompositionGetResponse, A as CompositionListAPIResponse, d as CompositionPutParameters, w as CompositionUIStatus, t as CreatingComponentDefinition, P as PreviewEventBus, R as RootComponentInstance, J as createEventBus } from './createEventBus-b9cdb6ff.js';
3
3
  import { Options } from 'p-throttle';
4
4
  import { Options as Options$1 } from 'p-retry';
5
+ import { ClientOptions, ApiClient, ExceptProject, ApiClientError } from '@uniformdev/context/api';
6
+ export { ApiClientError } from '@uniformdev/context/api';
5
7
  import { PersonalizedVariant, TestVariant } from '@uniformdev/context';
6
8
  import 'pusher-js';
7
9
 
@@ -83,6 +85,1392 @@ declare type ComponentParameterEnhancer<TRawValue = unknown, TOutputValue = unkn
83
85
  completeAll?: () => Promise<number>;
84
86
  };
85
87
 
88
+ /**
89
+ * This file was auto-generated by openapi-typescript.
90
+ * Do not make direct changes to the file.
91
+ */
92
+ interface paths$2 {
93
+ "/api/v1/data-types": {
94
+ get: {
95
+ parameters: {
96
+ query: {
97
+ projectId: string;
98
+ };
99
+ };
100
+ responses: {
101
+ /** OK */
102
+ 200: {
103
+ content: {
104
+ "application/json": {
105
+ results: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataType"][];
106
+ };
107
+ };
108
+ };
109
+ 400: external$2["swagger.yml"]["components"]["responses"]["BadRequestError"];
110
+ 401: external$2["swagger.yml"]["components"]["responses"]["UnauthorizedError"];
111
+ 403: external$2["swagger.yml"]["components"]["responses"]["ForbiddenError"];
112
+ 429: external$2["swagger.yml"]["components"]["responses"]["RateLimitError"];
113
+ 500: external$2["swagger.yml"]["components"]["responses"]["InternalServerError"];
114
+ };
115
+ };
116
+ put: {
117
+ responses: {
118
+ /** OK */
119
+ 204: never;
120
+ 400: external$2["swagger.yml"]["components"]["responses"]["BadRequestError"];
121
+ 401: external$2["swagger.yml"]["components"]["responses"]["UnauthorizedError"];
122
+ 403: external$2["swagger.yml"]["components"]["responses"]["ForbiddenError"];
123
+ 429: external$2["swagger.yml"]["components"]["responses"]["RateLimitError"];
124
+ 500: external$2["swagger.yml"]["components"]["responses"]["InternalServerError"];
125
+ };
126
+ requestBody: {
127
+ content: {
128
+ "application/json": {
129
+ data: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataType"];
130
+ /** Format: uuid */
131
+ projectId: string;
132
+ };
133
+ };
134
+ };
135
+ };
136
+ delete: {
137
+ responses: {
138
+ /** OK */
139
+ 204: never;
140
+ 400: external$2["swagger.yml"]["components"]["responses"]["BadRequestError"];
141
+ 401: external$2["swagger.yml"]["components"]["responses"]["UnauthorizedError"];
142
+ 403: external$2["swagger.yml"]["components"]["responses"]["ForbiddenError"];
143
+ 429: external$2["swagger.yml"]["components"]["responses"]["RateLimitError"];
144
+ 500: external$2["swagger.yml"]["components"]["responses"]["InternalServerError"];
145
+ };
146
+ requestBody: {
147
+ content: {
148
+ "application/json": {
149
+ typeId: string;
150
+ /** Format: uuid */
151
+ projectId: string;
152
+ };
153
+ };
154
+ };
155
+ };
156
+ };
157
+ }
158
+ interface external$2 {
159
+ "swagger.yml": {
160
+ paths: {};
161
+ components: {
162
+ schemas: {
163
+ Error: {
164
+ /** @description Error message(s) that occurred while processing the request */
165
+ errorMessage?: string[] | string;
166
+ };
167
+ };
168
+ responses: {
169
+ /** Request input validation failed */
170
+ BadRequestError: {
171
+ content: {
172
+ "application/json": external$2["swagger.yml"]["components"]["schemas"]["Error"];
173
+ };
174
+ };
175
+ /** API key or token was not valid */
176
+ UnauthorizedError: {
177
+ content: {
178
+ "application/json": external$2["swagger.yml"]["components"]["schemas"]["Error"];
179
+ };
180
+ };
181
+ /** Permission was denied */
182
+ ForbiddenError: {
183
+ content: {
184
+ "application/json": external$2["swagger.yml"]["components"]["schemas"]["Error"];
185
+ };
186
+ };
187
+ /** Resource not found */
188
+ NotFoundError: {
189
+ content: {
190
+ "application/json": external$2["swagger.yml"]["components"]["schemas"]["Error"];
191
+ };
192
+ };
193
+ /** Too many requests in allowed time period */
194
+ RateLimitError: unknown;
195
+ /** Execution error occurred */
196
+ InternalServerError: unknown;
197
+ };
198
+ };
199
+ operations: {};
200
+ };
201
+ "uniform-canvas-types.swagger.yml": {
202
+ paths: {};
203
+ components: {
204
+ schemas: {
205
+ /** @description Public ID (used in code). Do not change after creation. */
206
+ PublicIdProperty: string;
207
+ /** @description The definition of a component parameter */
208
+ ComponentDefinitionParameter: {
209
+ id: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
210
+ /** @description Friendly name of the parameter */
211
+ name: string;
212
+ /** @description Appears next to the parameter in the Composition editor */
213
+ helpText?: string;
214
+ /** @description Type name of the parameter (provided by a Uniform integration) */
215
+ type: string;
216
+ /** @description The configuration object for the type (type-specific) */
217
+ typeConfig?: unknown;
218
+ };
219
+ /** @description The definition of a named component slot that can contain other components */
220
+ ComponentDefinitionSlot: {
221
+ id: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
222
+ /** @description Friendly name of the slot */
223
+ name: string;
224
+ /** @description A list of component definition public IDs that are allowed in this named slot */
225
+ allowedComponents: string[];
226
+ /**
227
+ * @description Whether this slot inherits its allowed components from the parent slot it lives in. If true, allowedComponents is irrelevant.
228
+ * @default false
229
+ */
230
+ inheritAllowedComponents: boolean;
231
+ /** @description Minimum valid number of components in this slot */
232
+ minComponents?: number;
233
+ /** @description Maximum valid number of components in this slot */
234
+ maxComponents?: number;
235
+ };
236
+ /** @description The definition of a composition's slug settings */
237
+ ComponentDefinitionSlugSettings: {
238
+ /**
239
+ * @description Whether the slug is required
240
+ * no: slug is optional
241
+ * yes: slug is required
242
+ * disabled: slug is disabled and will not be shown in the editor
243
+ *
244
+ * @default no
245
+ * @enum {string}
246
+ */
247
+ required?: "no" | "yes" | "disabled";
248
+ /**
249
+ * @description Slug uniqueness configuration.
250
+ * no = no unique constraint
251
+ * local = must be unique within this component type
252
+ * global = must be unique across all component types
253
+ *
254
+ * @enum {string}
255
+ */
256
+ unique?: "no" | "local" | "global";
257
+ /** @description Regular expression slugs must match */
258
+ regularExpression?: string;
259
+ /**
260
+ * @description Custom error message when regular expression validation fails.
261
+ * Has no effect if `regularExpression` is not set.
262
+ */
263
+ regularExpressionMessage?: string;
264
+ };
265
+ /** @description The definition of a component variant */
266
+ ComponentDefinitionVariant: {
267
+ id: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
268
+ /** @description Friendly name of the variant */
269
+ name: string;
270
+ };
271
+ /** @description Permission set for a component defintion */
272
+ ComponentDefinitionPermission: {
273
+ roleId: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
274
+ /**
275
+ * @description Permission type for this permission ComponentDefinition:
276
+ * read | write | delete
277
+ *
278
+ * @enum {string}
279
+ */
280
+ permission: "read" | "write" | "delete";
281
+ /** @description State of the component that this permission applies to */
282
+ state: number;
283
+ };
284
+ /** @description Defines a component type that can live on a Composition */
285
+ ComponentDefinition: {
286
+ id: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
287
+ /** @description Friendly name of the component definition */
288
+ name: string;
289
+ /**
290
+ * @description Icon name or URL for the component definition (e.g. 'screen' or 'https://s3/my-component.jpg')
291
+ * @default screen
292
+ */
293
+ icon?: string;
294
+ /**
295
+ * @description The public ID of the parameter whose value should be used to create a display title for this component in the UI.
296
+ * The parameter type must support being used as a title parameter for this to work.
297
+ */
298
+ titleParameter?: string | null;
299
+ /**
300
+ * @description Whether this component type can be the root of a composition. If false, this component is only used within slots on other components.
301
+ * @default false
302
+ */
303
+ canBeComposition?: boolean;
304
+ /** @description The parameters for this component. Parameters are key-value pairs that can be anything from text values to links to CMS entries. */
305
+ parameters?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionParameter"][];
306
+ /**
307
+ * @description if this component uses team permissions or custom permissions
308
+ * @default true
309
+ */
310
+ useTeamPermissions?: boolean;
311
+ /** @description Custom role permissions for this component definition */
312
+ permissions?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionPermission"][];
313
+ /** @description The named slots for this component; placement areas where arrays of other components can be added. */
314
+ slots?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionSlot"][];
315
+ slugSettings?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionSlugSettings"];
316
+ /** @description Default component instance value */
317
+ defaults?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"] | null;
318
+ /** @description Named variants for this component; enables creation of visual variants that use the same parameter data */
319
+ variants?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionVariant"][];
320
+ /** @description Created date string for this definition (ignored for writes) */
321
+ created?: string;
322
+ /** @description Last modified date string for this definition (ignored for writes) */
323
+ updated?: string;
324
+ };
325
+ /** @description Defines an editable parameter on a component. */
326
+ ComponentParameter: {
327
+ /** @description The value of the parameter. Any JSON-serializable value is acceptable. */
328
+ value: unknown;
329
+ /** @description The type of the parameter. Determines how it is displayed when editing, and tells the consumer how to process it. */
330
+ type: string;
331
+ binding?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameterBinding"];
332
+ };
333
+ /**
334
+ * @deprecated
335
+ * @description Defines a binding from a resource data value to a component parameter value. Do not use.
336
+ */
337
+ ComponentParameterBinding: {
338
+ /** @description A JSON Pointer expression that defines the binding directly to the parameter value */
339
+ pointer: string;
340
+ /**
341
+ * @description The syntax of the binding (currently always 'jptr')
342
+ * @enum {string}
343
+ */
344
+ syntax: "jptr";
345
+ /**
346
+ * @description Whether the binding should cause an error if it cannot be resolved.
347
+ * If true, and the binding cannot be resolved, an error will be returned by the binding process.
348
+ * If false, and the binding cannot be resolved, the parameter will be removed from the bound composition.
349
+ *
350
+ * @default false
351
+ */
352
+ required?: boolean;
353
+ };
354
+ /** @description Defines the shape of a component instance served by the composition API. */
355
+ ComponentInstance: {
356
+ /** @description Type of the component instance (public_id of its definition) */
357
+ type: string;
358
+ /** @description Component parameter values for the component instance */
359
+ parameters?: {
360
+ [key: string]: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameter"];
361
+ };
362
+ /** @description Public ID of alternate visual appearance for this component, if any selected */
363
+ variant?: string;
364
+ /** @description Slots containing any child components */
365
+ slots?: {
366
+ [key: string]: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"][];
367
+ };
368
+ /** @description Unique identifier of the component within the composition. This is not set unless specifically requested via `withComponentIDs` API parameter. */
369
+ _id?: string;
370
+ /** @description Indicates this component instance should be sourced from a pattern library pattern. */
371
+ _pattern?: string;
372
+ _data?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinitions"];
373
+ /**
374
+ * @deprecated
375
+ * @description Data definitions coming from a pattern resolved for this component. Merged with _data during resolution.
376
+ * Means nothing for PUTs; it will be ignored.
377
+ */
378
+ _patternData?: {
379
+ [key: string]: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinition"];
380
+ };
381
+ /**
382
+ * @description Describes why the pattern could not be resolved, if a pattern could not be resolved. For PUTs, this is allowed but ignored.
383
+ * CYCLIC: A cyclic pattern graph was detected, which could not be resolved because it would cause an infinite loop.
384
+ * NOTFOUND: The pattern ID referenced could not be found. It may have been deleted, or not be published yet.
385
+ * Means nothing for PUTs; it will be ignored.
386
+ *
387
+ * @enum {string}
388
+ */
389
+ _patternError?: "NOTFOUND" | "CYCLIC";
390
+ };
391
+ /** @description Defines the shape of the root component in a composition */
392
+ RootComponentInstance: {
393
+ /** @description Type of the component instance (public_id of its definition) */
394
+ type: string;
395
+ /** @description Component parameter values for the component instance */
396
+ parameters?: {
397
+ [key: string]: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameter"];
398
+ };
399
+ /** @description Public ID of alternate visual appearance for this component, if any selected */
400
+ variant?: string;
401
+ /** @description Slots containing any child components */
402
+ slots?: {
403
+ [key: string]: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"][];
404
+ };
405
+ /** @description The public UUID of the composition. */
406
+ _id: string;
407
+ /** @description Slug pattern of this component. */
408
+ _slug?: string | null;
409
+ /** @description Friendly name of this component. */
410
+ _name: string;
411
+ _data?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinitions"];
412
+ };
413
+ /**
414
+ * @deprecated
415
+ * @description Basic information about an integration data connector (i.e. "Master environment of the stable space", "Yelp API", "Sanity dev dataset"). This data is provided to list responses.
416
+ */
417
+ DataConnectionInfo: {
418
+ /** @description Public ID of the data connector */
419
+ id: string;
420
+ /** @description Display name of the data connector */
421
+ displayName: string;
422
+ /** @description The type of data connector this connects to (e.g. 'cms-items', provided by an intalled integration) */
423
+ connectorType: string;
424
+ /** @description Base resource URL of the data connector. No trailing slash. */
425
+ baseUrl?: string;
426
+ };
427
+ /**
428
+ * @deprecated
429
+ * @description An instance of an integration data connector (i.e. "Master environment of the stable space", "Yelp API", "Sanity dev dataset"). These are created in the UI and shared across a whole project.
430
+ */
431
+ DataConnection: {
432
+ /** @description Public ID of the data connector */
433
+ id: string;
434
+ /** @description Display name of the data connector */
435
+ displayName: string;
436
+ /** @description The type of data connector this connects to (e.g. 'cms-items', provided by an intalled integration) */
437
+ connectorType: string;
438
+ /** @description Base resource URL of the data connector. No trailing slash. */
439
+ baseUrl: string;
440
+ /** @description HTTP headers to pass with requests to the data connector */
441
+ headers?: {
442
+ [key: string]: string;
443
+ };
444
+ /** @description Query String parameters to pass with requests to the data connector */
445
+ parameters?: {
446
+ [key: string]: string;
447
+ };
448
+ /** @description Variables needed to make calls to the data connector */
449
+ variables?: {
450
+ [key: string]: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataVariable"];
451
+ };
452
+ /** @description Custom configuration specific to the data connection being defined */
453
+ custom?: {
454
+ [key: string]: unknown;
455
+ };
456
+ };
457
+ /**
458
+ * @deprecated
459
+ * @description A specific type of data that a Data Connection can provide (i.e. "Recipe", "Recipes List by Tag", "Yelp Reviews of My Restaurant"). These are created in the UI and shared a whole project.
460
+ */
461
+ DataType: {
462
+ /** @description Public ID of the data connector */
463
+ id: string;
464
+ /** @description Display name of the data connector */
465
+ displayName: string;
466
+ /** @description Public ID of the associated data connector */
467
+ connectionId: string;
468
+ /**
469
+ * @description A connector-specific archetype for this data type; used to select UI as well as perform any
470
+ * necessary post-processing on the response. e.g. 'cms-entry', 'cms-query'. Can be undefined if
471
+ * no special UI or processing is required.
472
+ */
473
+ archetype?: string;
474
+ /** @description Resource path, appended to the data connection's baseUrl (e.g. baseUrl = https://base.url, path = /v1/endpoint -> final URL https://base.url/v1/endpoint). Must have leading slash. */
475
+ path: string;
476
+ /** @description HTTP headers to pass with requests to the data connector */
477
+ headers?: {
478
+ [key: string]: string;
479
+ };
480
+ /** @description Query String parameters to pass with requests to the data connector */
481
+ parameters?: {
482
+ [key: string]: string;
483
+ };
484
+ /** @description Body to pass with requests to the data connector */
485
+ body?: string;
486
+ /**
487
+ * @description HTTP method to use with requests to the data connector.
488
+ * @default GET
489
+ * @enum {string}
490
+ */
491
+ method: "GET" | "POST" | "HEAD";
492
+ /** @description Variables needed to make calls to the data connector */
493
+ variables?: {
494
+ [key: string]: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataVariable"];
495
+ };
496
+ /** @description Custom configuration specific to the data connection being defined */
497
+ custom?: {
498
+ [key: string]: unknown;
499
+ };
500
+ };
501
+ /**
502
+ * @deprecated
503
+ * @description Defines the shape of a data variable on a Data Connector or Data Type
504
+ */
505
+ DataVariable: {
506
+ /** @description Display name of the data variable */
507
+ displayName?: string;
508
+ /**
509
+ * @description Type of the data variable
510
+ * @default text
511
+ */
512
+ type: string;
513
+ /** @description Default value of the data variable */
514
+ default: string;
515
+ /**
516
+ * @description Where the variable value is set. Static = set to static value by the author. Dynamic = set to a dynamic value by a runtime API request from the frontend (default is used in the editor).
517
+ * @enum {string}
518
+ */
519
+ setBy: "static" | "dynamic";
520
+ };
521
+ /**
522
+ * @deprecated
523
+ * @description Data definitions attached to this component. The property name is the key of the data in the data document.
524
+ * Note: data definitions are inherited from ancestors at runtime (and may be overridden by descendants that use the same key).
525
+ */
526
+ CompositionDataDefinitions: {
527
+ [key: string]: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinition"];
528
+ };
529
+ /**
530
+ * @deprecated
531
+ * @description Data definition attached to this component
532
+ */
533
+ CompositionDataDefinition: {
534
+ /** @description Public ID of the data type that provides this data */
535
+ type: string;
536
+ /** @description Whether this data is a pattern parameter that has to be overridden when a pattern is referenced on another composition. If this is not a pattern composition, this has no meaning and should not be used. If unspecified, the default is false. */
537
+ isPatternParameter?: boolean;
538
+ variables?: external$2["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataVariables"];
539
+ };
540
+ /**
541
+ * @deprecated
542
+ * @description Static variable values for this composition.
543
+ */
544
+ CompositionDataVariables: {
545
+ [key: string]: string;
546
+ };
547
+ };
548
+ };
549
+ operations: {};
550
+ };
551
+ }
552
+
553
+ /**
554
+ * This file was auto-generated by openapi-typescript.
555
+ * Do not make direct changes to the file.
556
+ */
557
+ interface paths$1 {
558
+ "/api/v1/data-connection": {
559
+ get: {
560
+ parameters: {
561
+ query: {
562
+ dataConnectionId: string;
563
+ projectId: string;
564
+ };
565
+ };
566
+ responses: {
567
+ /** OK */
568
+ 200: {
569
+ content: {
570
+ "application/json": {
571
+ result: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataConnection"];
572
+ };
573
+ };
574
+ };
575
+ 400: external$1["swagger.yml"]["components"]["responses"]["BadRequestError"];
576
+ 401: external$1["swagger.yml"]["components"]["responses"]["UnauthorizedError"];
577
+ 403: external$1["swagger.yml"]["components"]["responses"]["ForbiddenError"];
578
+ 429: external$1["swagger.yml"]["components"]["responses"]["RateLimitError"];
579
+ 500: external$1["swagger.yml"]["components"]["responses"]["InternalServerError"];
580
+ };
581
+ };
582
+ put: {
583
+ responses: {
584
+ /** OK */
585
+ 204: never;
586
+ 400: external$1["swagger.yml"]["components"]["responses"]["BadRequestError"];
587
+ 401: external$1["swagger.yml"]["components"]["responses"]["UnauthorizedError"];
588
+ 403: external$1["swagger.yml"]["components"]["responses"]["ForbiddenError"];
589
+ 429: external$1["swagger.yml"]["components"]["responses"]["RateLimitError"];
590
+ 500: external$1["swagger.yml"]["components"]["responses"]["InternalServerError"];
591
+ };
592
+ requestBody: {
593
+ content: {
594
+ "application/json": {
595
+ data: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataConnection"];
596
+ /** Format: uuid */
597
+ projectId: string;
598
+ /** Format: uuid */
599
+ integrationId: string;
600
+ };
601
+ };
602
+ };
603
+ };
604
+ delete: {
605
+ responses: {
606
+ /** OK */
607
+ 204: never;
608
+ 400: external$1["swagger.yml"]["components"]["responses"]["BadRequestError"];
609
+ 401: external$1["swagger.yml"]["components"]["responses"]["UnauthorizedError"];
610
+ 403: external$1["swagger.yml"]["components"]["responses"]["ForbiddenError"];
611
+ 429: external$1["swagger.yml"]["components"]["responses"]["RateLimitError"];
612
+ 500: external$1["swagger.yml"]["components"]["responses"]["InternalServerError"];
613
+ };
614
+ requestBody: {
615
+ content: {
616
+ "application/json": {
617
+ connectionId: string;
618
+ /** Format: uuid */
619
+ projectId: string;
620
+ };
621
+ };
622
+ };
623
+ };
624
+ };
625
+ }
626
+ interface external$1 {
627
+ "swagger.yml": {
628
+ paths: {};
629
+ components: {
630
+ schemas: {
631
+ Error: {
632
+ /** @description Error message(s) that occurred while processing the request */
633
+ errorMessage?: string[] | string;
634
+ };
635
+ };
636
+ responses: {
637
+ /** Request input validation failed */
638
+ BadRequestError: {
639
+ content: {
640
+ "application/json": external$1["swagger.yml"]["components"]["schemas"]["Error"];
641
+ };
642
+ };
643
+ /** API key or token was not valid */
644
+ UnauthorizedError: {
645
+ content: {
646
+ "application/json": external$1["swagger.yml"]["components"]["schemas"]["Error"];
647
+ };
648
+ };
649
+ /** Permission was denied */
650
+ ForbiddenError: {
651
+ content: {
652
+ "application/json": external$1["swagger.yml"]["components"]["schemas"]["Error"];
653
+ };
654
+ };
655
+ /** Resource not found */
656
+ NotFoundError: {
657
+ content: {
658
+ "application/json": external$1["swagger.yml"]["components"]["schemas"]["Error"];
659
+ };
660
+ };
661
+ /** Too many requests in allowed time period */
662
+ RateLimitError: unknown;
663
+ /** Execution error occurred */
664
+ InternalServerError: unknown;
665
+ };
666
+ };
667
+ operations: {};
668
+ };
669
+ "uniform-canvas-types.swagger.yml": {
670
+ paths: {};
671
+ components: {
672
+ schemas: {
673
+ /** @description Public ID (used in code). Do not change after creation. */
674
+ PublicIdProperty: string;
675
+ /** @description The definition of a component parameter */
676
+ ComponentDefinitionParameter: {
677
+ id: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
678
+ /** @description Friendly name of the parameter */
679
+ name: string;
680
+ /** @description Appears next to the parameter in the Composition editor */
681
+ helpText?: string;
682
+ /** @description Type name of the parameter (provided by a Uniform integration) */
683
+ type: string;
684
+ /** @description The configuration object for the type (type-specific) */
685
+ typeConfig?: unknown;
686
+ };
687
+ /** @description The definition of a named component slot that can contain other components */
688
+ ComponentDefinitionSlot: {
689
+ id: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
690
+ /** @description Friendly name of the slot */
691
+ name: string;
692
+ /** @description A list of component definition public IDs that are allowed in this named slot */
693
+ allowedComponents: string[];
694
+ /**
695
+ * @description Whether this slot inherits its allowed components from the parent slot it lives in. If true, allowedComponents is irrelevant.
696
+ * @default false
697
+ */
698
+ inheritAllowedComponents: boolean;
699
+ /** @description Minimum valid number of components in this slot */
700
+ minComponents?: number;
701
+ /** @description Maximum valid number of components in this slot */
702
+ maxComponents?: number;
703
+ };
704
+ /** @description The definition of a composition's slug settings */
705
+ ComponentDefinitionSlugSettings: {
706
+ /**
707
+ * @description Whether the slug is required
708
+ * no: slug is optional
709
+ * yes: slug is required
710
+ * disabled: slug is disabled and will not be shown in the editor
711
+ *
712
+ * @default no
713
+ * @enum {string}
714
+ */
715
+ required?: "no" | "yes" | "disabled";
716
+ /**
717
+ * @description Slug uniqueness configuration.
718
+ * no = no unique constraint
719
+ * local = must be unique within this component type
720
+ * global = must be unique across all component types
721
+ *
722
+ * @enum {string}
723
+ */
724
+ unique?: "no" | "local" | "global";
725
+ /** @description Regular expression slugs must match */
726
+ regularExpression?: string;
727
+ /**
728
+ * @description Custom error message when regular expression validation fails.
729
+ * Has no effect if `regularExpression` is not set.
730
+ */
731
+ regularExpressionMessage?: string;
732
+ };
733
+ /** @description The definition of a component variant */
734
+ ComponentDefinitionVariant: {
735
+ id: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
736
+ /** @description Friendly name of the variant */
737
+ name: string;
738
+ };
739
+ /** @description Permission set for a component defintion */
740
+ ComponentDefinitionPermission: {
741
+ roleId: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
742
+ /**
743
+ * @description Permission type for this permission ComponentDefinition:
744
+ * read | write | delete
745
+ *
746
+ * @enum {string}
747
+ */
748
+ permission: "read" | "write" | "delete";
749
+ /** @description State of the component that this permission applies to */
750
+ state: number;
751
+ };
752
+ /** @description Defines a component type that can live on a Composition */
753
+ ComponentDefinition: {
754
+ id: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
755
+ /** @description Friendly name of the component definition */
756
+ name: string;
757
+ /**
758
+ * @description Icon name or URL for the component definition (e.g. 'screen' or 'https://s3/my-component.jpg')
759
+ * @default screen
760
+ */
761
+ icon?: string;
762
+ /**
763
+ * @description The public ID of the parameter whose value should be used to create a display title for this component in the UI.
764
+ * The parameter type must support being used as a title parameter for this to work.
765
+ */
766
+ titleParameter?: string | null;
767
+ /**
768
+ * @description Whether this component type can be the root of a composition. If false, this component is only used within slots on other components.
769
+ * @default false
770
+ */
771
+ canBeComposition?: boolean;
772
+ /** @description The parameters for this component. Parameters are key-value pairs that can be anything from text values to links to CMS entries. */
773
+ parameters?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionParameter"][];
774
+ /**
775
+ * @description if this component uses team permissions or custom permissions
776
+ * @default true
777
+ */
778
+ useTeamPermissions?: boolean;
779
+ /** @description Custom role permissions for this component definition */
780
+ permissions?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionPermission"][];
781
+ /** @description The named slots for this component; placement areas where arrays of other components can be added. */
782
+ slots?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionSlot"][];
783
+ slugSettings?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionSlugSettings"];
784
+ /** @description Default component instance value */
785
+ defaults?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"] | null;
786
+ /** @description Named variants for this component; enables creation of visual variants that use the same parameter data */
787
+ variants?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionVariant"][];
788
+ /** @description Created date string for this definition (ignored for writes) */
789
+ created?: string;
790
+ /** @description Last modified date string for this definition (ignored for writes) */
791
+ updated?: string;
792
+ };
793
+ /** @description Defines an editable parameter on a component. */
794
+ ComponentParameter: {
795
+ /** @description The value of the parameter. Any JSON-serializable value is acceptable. */
796
+ value: unknown;
797
+ /** @description The type of the parameter. Determines how it is displayed when editing, and tells the consumer how to process it. */
798
+ type: string;
799
+ binding?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameterBinding"];
800
+ };
801
+ /**
802
+ * @deprecated
803
+ * @description Defines a binding from a resource data value to a component parameter value. Do not use.
804
+ */
805
+ ComponentParameterBinding: {
806
+ /** @description A JSON Pointer expression that defines the binding directly to the parameter value */
807
+ pointer: string;
808
+ /**
809
+ * @description The syntax of the binding (currently always 'jptr')
810
+ * @enum {string}
811
+ */
812
+ syntax: "jptr";
813
+ /**
814
+ * @description Whether the binding should cause an error if it cannot be resolved.
815
+ * If true, and the binding cannot be resolved, an error will be returned by the binding process.
816
+ * If false, and the binding cannot be resolved, the parameter will be removed from the bound composition.
817
+ *
818
+ * @default false
819
+ */
820
+ required?: boolean;
821
+ };
822
+ /** @description Defines the shape of a component instance served by the composition API. */
823
+ ComponentInstance: {
824
+ /** @description Type of the component instance (public_id of its definition) */
825
+ type: string;
826
+ /** @description Component parameter values for the component instance */
827
+ parameters?: {
828
+ [key: string]: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameter"];
829
+ };
830
+ /** @description Public ID of alternate visual appearance for this component, if any selected */
831
+ variant?: string;
832
+ /** @description Slots containing any child components */
833
+ slots?: {
834
+ [key: string]: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"][];
835
+ };
836
+ /** @description Unique identifier of the component within the composition. This is not set unless specifically requested via `withComponentIDs` API parameter. */
837
+ _id?: string;
838
+ /** @description Indicates this component instance should be sourced from a pattern library pattern. */
839
+ _pattern?: string;
840
+ _data?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinitions"];
841
+ /**
842
+ * @deprecated
843
+ * @description Data definitions coming from a pattern resolved for this component. Merged with _data during resolution.
844
+ * Means nothing for PUTs; it will be ignored.
845
+ */
846
+ _patternData?: {
847
+ [key: string]: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinition"];
848
+ };
849
+ /**
850
+ * @description Describes why the pattern could not be resolved, if a pattern could not be resolved. For PUTs, this is allowed but ignored.
851
+ * CYCLIC: A cyclic pattern graph was detected, which could not be resolved because it would cause an infinite loop.
852
+ * NOTFOUND: The pattern ID referenced could not be found. It may have been deleted, or not be published yet.
853
+ * Means nothing for PUTs; it will be ignored.
854
+ *
855
+ * @enum {string}
856
+ */
857
+ _patternError?: "NOTFOUND" | "CYCLIC";
858
+ };
859
+ /** @description Defines the shape of the root component in a composition */
860
+ RootComponentInstance: {
861
+ /** @description Type of the component instance (public_id of its definition) */
862
+ type: string;
863
+ /** @description Component parameter values for the component instance */
864
+ parameters?: {
865
+ [key: string]: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameter"];
866
+ };
867
+ /** @description Public ID of alternate visual appearance for this component, if any selected */
868
+ variant?: string;
869
+ /** @description Slots containing any child components */
870
+ slots?: {
871
+ [key: string]: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"][];
872
+ };
873
+ /** @description The public UUID of the composition. */
874
+ _id: string;
875
+ /** @description Slug pattern of this component. */
876
+ _slug?: string | null;
877
+ /** @description Friendly name of this component. */
878
+ _name: string;
879
+ _data?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinitions"];
880
+ };
881
+ /**
882
+ * @deprecated
883
+ * @description Basic information about an integration data connector (i.e. "Master environment of the stable space", "Yelp API", "Sanity dev dataset"). This data is provided to list responses.
884
+ */
885
+ DataConnectionInfo: {
886
+ /** @description Public ID of the data connector */
887
+ id: string;
888
+ /** @description Display name of the data connector */
889
+ displayName: string;
890
+ /** @description The type of data connector this connects to (e.g. 'cms-items', provided by an intalled integration) */
891
+ connectorType: string;
892
+ /** @description Base resource URL of the data connector. No trailing slash. */
893
+ baseUrl?: string;
894
+ };
895
+ /**
896
+ * @deprecated
897
+ * @description An instance of an integration data connector (i.e. "Master environment of the stable space", "Yelp API", "Sanity dev dataset"). These are created in the UI and shared across a whole project.
898
+ */
899
+ DataConnection: {
900
+ /** @description Public ID of the data connector */
901
+ id: string;
902
+ /** @description Display name of the data connector */
903
+ displayName: string;
904
+ /** @description The type of data connector this connects to (e.g. 'cms-items', provided by an intalled integration) */
905
+ connectorType: string;
906
+ /** @description Base resource URL of the data connector. No trailing slash. */
907
+ baseUrl: string;
908
+ /** @description HTTP headers to pass with requests to the data connector */
909
+ headers?: {
910
+ [key: string]: string;
911
+ };
912
+ /** @description Query String parameters to pass with requests to the data connector */
913
+ parameters?: {
914
+ [key: string]: string;
915
+ };
916
+ /** @description Variables needed to make calls to the data connector */
917
+ variables?: {
918
+ [key: string]: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataVariable"];
919
+ };
920
+ /** @description Custom configuration specific to the data connection being defined */
921
+ custom?: {
922
+ [key: string]: unknown;
923
+ };
924
+ };
925
+ /**
926
+ * @deprecated
927
+ * @description A specific type of data that a Data Connection can provide (i.e. "Recipe", "Recipes List by Tag", "Yelp Reviews of My Restaurant"). These are created in the UI and shared a whole project.
928
+ */
929
+ DataType: {
930
+ /** @description Public ID of the data connector */
931
+ id: string;
932
+ /** @description Display name of the data connector */
933
+ displayName: string;
934
+ /** @description Public ID of the associated data connector */
935
+ connectionId: string;
936
+ /**
937
+ * @description A connector-specific archetype for this data type; used to select UI as well as perform any
938
+ * necessary post-processing on the response. e.g. 'cms-entry', 'cms-query'. Can be undefined if
939
+ * no special UI or processing is required.
940
+ */
941
+ archetype?: string;
942
+ /** @description Resource path, appended to the data connection's baseUrl (e.g. baseUrl = https://base.url, path = /v1/endpoint -> final URL https://base.url/v1/endpoint). Must have leading slash. */
943
+ path: string;
944
+ /** @description HTTP headers to pass with requests to the data connector */
945
+ headers?: {
946
+ [key: string]: string;
947
+ };
948
+ /** @description Query String parameters to pass with requests to the data connector */
949
+ parameters?: {
950
+ [key: string]: string;
951
+ };
952
+ /** @description Body to pass with requests to the data connector */
953
+ body?: string;
954
+ /**
955
+ * @description HTTP method to use with requests to the data connector.
956
+ * @default GET
957
+ * @enum {string}
958
+ */
959
+ method: "GET" | "POST" | "HEAD";
960
+ /** @description Variables needed to make calls to the data connector */
961
+ variables?: {
962
+ [key: string]: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataVariable"];
963
+ };
964
+ /** @description Custom configuration specific to the data connection being defined */
965
+ custom?: {
966
+ [key: string]: unknown;
967
+ };
968
+ };
969
+ /**
970
+ * @deprecated
971
+ * @description Defines the shape of a data variable on a Data Connector or Data Type
972
+ */
973
+ DataVariable: {
974
+ /** @description Display name of the data variable */
975
+ displayName?: string;
976
+ /**
977
+ * @description Type of the data variable
978
+ * @default text
979
+ */
980
+ type: string;
981
+ /** @description Default value of the data variable */
982
+ default: string;
983
+ /**
984
+ * @description Where the variable value is set. Static = set to static value by the author. Dynamic = set to a dynamic value by a runtime API request from the frontend (default is used in the editor).
985
+ * @enum {string}
986
+ */
987
+ setBy: "static" | "dynamic";
988
+ };
989
+ /**
990
+ * @deprecated
991
+ * @description Data definitions attached to this component. The property name is the key of the data in the data document.
992
+ * Note: data definitions are inherited from ancestors at runtime (and may be overridden by descendants that use the same key).
993
+ */
994
+ CompositionDataDefinitions: {
995
+ [key: string]: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinition"];
996
+ };
997
+ /**
998
+ * @deprecated
999
+ * @description Data definition attached to this component
1000
+ */
1001
+ CompositionDataDefinition: {
1002
+ /** @description Public ID of the data type that provides this data */
1003
+ type: string;
1004
+ /** @description Whether this data is a pattern parameter that has to be overridden when a pattern is referenced on another composition. If this is not a pattern composition, this has no meaning and should not be used. If unspecified, the default is false. */
1005
+ isPatternParameter?: boolean;
1006
+ variables?: external$1["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataVariables"];
1007
+ };
1008
+ /**
1009
+ * @deprecated
1010
+ * @description Static variable values for this composition.
1011
+ */
1012
+ CompositionDataVariables: {
1013
+ [key: string]: string;
1014
+ };
1015
+ };
1016
+ };
1017
+ operations: {};
1018
+ };
1019
+ }
1020
+
1021
+ /**
1022
+ * This file was auto-generated by openapi-typescript.
1023
+ * Do not make direct changes to the file.
1024
+ */
1025
+ interface paths {
1026
+ "/api/v1/data-connections": {
1027
+ get: {
1028
+ parameters: {
1029
+ query: {
1030
+ projectId: string;
1031
+ };
1032
+ };
1033
+ responses: {
1034
+ /** OK */
1035
+ 200: {
1036
+ content: {
1037
+ "application/json": {
1038
+ results: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataConnectionInfo"][];
1039
+ };
1040
+ };
1041
+ };
1042
+ 400: external["swagger.yml"]["components"]["responses"]["BadRequestError"];
1043
+ 401: external["swagger.yml"]["components"]["responses"]["UnauthorizedError"];
1044
+ 403: external["swagger.yml"]["components"]["responses"]["ForbiddenError"];
1045
+ 429: external["swagger.yml"]["components"]["responses"]["RateLimitError"];
1046
+ 500: external["swagger.yml"]["components"]["responses"]["InternalServerError"];
1047
+ };
1048
+ };
1049
+ };
1050
+ }
1051
+ interface external {
1052
+ "swagger.yml": {
1053
+ paths: {};
1054
+ components: {
1055
+ schemas: {
1056
+ Error: {
1057
+ /** @description Error message(s) that occurred while processing the request */
1058
+ errorMessage?: string[] | string;
1059
+ };
1060
+ };
1061
+ responses: {
1062
+ /** Request input validation failed */
1063
+ BadRequestError: {
1064
+ content: {
1065
+ "application/json": external["swagger.yml"]["components"]["schemas"]["Error"];
1066
+ };
1067
+ };
1068
+ /** API key or token was not valid */
1069
+ UnauthorizedError: {
1070
+ content: {
1071
+ "application/json": external["swagger.yml"]["components"]["schemas"]["Error"];
1072
+ };
1073
+ };
1074
+ /** Permission was denied */
1075
+ ForbiddenError: {
1076
+ content: {
1077
+ "application/json": external["swagger.yml"]["components"]["schemas"]["Error"];
1078
+ };
1079
+ };
1080
+ /** Resource not found */
1081
+ NotFoundError: {
1082
+ content: {
1083
+ "application/json": external["swagger.yml"]["components"]["schemas"]["Error"];
1084
+ };
1085
+ };
1086
+ /** Too many requests in allowed time period */
1087
+ RateLimitError: unknown;
1088
+ /** Execution error occurred */
1089
+ InternalServerError: unknown;
1090
+ };
1091
+ };
1092
+ operations: {};
1093
+ };
1094
+ "uniform-canvas-types.swagger.yml": {
1095
+ paths: {};
1096
+ components: {
1097
+ schemas: {
1098
+ /** @description Public ID (used in code). Do not change after creation. */
1099
+ PublicIdProperty: string;
1100
+ /** @description The definition of a component parameter */
1101
+ ComponentDefinitionParameter: {
1102
+ id: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
1103
+ /** @description Friendly name of the parameter */
1104
+ name: string;
1105
+ /** @description Appears next to the parameter in the Composition editor */
1106
+ helpText?: string;
1107
+ /** @description Type name of the parameter (provided by a Uniform integration) */
1108
+ type: string;
1109
+ /** @description The configuration object for the type (type-specific) */
1110
+ typeConfig?: unknown;
1111
+ };
1112
+ /** @description The definition of a named component slot that can contain other components */
1113
+ ComponentDefinitionSlot: {
1114
+ id: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
1115
+ /** @description Friendly name of the slot */
1116
+ name: string;
1117
+ /** @description A list of component definition public IDs that are allowed in this named slot */
1118
+ allowedComponents: string[];
1119
+ /**
1120
+ * @description Whether this slot inherits its allowed components from the parent slot it lives in. If true, allowedComponents is irrelevant.
1121
+ * @default false
1122
+ */
1123
+ inheritAllowedComponents: boolean;
1124
+ /** @description Minimum valid number of components in this slot */
1125
+ minComponents?: number;
1126
+ /** @description Maximum valid number of components in this slot */
1127
+ maxComponents?: number;
1128
+ };
1129
+ /** @description The definition of a composition's slug settings */
1130
+ ComponentDefinitionSlugSettings: {
1131
+ /**
1132
+ * @description Whether the slug is required
1133
+ * no: slug is optional
1134
+ * yes: slug is required
1135
+ * disabled: slug is disabled and will not be shown in the editor
1136
+ *
1137
+ * @default no
1138
+ * @enum {string}
1139
+ */
1140
+ required?: "no" | "yes" | "disabled";
1141
+ /**
1142
+ * @description Slug uniqueness configuration.
1143
+ * no = no unique constraint
1144
+ * local = must be unique within this component type
1145
+ * global = must be unique across all component types
1146
+ *
1147
+ * @enum {string}
1148
+ */
1149
+ unique?: "no" | "local" | "global";
1150
+ /** @description Regular expression slugs must match */
1151
+ regularExpression?: string;
1152
+ /**
1153
+ * @description Custom error message when regular expression validation fails.
1154
+ * Has no effect if `regularExpression` is not set.
1155
+ */
1156
+ regularExpressionMessage?: string;
1157
+ };
1158
+ /** @description The definition of a component variant */
1159
+ ComponentDefinitionVariant: {
1160
+ id: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
1161
+ /** @description Friendly name of the variant */
1162
+ name: string;
1163
+ };
1164
+ /** @description Permission set for a component defintion */
1165
+ ComponentDefinitionPermission: {
1166
+ roleId: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
1167
+ /**
1168
+ * @description Permission type for this permission ComponentDefinition:
1169
+ * read | write | delete
1170
+ *
1171
+ * @enum {string}
1172
+ */
1173
+ permission: "read" | "write" | "delete";
1174
+ /** @description State of the component that this permission applies to */
1175
+ state: number;
1176
+ };
1177
+ /** @description Defines a component type that can live on a Composition */
1178
+ ComponentDefinition: {
1179
+ id: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["PublicIdProperty"];
1180
+ /** @description Friendly name of the component definition */
1181
+ name: string;
1182
+ /**
1183
+ * @description Icon name or URL for the component definition (e.g. 'screen' or 'https://s3/my-component.jpg')
1184
+ * @default screen
1185
+ */
1186
+ icon?: string;
1187
+ /**
1188
+ * @description The public ID of the parameter whose value should be used to create a display title for this component in the UI.
1189
+ * The parameter type must support being used as a title parameter for this to work.
1190
+ */
1191
+ titleParameter?: string | null;
1192
+ /**
1193
+ * @description Whether this component type can be the root of a composition. If false, this component is only used within slots on other components.
1194
+ * @default false
1195
+ */
1196
+ canBeComposition?: boolean;
1197
+ /** @description The parameters for this component. Parameters are key-value pairs that can be anything from text values to links to CMS entries. */
1198
+ parameters?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionParameter"][];
1199
+ /**
1200
+ * @description if this component uses team permissions or custom permissions
1201
+ * @default true
1202
+ */
1203
+ useTeamPermissions?: boolean;
1204
+ /** @description Custom role permissions for this component definition */
1205
+ permissions?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionPermission"][];
1206
+ /** @description The named slots for this component; placement areas where arrays of other components can be added. */
1207
+ slots?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionSlot"][];
1208
+ slugSettings?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionSlugSettings"];
1209
+ /** @description Default component instance value */
1210
+ defaults?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"] | null;
1211
+ /** @description Named variants for this component; enables creation of visual variants that use the same parameter data */
1212
+ variants?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentDefinitionVariant"][];
1213
+ /** @description Created date string for this definition (ignored for writes) */
1214
+ created?: string;
1215
+ /** @description Last modified date string for this definition (ignored for writes) */
1216
+ updated?: string;
1217
+ };
1218
+ /** @description Defines an editable parameter on a component. */
1219
+ ComponentParameter: {
1220
+ /** @description The value of the parameter. Any JSON-serializable value is acceptable. */
1221
+ value: unknown;
1222
+ /** @description The type of the parameter. Determines how it is displayed when editing, and tells the consumer how to process it. */
1223
+ type: string;
1224
+ binding?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameterBinding"];
1225
+ };
1226
+ /**
1227
+ * @deprecated
1228
+ * @description Defines a binding from a resource data value to a component parameter value. Do not use.
1229
+ */
1230
+ ComponentParameterBinding: {
1231
+ /** @description A JSON Pointer expression that defines the binding directly to the parameter value */
1232
+ pointer: string;
1233
+ /**
1234
+ * @description The syntax of the binding (currently always 'jptr')
1235
+ * @enum {string}
1236
+ */
1237
+ syntax: "jptr";
1238
+ /**
1239
+ * @description Whether the binding should cause an error if it cannot be resolved.
1240
+ * If true, and the binding cannot be resolved, an error will be returned by the binding process.
1241
+ * If false, and the binding cannot be resolved, the parameter will be removed from the bound composition.
1242
+ *
1243
+ * @default false
1244
+ */
1245
+ required?: boolean;
1246
+ };
1247
+ /** @description Defines the shape of a component instance served by the composition API. */
1248
+ ComponentInstance: {
1249
+ /** @description Type of the component instance (public_id of its definition) */
1250
+ type: string;
1251
+ /** @description Component parameter values for the component instance */
1252
+ parameters?: {
1253
+ [key: string]: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameter"];
1254
+ };
1255
+ /** @description Public ID of alternate visual appearance for this component, if any selected */
1256
+ variant?: string;
1257
+ /** @description Slots containing any child components */
1258
+ slots?: {
1259
+ [key: string]: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"][];
1260
+ };
1261
+ /** @description Unique identifier of the component within the composition. This is not set unless specifically requested via `withComponentIDs` API parameter. */
1262
+ _id?: string;
1263
+ /** @description Indicates this component instance should be sourced from a pattern library pattern. */
1264
+ _pattern?: string;
1265
+ _data?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinitions"];
1266
+ /**
1267
+ * @deprecated
1268
+ * @description Data definitions coming from a pattern resolved for this component. Merged with _data during resolution.
1269
+ * Means nothing for PUTs; it will be ignored.
1270
+ */
1271
+ _patternData?: {
1272
+ [key: string]: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinition"];
1273
+ };
1274
+ /**
1275
+ * @description Describes why the pattern could not be resolved, if a pattern could not be resolved. For PUTs, this is allowed but ignored.
1276
+ * CYCLIC: A cyclic pattern graph was detected, which could not be resolved because it would cause an infinite loop.
1277
+ * NOTFOUND: The pattern ID referenced could not be found. It may have been deleted, or not be published yet.
1278
+ * Means nothing for PUTs; it will be ignored.
1279
+ *
1280
+ * @enum {string}
1281
+ */
1282
+ _patternError?: "NOTFOUND" | "CYCLIC";
1283
+ };
1284
+ /** @description Defines the shape of the root component in a composition */
1285
+ RootComponentInstance: {
1286
+ /** @description Type of the component instance (public_id of its definition) */
1287
+ type: string;
1288
+ /** @description Component parameter values for the component instance */
1289
+ parameters?: {
1290
+ [key: string]: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentParameter"];
1291
+ };
1292
+ /** @description Public ID of alternate visual appearance for this component, if any selected */
1293
+ variant?: string;
1294
+ /** @description Slots containing any child components */
1295
+ slots?: {
1296
+ [key: string]: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["ComponentInstance"][];
1297
+ };
1298
+ /** @description The public UUID of the composition. */
1299
+ _id: string;
1300
+ /** @description Slug pattern of this component. */
1301
+ _slug?: string | null;
1302
+ /** @description Friendly name of this component. */
1303
+ _name: string;
1304
+ _data?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinitions"];
1305
+ };
1306
+ /**
1307
+ * @deprecated
1308
+ * @description Basic information about an integration data connector (i.e. "Master environment of the stable space", "Yelp API", "Sanity dev dataset"). This data is provided to list responses.
1309
+ */
1310
+ DataConnectionInfo: {
1311
+ /** @description Public ID of the data connector */
1312
+ id: string;
1313
+ /** @description Display name of the data connector */
1314
+ displayName: string;
1315
+ /** @description The type of data connector this connects to (e.g. 'cms-items', provided by an intalled integration) */
1316
+ connectorType: string;
1317
+ /** @description Base resource URL of the data connector. No trailing slash. */
1318
+ baseUrl?: string;
1319
+ };
1320
+ /**
1321
+ * @deprecated
1322
+ * @description An instance of an integration data connector (i.e. "Master environment of the stable space", "Yelp API", "Sanity dev dataset"). These are created in the UI and shared across a whole project.
1323
+ */
1324
+ DataConnection: {
1325
+ /** @description Public ID of the data connector */
1326
+ id: string;
1327
+ /** @description Display name of the data connector */
1328
+ displayName: string;
1329
+ /** @description The type of data connector this connects to (e.g. 'cms-items', provided by an intalled integration) */
1330
+ connectorType: string;
1331
+ /** @description Base resource URL of the data connector. No trailing slash. */
1332
+ baseUrl: string;
1333
+ /** @description HTTP headers to pass with requests to the data connector */
1334
+ headers?: {
1335
+ [key: string]: string;
1336
+ };
1337
+ /** @description Query String parameters to pass with requests to the data connector */
1338
+ parameters?: {
1339
+ [key: string]: string;
1340
+ };
1341
+ /** @description Variables needed to make calls to the data connector */
1342
+ variables?: {
1343
+ [key: string]: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataVariable"];
1344
+ };
1345
+ /** @description Custom configuration specific to the data connection being defined */
1346
+ custom?: {
1347
+ [key: string]: unknown;
1348
+ };
1349
+ };
1350
+ /**
1351
+ * @deprecated
1352
+ * @description A specific type of data that a Data Connection can provide (i.e. "Recipe", "Recipes List by Tag", "Yelp Reviews of My Restaurant"). These are created in the UI and shared a whole project.
1353
+ */
1354
+ DataType: {
1355
+ /** @description Public ID of the data connector */
1356
+ id: string;
1357
+ /** @description Display name of the data connector */
1358
+ displayName: string;
1359
+ /** @description Public ID of the associated data connector */
1360
+ connectionId: string;
1361
+ /**
1362
+ * @description A connector-specific archetype for this data type; used to select UI as well as perform any
1363
+ * necessary post-processing on the response. e.g. 'cms-entry', 'cms-query'. Can be undefined if
1364
+ * no special UI or processing is required.
1365
+ */
1366
+ archetype?: string;
1367
+ /** @description Resource path, appended to the data connection's baseUrl (e.g. baseUrl = https://base.url, path = /v1/endpoint -> final URL https://base.url/v1/endpoint). Must have leading slash. */
1368
+ path: string;
1369
+ /** @description HTTP headers to pass with requests to the data connector */
1370
+ headers?: {
1371
+ [key: string]: string;
1372
+ };
1373
+ /** @description Query String parameters to pass with requests to the data connector */
1374
+ parameters?: {
1375
+ [key: string]: string;
1376
+ };
1377
+ /** @description Body to pass with requests to the data connector */
1378
+ body?: string;
1379
+ /**
1380
+ * @description HTTP method to use with requests to the data connector.
1381
+ * @default GET
1382
+ * @enum {string}
1383
+ */
1384
+ method: "GET" | "POST" | "HEAD";
1385
+ /** @description Variables needed to make calls to the data connector */
1386
+ variables?: {
1387
+ [key: string]: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["DataVariable"];
1388
+ };
1389
+ /** @description Custom configuration specific to the data connection being defined */
1390
+ custom?: {
1391
+ [key: string]: unknown;
1392
+ };
1393
+ };
1394
+ /**
1395
+ * @deprecated
1396
+ * @description Defines the shape of a data variable on a Data Connector or Data Type
1397
+ */
1398
+ DataVariable: {
1399
+ /** @description Display name of the data variable */
1400
+ displayName?: string;
1401
+ /**
1402
+ * @description Type of the data variable
1403
+ * @default text
1404
+ */
1405
+ type: string;
1406
+ /** @description Default value of the data variable */
1407
+ default: string;
1408
+ /**
1409
+ * @description Where the variable value is set. Static = set to static value by the author. Dynamic = set to a dynamic value by a runtime API request from the frontend (default is used in the editor).
1410
+ * @enum {string}
1411
+ */
1412
+ setBy: "static" | "dynamic";
1413
+ };
1414
+ /**
1415
+ * @deprecated
1416
+ * @description Data definitions attached to this component. The property name is the key of the data in the data document.
1417
+ * Note: data definitions are inherited from ancestors at runtime (and may be overridden by descendants that use the same key).
1418
+ */
1419
+ CompositionDataDefinitions: {
1420
+ [key: string]: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataDefinition"];
1421
+ };
1422
+ /**
1423
+ * @deprecated
1424
+ * @description Data definition attached to this component
1425
+ */
1426
+ CompositionDataDefinition: {
1427
+ /** @description Public ID of the data type that provides this data */
1428
+ type: string;
1429
+ /** @description Whether this data is a pattern parameter that has to be overridden when a pattern is referenced on another composition. If this is not a pattern composition, this has no meaning and should not be used. If unspecified, the default is false. */
1430
+ isPatternParameter?: boolean;
1431
+ variables?: external["uniform-canvas-types.swagger.yml"]["components"]["schemas"]["CompositionDataVariables"];
1432
+ };
1433
+ /**
1434
+ * @deprecated
1435
+ * @description Static variable values for this composition.
1436
+ */
1437
+ CompositionDataVariables: {
1438
+ [key: string]: string;
1439
+ };
1440
+ };
1441
+ };
1442
+ operations: {};
1443
+ };
1444
+ }
1445
+
1446
+ declare type DataTypeApi = paths$2['/api/v1/data-types'];
1447
+ declare type DataConnectionsApi = paths['/api/v1/data-connections'];
1448
+ declare type DataConnectionApi = paths$1['/api/v1/data-connection'];
1449
+ /** Query parameter options for GET /api/v1/data-types */
1450
+ declare type DataTypeGetParameters = DataTypeApi['get']['parameters']['query'];
1451
+ /** The GET response from /api/v1/data-types */
1452
+ declare type DataTypeGetResponse = DataTypeApi['get']['responses']['200']['content']['application/json'];
1453
+ /** The PUT request body for /api/v1/data-types */
1454
+ declare type DataTypePutParameters = DataTypeApi['put']['requestBody']['content']['application/json'];
1455
+ /** Shape of the DELETE request body for /api/v1/data-types */
1456
+ declare type DataTypeDeleteParameters = DataTypeApi['delete']['requestBody']['content']['application/json'];
1457
+ /** Query parameter options for GET /api/v1/data-connection */
1458
+ declare type DataConnectionGetParameters = DataConnectionApi['get']['parameters']['query'];
1459
+ /** Query parameter options for GET /api/v1/data-connections */
1460
+ declare type DataConnectionsGetParameters = DataConnectionsApi['get']['parameters']['query'];
1461
+ /** The GET response from /api/v1/data-connections */
1462
+ declare type DataConnectionGetResponse = DataConnectionApi['get']['responses']['200']['content']['application/json'];
1463
+ /** The GET response from /api/v1/data-connections */
1464
+ declare type DataConnectionsGetResponse = DataConnectionsApi['get']['responses']['200']['content']['application/json'];
1465
+ /** The PUT request body for /api/v1/data-connection */
1466
+ declare type DataConnectionPutParameters = DataConnectionApi['put']['requestBody']['content']['application/json'];
1467
+ /** Shape of the DELETE request body for /api/v1/data-connection */
1468
+ declare type DataConnectionDeleteParameters = DataConnectionApi['delete']['requestBody']['content']['application/json'];
1469
+ declare type DataType = components['schemas']['DataType'];
1470
+ declare type DataConnection = components['schemas']['DataConnection'];
1471
+ declare type DataConnectionInfo = components['schemas']['DataConnectionInfo'];
1472
+ declare type DataVariable = components['schemas']['DataVariable'];
1473
+
86
1474
  declare type ComponentLocationReference = {
87
1475
  component: ComponentInstance;
88
1476
  parentSlot?: string;
@@ -252,41 +1640,18 @@ declare function createLimitPolicy({ throttle, retry, }: {
252
1640
  }): LimitPolicy;
253
1641
  declare const nullLimitPolicy: LimitPolicy;
254
1642
 
255
- declare type CanvasClientOptions = {
256
- /** The Uniform API host to use. Internal use. */
257
- apiHost?: string;
258
- /** The Uniform API key to use when sending API requests. This or bearer token must be specified. */
259
- apiKey?: string | null;
260
- /** The Uniform bearer token to use. Internal use. */
261
- bearerToken?: string | null;
262
- /** The Uniform project ID to connect to */
263
- projectId?: string | null;
264
- /** Specify a fetch implementation to use when fetching data. Useful if you want to only polyfill selectively. */
265
- fetch?: typeof fetch;
266
- /**
267
- * Specify how to retry and throttle requests.
268
- * Default: retry 3x on failures with exponential backoff, up to 10 requests per second.
269
- * Use createLimitPolicy() to help creating a policy. */
270
- limitPolicy?: LimitPolicy;
271
- /** Specify whether caching is disabled. */
272
- bypassCache?: boolean;
1643
+ declare type CanvasClientOptions = ClientOptions & {
1644
+ /** @deprecated do not use */
1645
+ experiment14?: boolean;
273
1646
  };
274
- declare class CanvasClientError extends Error {
275
- errorMessage: string;
276
- fetchMethod: string;
277
- fetchUri: string;
278
- statusCode?: number | undefined;
279
- statusText?: string | undefined;
280
- requestId?: string | undefined;
281
- constructor(errorMessage: string, fetchMethod: string, fetchUri: string, statusCode?: number | undefined, statusText?: string | undefined, requestId?: string | undefined);
282
- }
283
- declare class CanvasClient {
284
- private options;
1647
+ declare class CanvasClient extends ApiClient<CanvasClientOptions> {
285
1648
  constructor(options: CanvasClientOptions);
1649
+ private get canvasUrl();
286
1650
  /** Fetches lists of Canvas compositions, optionally by type */
287
- getCompositionList(options?: Omit<CompositionGetParameters, 'projectId'>): Promise<{
1651
+ getCompositionList(options?: Omit<CompositionGetParameters, 'projectId' | 'compositionId'>): Promise<{
288
1652
  compositions: {
289
1653
  state: number;
1654
+ uiStatus?: "Draft" | "Modified" | "Published" | "Orphan" | undefined;
290
1655
  projectId: string;
291
1656
  created: string;
292
1657
  modified: string;
@@ -298,10 +1663,9 @@ declare class CanvasClient {
298
1663
  value: unknown;
299
1664
  type: string;
300
1665
  binding?: {
301
- pointer: string | {
302
- [key: string]: string;
303
- };
1666
+ pointer: string;
304
1667
  syntax: "jptr";
1668
+ required?: boolean | undefined;
305
1669
  } | undefined;
306
1670
  };
307
1671
  } | undefined;
@@ -314,10 +1678,9 @@ declare class CanvasClient {
314
1678
  value: unknown;
315
1679
  type: string;
316
1680
  binding?: {
317
- pointer: string | {
318
- [key: string]: string;
319
- };
1681
+ pointer: string;
320
1682
  syntax: "jptr";
1683
+ required?: boolean | undefined;
321
1684
  } | undefined;
322
1685
  };
323
1686
  } | undefined;
@@ -325,19 +1688,48 @@ declare class CanvasClient {
325
1688
  slots?: {
326
1689
  [key: string]: any[];
327
1690
  } | undefined;
1691
+ _id?: string | undefined;
328
1692
  _pattern?: string | undefined;
1693
+ _data?: {
1694
+ [key: string]: {
1695
+ type: string;
1696
+ isPatternParameter?: boolean | undefined;
1697
+ variables?: {
1698
+ [key: string]: string;
1699
+ } | undefined;
1700
+ };
1701
+ } | undefined;
1702
+ _patternData?: {
1703
+ [key: string]: {
1704
+ type: string;
1705
+ isPatternParameter?: boolean | undefined;
1706
+ variables?: {
1707
+ [key: string]: string;
1708
+ } | undefined;
1709
+ };
1710
+ } | undefined;
329
1711
  _patternError?: "NOTFOUND" | "CYCLIC" | undefined;
330
1712
  }[];
331
1713
  } | undefined;
332
1714
  _id: string;
333
1715
  _slug?: string | null | undefined;
334
1716
  _name: string;
1717
+ _data?: {
1718
+ [key: string]: {
1719
+ type: string;
1720
+ isPatternParameter?: boolean | undefined;
1721
+ variables?: {
1722
+ [key: string]: string;
1723
+ } | undefined;
1724
+ };
1725
+ } | undefined;
335
1726
  };
336
1727
  }[];
337
1728
  }>;
338
1729
  /** Fetches a Canvas composition by string name (slug) */
339
- getCompositionBySlug(options: Pick<CompositionGetParameters, 'slug' | 'state' | 'skipEnhance' | 'skipPatternResolution'>): Promise<{
1730
+ getCompositionBySlug(options: Pick<CompositionGetParameters, 'slug' | 'state' | 'skipEnhance' | 'skipPatternResolution' | 'withComponentIDs' | 'withUIStatus'>): Promise<{
340
1731
  state: number;
1732
+ uiStatus?: "Draft" | "Modified" | "Published" | "Orphan" | undefined;
341
1733
  projectId: string;
342
1734
  created: string;
343
1735
  modified: string;
@@ -349,10 +1741,9 @@ declare class CanvasClient {
349
1741
  value: unknown;
350
1742
  type: string;
351
1743
  binding?: {
352
- pointer: string | {
353
- [key: string]: string;
354
- };
1744
+ pointer: string;
355
1745
  syntax: "jptr";
1746
+ required?: boolean | undefined;
356
1747
  } | undefined;
357
1748
  };
358
1749
  } | undefined;
@@ -365,10 +1756,9 @@ declare class CanvasClient {
365
1756
  value: unknown;
366
1757
  type: string;
367
1758
  binding?: {
368
- pointer: string | {
369
- [key: string]: string;
370
- };
1759
+ pointer: string;
371
1760
  syntax: "jptr";
1761
+ required?: boolean | undefined;
372
1762
  } | undefined;
373
1763
  };
374
1764
  } | undefined;
@@ -376,18 +1766,47 @@ declare class CanvasClient {
376
1766
  slots?: {
377
1767
  [key: string]: any[];
378
1768
  } | undefined;
1769
+ _id?: string | undefined;
379
1770
  _pattern?: string | undefined;
1771
+ _data?: {
1772
+ [key: string]: {
1773
+ type: string;
1774
+ isPatternParameter?: boolean | undefined;
1775
+ variables?: {
1776
+ [key: string]: string;
1777
+ } | undefined;
1778
+ };
1779
+ } | undefined;
1780
+ _patternData?: {
1781
+ [key: string]: {
1782
+ type: string;
1783
+ isPatternParameter?: boolean | undefined;
1784
+ variables?: {
1785
+ [key: string]: string;
1786
+ } | undefined;
1787
+ };
1788
+ } | undefined;
380
1789
  _patternError?: "NOTFOUND" | "CYCLIC" | undefined;
381
1790
  }[];
382
1791
  } | undefined;
383
1792
  _id: string;
384
1793
  _slug?: string | null | undefined;
385
1794
  _name: string;
1795
+ _data?: {
1796
+ [key: string]: {
1797
+ type: string;
1798
+ isPatternParameter?: boolean | undefined;
1799
+ variables?: {
1800
+ [key: string]: string;
1801
+ } | undefined;
1802
+ };
1803
+ } | undefined;
386
1804
  };
387
1805
  }>;
388
1806
  /** Fetches a Canvas composition by its public UUID */
389
- getCompositionById(options: Pick<CompositionGetParameters, 'compositionId' | 'state' | 'skipEnhance' | 'skipPatternResolution'>): Promise<{
1807
+ getCompositionById(options: Pick<CompositionGetParameters, 'compositionId' | 'state' | 'skipEnhance' | 'skipPatternResolution' | 'withComponentIDs' | 'withUIStatus'>): Promise<{
390
1808
  state: number;
1809
+ uiStatus?: "Draft" | "Modified" | "Published" | "Orphan" | undefined;
391
1810
  projectId: string;
392
1811
  created: string;
393
1812
  modified: string;
@@ -399,10 +1818,9 @@ declare class CanvasClient {
399
1818
  value: unknown;
400
1819
  type: string;
401
1820
  binding?: {
402
- pointer: string | {
403
- [key: string]: string;
404
- };
1821
+ pointer: string;
405
1822
  syntax: "jptr";
1823
+ required?: boolean | undefined;
406
1824
  } | undefined;
407
1825
  };
408
1826
  } | undefined;
@@ -415,10 +1833,9 @@ declare class CanvasClient {
415
1833
  value: unknown;
416
1834
  type: string;
417
1835
  binding?: {
418
- pointer: string | {
419
- [key: string]: string;
420
- };
1836
+ pointer: string;
421
1837
  syntax: "jptr";
1838
+ required?: boolean | undefined;
422
1839
  } | undefined;
423
1840
  };
424
1841
  } | undefined;
@@ -426,13 +1843,41 @@ declare class CanvasClient {
426
1843
  slots?: {
427
1844
  [key: string]: any[];
428
1845
  } | undefined;
1846
+ _id?: string | undefined;
429
1847
  _pattern?: string | undefined;
1848
+ _data?: {
1849
+ [key: string]: {
1850
+ type: string;
1851
+ isPatternParameter?: boolean | undefined;
1852
+ variables?: {
1853
+ [key: string]: string;
1854
+ } | undefined;
1855
+ };
1856
+ } | undefined;
1857
+ _patternData?: {
1858
+ [key: string]: {
1859
+ type: string;
1860
+ isPatternParameter?: boolean | undefined;
1861
+ variables?: {
1862
+ [key: string]: string;
1863
+ } | undefined;
1864
+ };
1865
+ } | undefined;
430
1866
  _patternError?: "NOTFOUND" | "CYCLIC" | undefined;
431
1867
  }[];
432
1868
  } | undefined;
433
1869
  _id: string;
434
1870
  _slug?: string | null | undefined;
435
1871
  _name: string;
1872
+ _data?: {
1873
+ [key: string]: {
1874
+ type: string;
1875
+ isPatternParameter?: boolean | undefined;
1876
+ variables?: {
1877
+ [key: string]: string;
1878
+ } | undefined;
1879
+ };
1880
+ } | undefined;
436
1881
  };
437
1882
  }>;
438
1883
  /** Updates or creates a Canvas component definition */
@@ -470,7 +1915,7 @@ declare class CanvasClient {
470
1915
  }[] | undefined;
471
1916
  slugSettings?: {
472
1917
  required?: "no" | "yes" | "disabled" | undefined;
473
- unique?: "global" | "no" | "local" | undefined;
1918
+ unique?: "no" | "local" | "global" | undefined;
474
1919
  regularExpression?: string | undefined;
475
1920
  regularExpressionMessage?: string | undefined;
476
1921
  } | undefined;
@@ -481,10 +1926,9 @@ declare class CanvasClient {
481
1926
  value: unknown;
482
1927
  type: string;
483
1928
  binding?: {
484
- pointer: string | {
485
- [key: string]: string;
486
- };
1929
+ pointer: string;
487
1930
  syntax: "jptr";
1931
+ required?: boolean | undefined;
488
1932
  } | undefined;
489
1933
  };
490
1934
  } | undefined;
@@ -492,7 +1936,26 @@ declare class CanvasClient {
492
1936
  slots?: {
493
1937
  [key: string]: any[];
494
1938
  } | undefined;
1939
+ _id?: string | undefined;
495
1940
  _pattern?: string | undefined;
1941
+ _data?: {
1942
+ [key: string]: {
1943
+ type: string;
1944
+ isPatternParameter?: boolean | undefined;
1945
+ variables?: {
1946
+ [key: string]: string;
1947
+ } | undefined;
1948
+ };
1949
+ } | undefined;
1950
+ _patternData?: {
1951
+ [key: string]: {
1952
+ type: string;
1953
+ isPatternParameter?: boolean | undefined;
1954
+ variables?: {
1955
+ [key: string]: string;
1956
+ } | undefined;
1957
+ };
1958
+ } | undefined;
496
1959
  _patternError?: "NOTFOUND" | "CYCLIC" | undefined;
497
1960
  } | null | undefined;
498
1961
  variants?: {
@@ -507,14 +1970,71 @@ declare class CanvasClient {
507
1970
  updateComponentDefinition(body: Omit<ComponentDefinitionPutParameters, 'projectId'>): Promise<void>;
508
1971
  /** Deletes a Canvas component definition */
509
1972
  removeComponentDefinition(body: Omit<ComponentDefinitionDeleteParameters, 'projectId'>): Promise<void>;
510
- private apiClient;
511
- private createUrl;
512
- private static getRequestId;
513
1973
  }
514
1974
  declare class UncachedCanvasClient extends CanvasClient {
515
1975
  constructor(options: Omit<CanvasClientOptions, 'bypassCache'>);
516
1976
  }
517
1977
 
1978
+ /**
1979
+ * @deprecated
1980
+ */
1981
+ declare class CanvasDataConnectionClient extends ApiClient {
1982
+ constructor(options: ClientOptions);
1983
+ /** Fetches all DataConnections for a project */
1984
+ get(options?: ExceptProject<DataConnectionGetParameters>): Promise<{
1985
+ result: {
1986
+ id: string;
1987
+ displayName: string;
1988
+ connectorType: string;
1989
+ baseUrl: string;
1990
+ headers?: {
1991
+ [key: string]: string;
1992
+ } | undefined;
1993
+ parameters?: {
1994
+ [key: string]: string;
1995
+ } | undefined;
1996
+ variables?: {
1997
+ [key: string]: {
1998
+ displayName?: string | undefined;
1999
+ type: string;
2000
+ default: string;
2001
+ setBy: "static" | "dynamic";
2002
+ };
2003
+ } | undefined;
2004
+ custom?: {
2005
+ [key: string]: unknown;
2006
+ } | undefined;
2007
+ };
2008
+ }>;
2009
+ /** Fetches all DataConnections for a project */
2010
+ getList(options?: ExceptProject<DataConnectionsGetParameters>): Promise<{
2011
+ results: {
2012
+ id: string;
2013
+ displayName: string;
2014
+ connectorType: string;
2015
+ baseUrl?: string | undefined;
2016
+ }[];
2017
+ }>;
2018
+ /** Updates or creates (based on id) a DataConnection */
2019
+ upsert(body: ExceptProject<DataConnectionPutParameters>): Promise<void>;
2020
+ /** Deletes a DataConnection */
2021
+ remove(body: ExceptProject<DataConnectionDeleteParameters>): Promise<void>;
2022
+ }
2023
+
2024
+ /**
2025
+ * @deprecated
2026
+ */
2027
+ declare class CanvasDataTypeClient extends ApiClient {
2028
+ #private;
2029
+ constructor(options: ClientOptions);
2030
+ /** Fetches all DataTypes for a project */
2031
+ get(options?: ExceptProject<DataTypeGetParameters>): Promise<DataTypeGetResponse>;
2032
+ /** Updates or creates (based on id) a DataType */
2033
+ upsert(body: ExceptProject<DataTypePutParameters>): Promise<void>;
2034
+ /** Deletes a DataType */
2035
+ remove(body: ExceptProject<DataTypeDeleteParameters>): Promise<void>;
2036
+ }
2037
+
518
2038
  /** Public ID of Canvas personalization component type */
519
2039
  declare const CANVAS_PERSONALIZE_TYPE = "$personalization";
520
2040
  /** Public ID of Canvas A/B test component type */
@@ -584,4 +2104,6 @@ declare function localize({ composition, locale, }: {
584
2104
  }) => string | undefined);
585
2105
  }): void;
586
2106
 
587
- export { BatchEnhancer, BatchEntry, CANVAS_DRAFT_STATE, CANVAS_ENRICHMENT_TAG_PARAM, CANVAS_INTENT_TAG_PARAM, CANVAS_LOCALE_TAG_PARAM, CANVAS_LOCALIZATION_SLOT, CANVAS_LOCALIZATION_TYPE, CANVAS_PERSONALIZATION_PARAM, CANVAS_PERSONALIZE_SLOT, CANVAS_PERSONALIZE_TYPE, CANVAS_PUBLISHED_STATE, CANVAS_TEST_SLOT, CANVAS_TEST_TYPE, CANVAS_TEST_VARIANT_PARAM, CanvasClient, CanvasClientError, CanvasClientOptions, ChildEnhancerBuilder, ComponentEnhancer, ComponentEnhancerFunction, ComponentEnhancerOptions, ComponentLocationReference, ComponentParameterEnhancer, ComponentParameterEnhancerFunction, ComponentParameterEnhancerOptions, EnhancerBuilder, EnhancerContext, EnhancerError, EventNames, LimitPolicy, SubscribeToCompositionOptions, UncachedCanvasClient, UniqueBatchEntries, UnsubscribeCallback, WalkComponentTreeActions, compose, createBatchEnhancer, createLimitPolicy, enhance, extractLocales, getChannelName, getComponentPath, isSystemComponentDefinition, localize, mapSlotToPersonalizedVariations, mapSlotToTestVariations, nullLimitPolicy, subscribeToComposition, walkComponentTree };
2107
+ declare type CanvasClientError = ApiClientError;
2108
+
2109
+ export { BatchEnhancer, BatchEntry, CANVAS_DRAFT_STATE, CANVAS_ENRICHMENT_TAG_PARAM, CANVAS_INTENT_TAG_PARAM, CANVAS_LOCALE_TAG_PARAM, CANVAS_LOCALIZATION_SLOT, CANVAS_LOCALIZATION_TYPE, CANVAS_PERSONALIZATION_PARAM, CANVAS_PERSONALIZE_SLOT, CANVAS_PERSONALIZE_TYPE, CANVAS_PUBLISHED_STATE, CANVAS_TEST_SLOT, CANVAS_TEST_TYPE, CANVAS_TEST_VARIANT_PARAM, CanvasClient, CanvasClientError, CanvasClientOptions, CanvasDataConnectionClient, CanvasDataTypeClient, ChildEnhancerBuilder, ComponentEnhancer, ComponentEnhancerFunction, ComponentEnhancerOptions, ComponentLocationReference, ComponentParameterEnhancer, ComponentParameterEnhancerFunction, ComponentParameterEnhancerOptions, DataConnection, DataConnectionDeleteParameters, DataConnectionGetParameters, DataConnectionGetResponse, DataConnectionInfo, DataConnectionPutParameters, DataConnectionsGetParameters, DataConnectionsGetResponse, DataType, DataTypeDeleteParameters, DataTypeGetParameters, DataTypeGetResponse, DataTypePutParameters, DataVariable, EnhancerBuilder, EnhancerContext, EnhancerError, EventNames, LimitPolicy, SubscribeToCompositionOptions, UncachedCanvasClient, UniqueBatchEntries, UnsubscribeCallback, WalkComponentTreeActions, compose, createBatchEnhancer, createLimitPolicy, enhance, extractLocales, getChannelName, getComponentPath, isSystemComponentDefinition, localize, mapSlotToPersonalizedVariations, mapSlotToTestVariations, nullLimitPolicy, subscribeToComposition, walkComponentTree };