@cesdk/node 1.17.0 → 1.18.0-rc.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.
package/LICENSE.md CHANGED
@@ -1,36 +1,36 @@
1
1
  # Creative Editor Software Development Kit (SDK)
2
- ## Terms of Service
3
2
 
3
+ ## Terms of Service
4
4
 
5
5
  ### 1. Subject Matter
6
6
 
7
- 1.1 These Terms of Service (together with any applicable Order Form the “__Agreement__”) governs all rights granted by Licensor to use and commercially exploit the Creative Editor Software Development Kit (the “__Software__”).
7
+ 1.1 These Terms of Service (together with any applicable Order Form the “**Agreement**”) governs all rights granted by Licensor to use and commercially exploit the Creative Editor Software Development Kit (the “**Software**”).
8
8
 
9
- 1.2 The Agreement is entered into by and between img.ly GmbH, Kortumstraße 68, 44787 Bochum, Germany (the “__Licensor__”) and the entity identified in the Order Form (the “__Licensee__”, together with Licensor the “__Parties__”) as of the effective date the Order Form is last signed on.
9
+ 1.2 The Agreement is entered into by and between img.ly GmbH, Kortumstraße 19-21, 44787 Bochum, Germany (the “**Licensor**”) and the entity identified in the Order Form (the “**Licensee**”, together with Licensor the “**Parties**”) as of the effective date the Order Form is last signed on.
10
10
 
11
11
  1.3 This Agreement shall govern the use of the Software for commercial purposes. To the extent the Software is intended to be used for non-commercial purposes only, an alternative licensing scheme may be available upon Licensor’s discretion.
12
12
 
13
- ### 2. Order Form
13
+ ### 2. Order Form
14
14
 
15
- 2.1 An “__Order Form__” may either be executed (i) by the Parties upon individual negotiation or (ii) via an online order issued by Licensee via Licensor`s website at www.photoeditorsdk.com (the “__Website__”) that has been confirmed by Licensor. Online orders not confirmed within 14 days after issuance shall be considered denied.
15
+ 2.1 An “**Order Form**” may either be executed (i) by the Parties upon individual negotiation or (ii) via an online order issued by Licensee via Licensor`s website at https://img.ly (the “**Website**”) that has been confirmed by Licensor. Online orders not confirmed within 14 days after issuance shall be considered denied.
16
16
 
17
17
  2.2 No rights shall be granted to Licensee by virtue of these Terms of Service alone as such grant requires the execution of an Order Form making reference to these Terms of Service.
18
18
 
19
19
  2.3 The Order Form shall specify the environment for the Software that shall be licensed by Licensee.
20
20
 
21
- 2.4 The Order Form shall specify (i) the Subscription Term and (ii) the License Fees. Unless specified otherwise in the Order Form, the Subscription Term shall be based on monthly or annual periods for payment of the License Fees (the “__Payment Periods__”).
21
+ 2.4 The Order Form shall specify (i) the Subscription Term and (ii) the License Fees. Unless specified otherwise in the Order Form, the Subscription Term shall be based on monthly or annual periods for payment of the License Fees (the “**Payment Periods**”).
22
22
 
23
- 2.5 Licensor may choose to offer Licensee a trial period of 30 days to test the Software in a dedicated testing environment not subject to License Fees (the “__Trial Period__”). Upon expiration of the Trial Period, the right to test the Software shall cease without further notice. Licensee shall then be required to execute an Order Form to obtain a License for a Subscription Term in case the Software shall be further used.
23
+ 2.5 Licensor may choose to offer Licensee a trial period of 30 days to test the Software in a dedicated testing environment not subject to License Fees (the “**Trial Period**”). Upon expiration of the Trial Period, the right to test the Software shall cease without further notice. Licensee shall then be required to execute an Order Form to obtain a License for a Subscription Term in case the Software shall be further used.
24
24
 
25
25
  ### 3. Grant of Rights
26
26
 
27
- 3.1 Licensor shall grant to Licensee a worldwide, non-exclusive, non-transferable, non-sublicensable right to use the Software subject to the terms of this Agreement, in particular with the specifications as set out in the Order Form (the “__License__”).
27
+ 3.1 Licensor shall grant to Licensee a worldwide, non-exclusive, non-transferable, non-sublicensable right to use the Software subject to the terms of this Agreement, in particular with the specifications as set out in the Order Form (the “**License**”).
28
28
 
29
29
  3.2 The License shall pertain to the Software in object code format as well as to content data (fonts, stickers, stock images, etc.) included therein. In case the disclosure of the Software in source code format is agreed upon in the Order Form, the License shall also pertain to the Software in source code format.
30
30
 
31
- 3.3 The term of the License shall be determined in the Order Form (the “__Subscription Term__”). The License shall commence upon initial payment of the License Fees and terminate upon the end of the Subscription Term(s). Unless stated otherwise in the Order Form, the initial Subscription Term shall automatically be extended by further consecutive Subscription Terms unless either of the Parties notifies the other in writing of its intent to terminate the License at least one month (one week in case of a monthly Subscription Term) prior to the end of the current Subscription Term. Upon expiration of the Subscription Term(s), the right to use the Software shall cease without further notice. To the extent the Subscription Term is not specified in the Order Form, Licensor shall be entitled to terminate the Agreement and revoke the License at any time.
31
+ 3.3 The term of the License shall be determined in the Order Form (the “**Subscription Term**”). The License shall commence upon initial payment of the License Fees and terminate upon the end of the Subscription Term(s). Unless stated otherwise in the Order Form, the initial Subscription Term shall automatically be extended by further consecutive Subscription Terms unless either of the Parties notifies the other in writing of its intent to terminate the License at least one month (one week in case of a monthly Subscription Term) prior to the end of the current Subscription Term. Upon expiration of the Subscription Term(s), the right to use the Software shall cease without further notice. To the extent the Subscription Term is not specified in the Order Form, Licensor shall be entitled to terminate the Agreement and revoke the License at any time.
32
32
 
33
- 3.4 The License shall be limited to the right (i) to copy and – in case of disclosure in source code format – modify the Software for integration into one of Licensee’s products (website or app) (the “__Licenses Product__”) in accordance with the requirements of interfaces and implementation guidelines as issued by Licensor (the “__Integrated Software__”) and (ii) to copy, distribute and make available the Integrated Software to Licensee’s end customers.
33
+ 3.4 The License shall be limited to the right (i) to copy and – in case of disclosure in source code format – modify the Software for integration into one of Licensee’s products (website or app) (the “**Licenses Product**”) in accordance with the requirements of interfaces and implementation guidelines as issued by Licensor (the “**Integrated Software**”) and (ii) to copy, distribute and make available the Integrated Software to Licensee’s end customers.
34
34
 
35
35
  ### 4. Obligations and Restrictions
36
36
 
@@ -50,13 +50,13 @@
50
50
 
51
51
  ### 6. Third Party Components
52
52
 
53
- 6.1 The Software implements components licensed under open source licenses as identified in Annex 1 (the “__OSS Components__”) and further software components and content data (fonts, stickers, stock images, etc.) provided by third parties as identified in Annex 2 (the “__Third Party Components__”). The use of the OSS Components and the Third Party Components is subject to the applicable separate licensing terms. Licensor does not act as sublicensor or agent in this regard and assumes or acknowledges no warranty or liability for the OSS Components and the Third Party Components.
53
+ 6.1 The Software implements components licensed under open source licenses as identified in Annex 1 (the “**OSS Components**”) and further software components and content data (fonts, stickers, stock images, etc.) provided by third parties as identified in Annex 2 (the “**Third Party Components**”). The use of the OSS Components and the Third Party Components is subject to the applicable separate licensing terms. Licensor does not act as sublicensor or agent in this regard and assumes or acknowledges no warranty or liability for the OSS Components and the Third Party Components.
54
54
 
55
55
  6.2 Licensee shall only use further third party software components or content data (fonts, stickers, stock images, etc.) with the Software to the extent that Licensee is entitled to such use. Licensor shall not be liable or responsible for any use of third party software components or content data by Licensee. Licensee shall indemnify and hold harmless Licensor from any third-party claims caused by Licensee’s actions involving third party software components or content data.
56
56
 
57
57
  ### 7. Payment
58
58
 
59
- 7.1 The license fees as specified in the Order Form (the “__License Fees__”) shall be due and payable in line with the Payment Periods. To the extent the due date is not specified in the Order Form, the License Fees shall be due upon the execution of the Order Form and then upon the commencement of each further Payment Period for all of the Subscription Term.
59
+ 7.1 The license fees as specified in the Order Form (the “**License Fees**”) shall be due and payable in line with the Payment Periods. To the extent the due date is not specified in the Order Form, the License Fees shall be due upon the execution of the Order Form and then upon the commencement of each further Payment Period for all of the Subscription Term.
60
60
 
61
61
  7.2 Licensor shall invoice the License Fees to Licensee. Invoices are payable without deduction within 14 days of the date of the invoice and may be made by direct payment on the Website via credit card, if a respective option is provided by Licensor. If Licensee is in default of payment, the outstanding amount shall bear interest as applicable under statutory law. Licensor reserves all further rights resulting from default.
62
62
 
@@ -124,19 +124,19 @@
124
124
 
125
125
  13.8 Should any provision of this Agreement be or become invalid, this shall not affect the validity of the remaining terms. In such event, the Parties shall be obliged to cooperate in the creation of terms which achieve such legally valid result as comes closest commercially to that of the invalid provision. The above shall apply accordingly to the closing of any gaps in the Agreement.
126
126
 
127
-
128
127
  ### Annex 1
128
+
129
129
  #### OSS Components
130
130
 
131
131
  The Open-source software components and their licenses are listed in ThirdPartyLicenses.md
132
132
 
133
133
  ### Annex 2
134
+
134
135
  #### Third Party Components
135
136
 
136
- | Component |
137
- |---|
138
- | Sticker: Flat Icons Vol.2 |
139
- | Sticker: Filled Outlined Icon Pack |
140
- | Fonts: Aleo Bold, Amatic SC, Lobster, Open Sans Bold, Ostrich Sans Black, Ostrich Sans Bold, Trash Hand: _SIL Open Font License_ |
137
+ | Component |
138
+ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
139
+ | Sticker: Flat Icons Vol.2 |
140
+ | Sticker: Filled Outlined Icon Pack |
141
+ | Fonts: Aleo Bold, Amatic SC, Lobster, Open Sans Bold, Ostrich Sans Black, Ostrich Sans Bold, Trash Hand: _SIL Open Font License_ |
141
142
  | Fonts by FontFabric: Bernier Regular, Cheque Regular, Gagalin Regular, Hagin Caps Thin, Intro Inline, Nexa Script, Panton Black Italic Caps, Panton Light Italic Caps, Perfograma: _EULA Free Fonts_ |
142
-
@@ -620,7 +620,7 @@
620
620
  },
621
621
  {
622
622
  "id": "//ly.img.cesdk.filters.lut/lomo",
623
- "groups": [],
623
+ "groups": ["//ly.img.cesdk.filters.lut/category/legacy"],
624
624
  "label": {
625
625
  "en": "Lomo"
626
626
  },
@@ -104,23 +104,6 @@
104
104
  "height": 2048
105
105
  }
106
106
  },
107
- {
108
- "id": "//ly.img.cesdk.stickers.doodle/pipe",
109
- "groups": ["//ly.img.cesdk.stickers.doodle/category/doodle"],
110
- "label": {
111
- "en": "Pipe",
112
- "de": "Pfeife"
113
- },
114
- "tags": {},
115
- "meta": {
116
- "uri": "{{base_url}}/ly.img.sticker/images/doodle/doodle_pipe.svg",
117
- "thumbUri": "{{base_url}}/ly.img.sticker/thumbnails/doodle/doodle_pipe.png",
118
- "filename": "doodle_pipe.svg",
119
- "blockType": "//ly.img.ubq/sticker",
120
- "width": 1551,
121
- "height": 2048
122
- }
123
- },
124
107
  {
125
108
  "id": "//ly.img.cesdk.stickers.doodle/rocket",
126
109
  "groups": ["//ly.img.cesdk.stickers.doodle/category/doodle"],
@@ -345,23 +328,6 @@
345
328
  "height": 1696
346
329
  }
347
330
  },
348
- {
349
- "id": "//ly.img.cesdk.stickers.emoji/beer",
350
- "groups": ["//ly.img.cesdk.stickers.emoji/category/emoji"],
351
- "label": {
352
- "en": "Beer",
353
- "de": "Bier"
354
- },
355
- "tags": {},
356
- "meta": {
357
- "uri": "{{base_url}}/ly.img.sticker/images/emoji/emoji_beer.svg",
358
- "thumbUri": "{{base_url}}/ly.img.sticker/thumbnails/emoji/emoji_beer.png",
359
- "filename": "emoji_beer.svg",
360
- "blockType": "//ly.img.ubq/sticker",
361
- "width": 1656,
362
- "height": 2048
363
- }
364
- },
365
331
  {
366
332
  "id": "//ly.img.cesdk.stickers.emoji/crying",
367
333
  "groups": ["//ly.img.cesdk.stickers.emoji/category/emoji"],
@@ -1025,23 +991,6 @@
1025
991
  "height": 58
1026
992
  }
1027
993
  },
1028
- {
1029
- "id": "//ly.img.cesdk.stickers.emoticons/beer",
1030
- "groups": ["//ly.img.cesdk.stickers.emoticons/category/emoticons"],
1031
- "label": {
1032
- "en": "Beer",
1033
- "de": "Bier"
1034
- },
1035
- "tags": {},
1036
- "meta": {
1037
- "uri": "{{base_url}}/ly.img.sticker/images/emoticons/imgly_sticker_emoticons_beer.svg",
1038
- "thumbUri": "{{base_url}}/ly.img.sticker/thumbnails/emoticons/imgly_sticker_emoticons_beer.png",
1039
- "filename": "imgly_sticker_emoticons_beer.svg",
1040
- "blockType": "//ly.img.ubq/sticker",
1041
- "width": 62,
1042
- "height": 59
1043
- }
1044
- },
1045
994
  {
1046
995
  "id": "//ly.img.cesdk.stickers.emoticons/blush",
1047
996
  "groups": ["//ly.img.cesdk.stickers.emoticons/category/emoticons"],
@@ -1280,23 +1229,6 @@
1280
1229
  "height": 62
1281
1230
  }
1282
1231
  },
1283
- {
1284
- "id": "//ly.img.cesdk.stickers.emoticons/hitman",
1285
- "groups": ["//ly.img.cesdk.stickers.emoticons/category/emoticons"],
1286
- "label": {
1287
- "en": "Hitman",
1288
- "de": "Auftragsmörder"
1289
- },
1290
- "tags": {},
1291
- "meta": {
1292
- "uri": "{{base_url}}/ly.img.sticker/images/emoticons/imgly_sticker_emoticons_hitman.svg",
1293
- "thumbUri": "{{base_url}}/ly.img.sticker/thumbnails/emoticons/imgly_sticker_emoticons_hitman.png",
1294
- "filename": "imgly_sticker_emoticons_hitman.svg",
1295
- "blockType": "//ly.img.ubq/sticker",
1296
- "width": 64,
1297
- "height": 60
1298
- }
1299
- },
1300
1232
  {
1301
1233
  "id": "//ly.img.cesdk.stickers.emoticons/humourous",
1302
1234
  "groups": ["//ly.img.cesdk.stickers.emoticons/category/emoticons"],
@@ -1688,23 +1620,6 @@
1688
1620
  "height": 58
1689
1621
  }
1690
1622
  },
1691
- {
1692
- "id": "//ly.img.cesdk.stickers.emoticons/smoking",
1693
- "groups": ["//ly.img.cesdk.stickers.emoticons/category/emoticons"],
1694
- "label": {
1695
- "en": "Smoking",
1696
- "de": "rauchen"
1697
- },
1698
- "tags": {},
1699
- "meta": {
1700
- "uri": "{{base_url}}/ly.img.sticker/images/emoticons/imgly_sticker_emoticons_smoking.svg",
1701
- "thumbUri": "{{base_url}}/ly.img.sticker/thumbnails/emoticons/imgly_sticker_emoticons_smoking.png",
1702
- "filename": "imgly_sticker_emoticons_smoking.svg",
1703
- "blockType": "//ly.img.ubq/sticker",
1704
- "width": 62,
1705
- "height": 58
1706
- }
1707
- },
1708
1623
  {
1709
1624
  "id": "//ly.img.cesdk.stickers.emoticons/sobbing",
1710
1625
  "groups": ["//ly.img.cesdk.stickers.emoticons/category/emoticons"],
@@ -1875,26 +1790,6 @@
1875
1790
  "height": 60
1876
1791
  }
1877
1792
  },
1878
- {
1879
- "id": "//ly.img.cesdk.stickers.hand/alive",
1880
- "groups": ["//ly.img.cesdk.stickers.hand/category/hand"],
1881
- "label": {
1882
- "en": "Alive",
1883
- "de": "Alive"
1884
- },
1885
- "tags": {
1886
- "en": ["hand"],
1887
- "de": ["hand"]
1888
- },
1889
- "meta": {
1890
- "uri": "{{base_url}}/ly.img.sticker/images/hand/hand_alive.svg",
1891
- "thumbUri": "{{base_url}}/ly.img.sticker/thumbnails/hand/hand_alive.png",
1892
- "filename": "hand_alive.svg",
1893
- "blockType": "//ly.img.ubq/sticker",
1894
- "width": 1425,
1895
- "height": 2048
1896
- }
1897
- },
1898
1793
  {
1899
1794
  "id": "//ly.img.cesdk.stickers.hand/five",
1900
1795
  "groups": ["//ly.img.cesdk.stickers.hand/category/hand"],
@@ -1935,26 +1830,6 @@
1935
1830
  "height": 2048
1936
1831
  }
1937
1832
  },
1938
- {
1939
- "id": "//ly.img.cesdk.stickers.hand/fuck",
1940
- "groups": ["//ly.img.cesdk.stickers.hand/category/hand"],
1941
- "label": {
1942
- "en": "Fuck the rules",
1943
- "de": "Fuck the rules"
1944
- },
1945
- "tags": {
1946
- "en": ["hand"],
1947
- "de": ["hand"]
1948
- },
1949
- "meta": {
1950
- "uri": "{{base_url}}/ly.img.sticker/images/hand/hand_fuck.svg",
1951
- "thumbUri": "{{base_url}}/ly.img.sticker/thumbnails/hand/hand_fuck.png",
1952
- "filename": "hand_fuck.svg",
1953
- "blockType": "//ly.img.ubq/sticker",
1954
- "width": 849,
1955
- "height": 2048
1956
- }
1957
- },
1958
1833
  {
1959
1834
  "id": "//ly.img.cesdk.stickers.hand/heart",
1960
1835
  "groups": ["//ly.img.cesdk.stickers.hand/category/hand"],
package/index.d.ts CHANGED
@@ -463,19 +463,19 @@ export declare class BlockAPI {
463
463
  * @param type - The type of the block that shall be created.
464
464
  * @returns The created blocks handle.
465
465
  */
466
- create(type: DesignBlockType): DesignBlockId;
466
+ create(type: DesignBlockTypes): DesignBlockId;
467
467
  /**
468
468
  * Create a new fill, fails if type is unknown.
469
469
  * @param type - The type of the fill object that shall be created.
470
470
  * @returns The created fill's handle.
471
471
  */
472
- createFill(type: string): DesignBlockId;
472
+ createFill(type: FillTypes): DesignBlockId;
473
473
  /**
474
474
  * Get the type of the given block, fails if the block is invalid.
475
475
  * @param id - The block to query.
476
476
  * @returns The blocks type.
477
477
  */
478
- getType(id: DesignBlockId): DesignBlockType;
478
+ getType(id: DesignBlockId): BlockTypesLonghand;
479
479
  /**
480
480
  * Get the kind of the given block, fails if the block is invalid.
481
481
  * @param id - The block to query.
@@ -580,7 +580,7 @@ export declare class BlockAPI {
580
580
  * @param type - The type to search for.
581
581
  * @returns A list of block ids.
582
582
  */
583
- findByType(type: DesignBlockType): DesignBlockId[];
583
+ findByType(type: BlockTypes): DesignBlockId[];
584
584
  /**
585
585
  * Finds all blocks with the given kind.
586
586
  * @param kind - The kind to search for.
@@ -602,7 +602,7 @@ export declare class BlockAPI {
602
602
  * @param type - The type of the shape object that shall be created.
603
603
  * @returns The created shape's handle.
604
604
  */
605
- createShape(type: string): DesignBlockId;
605
+ createShape(type: ShapeTypes): DesignBlockId;
606
606
  /**
607
607
  * Query if the given block has a shape property.
608
608
  * @param id - The block to query.
@@ -707,6 +707,15 @@ export declare class BlockAPI {
707
707
  * @param enabled - whether the block shall be always-on-top.
708
708
  */
709
709
  setAlwaysOnTop(id: DesignBlockId, enabled: boolean): void;
710
+ /**
711
+ * Update the block's always-on-bottom property. If true, this blocks's global sorting order is automatically
712
+ * adjusted to be lower than all other siblings without this property. If more than one block is set to be always-on-bottom,
713
+ * the child order decides which is on bottom.
714
+ *
715
+ * @param id - the block to update.
716
+ * @param enabled - whether the block shall always be below its siblings.
717
+ */
718
+ setAlwaysOnBottom(id: DesignBlockId, enabled: boolean): void;
710
719
  /**
711
720
  * Query a block's always-on-top property.
712
721
  *
@@ -714,6 +723,13 @@ export declare class BlockAPI {
714
723
  * @returns true if the block is set to be always-on-top, false otherwise.
715
724
  */
716
725
  isAlwaysOnTop(id: DesignBlockId): boolean;
726
+ /**
727
+ * Query a block's always-on-bottom property.
728
+ *
729
+ * @param id - the block to query.
730
+ * @returns true if the block is set to be always-on-bottom, false otherwise.
731
+ */
732
+ isAlwaysOnBottom(id: DesignBlockId): boolean;
717
733
  /**
718
734
  * Updates the sorting order of this block and all of its manually created siblings
719
735
  * so that the given block has the highest sorting order.
@@ -987,6 +1003,11 @@ export declare class BlockAPI {
987
1003
  * @returns Whether the blocks can be distributed.
988
1004
  */
989
1005
  isDistributable(ids: DesignBlockId[]): boolean;
1006
+ /**
1007
+ * Resize and position a block to entirely fill its parent block.
1008
+ * @param id - The block that should fill its parent.
1009
+ */
1010
+ fillParent(id: DesignBlockId): void;
990
1011
  /**
991
1012
  * Resize all blocks to the given size. The content of the blocks is automatically adjusted
992
1013
  * to fit the new dimensions.
@@ -1378,7 +1399,7 @@ export declare class BlockAPI {
1378
1399
  * @param type - The type id of the effect.
1379
1400
  * @returns The created effects handle.
1380
1401
  */
1381
- createEffect(type: string): DesignBlockId;
1402
+ createEffect(type: EffectTypes): DesignBlockId;
1382
1403
  /**
1383
1404
  * Queries whether the block supports effects.
1384
1405
  * @param id - The block to query.
@@ -1435,7 +1456,7 @@ export declare class BlockAPI {
1435
1456
  * @param type - The type id of the block.
1436
1457
  * @returns The handle of the newly created blur.
1437
1458
  */
1438
- createBlur(type: string): DesignBlockId;
1459
+ createBlur(type: BlurTypes): DesignBlockId;
1439
1460
  /**
1440
1461
  * Checks whether the block supports blur.
1441
1462
  * @param id - The block to query.
@@ -2242,6 +2263,48 @@ export declare interface BlockEvent {
2242
2263
  type: 'Created' | 'Updated' | 'Destroyed';
2243
2264
  }
2244
2265
 
2266
+ /**
2267
+ * The block type IDs for all blocks types in the Creative Engine. Those are the types that can be
2268
+ * passed to `cesdk.engine.block.findByType(type)` for example.
2269
+ * @public
2270
+ */
2271
+ export declare type BlockTypes = BlockTypesShorthand | BlockTypesLonghand;
2272
+
2273
+ /**
2274
+ * The longhand block type IDs for all blocks types in the Creative Engine. Those are the Types returned by the
2275
+ * engine when calling `cesdk.engine.block.getType(blockId)` for example.
2276
+ * @public
2277
+ */
2278
+ export declare type BlockTypesLonghand = DesignBlockTypesLonghand | ShapeTypesLonghand | FillTypesLonghand | EffectTypesLonghand | BlurTypesLonghand;
2279
+
2280
+ /**
2281
+ * The shorthand block type IDs for all blocks types in the Creative Engine. Those are the types that can be
2282
+ * passed to `cesdk.engine.block.findByType(type)` for example.
2283
+ * @public
2284
+ */
2285
+ export declare type BlockTypesShorthand = DesignBlockTypesShorthand | `shape/${ShapeTypesShorthand}` | `fill/${FillTypesShorthand}` | `effect/${EffectTypesShorthand}` | `blur/${BlurTypesShorthand}`;
2286
+
2287
+ /**
2288
+ * The block type IDs for the blur blocks. These are the IDs used to create new blurs
2289
+ * using `cesdk.engine.editor.createBlur(id)`.
2290
+ * @public
2291
+ */
2292
+ export declare type BlurTypes = BlurTypesShorthand | BlurTypesLonghand;
2293
+
2294
+ /**
2295
+ * The longhand block type IDs for the blur blocks. These are the IDs used to create new blurs
2296
+ * using `cesdk.engine.editor.createBlur(id)`.
2297
+ * @public
2298
+ */
2299
+ export declare type BlurTypesLonghand = `//ly.img.ubq/blur/${BlurTypesShorthand}`;
2300
+
2301
+ /**
2302
+ * The shorthand block type IDs for the blur blocks. These are the IDs used to create new blurs
2303
+ * using `cesdk.engine.editor.createBlur(id)`.
2304
+ * @public
2305
+ */
2306
+ export declare type BlurTypesShorthand = 'uniform' | 'linear' | 'mirrored' | 'radial';
2307
+
2245
2308
  /**
2246
2309
  * @public
2247
2310
  */
@@ -2690,6 +2753,7 @@ export declare type DesignBlockId = number;
2690
2753
 
2691
2754
  /**
2692
2755
  * @public
2756
+ * @deprecated The DesignBlockType enum is deprecated and replaced with string literals. See `BlockTypes`, `ShapeTypes`, and `FillTypes`.
2693
2757
  */
2694
2758
  export declare enum DesignBlockType {
2695
2759
  Scene = "//ly.img.ubq/scene",
@@ -2718,6 +2782,27 @@ export declare enum DesignBlockType {
2718
2782
  ConicalGradientFill = "//ly.img.ubq/fill/gradient/conical"
2719
2783
  }
2720
2784
 
2785
+ /**
2786
+ * The block type IDs for the top-level design blocks. These are the IDs used to create new blocks
2787
+ * using `cesdk.engine.editor.cerate(id)`.
2788
+ * @public
2789
+ */
2790
+ export declare type DesignBlockTypes = DesignBlockTypesShorthand | DesignBlockTypesLonghand;
2791
+
2792
+ /**
2793
+ * The longhand block type IDs for the top-level design blocks. These are the IDs used to create new blocks
2794
+ * using `cesdk.engine.editor.cerate(id)`.
2795
+ * @public
2796
+ */
2797
+ export declare type DesignBlockTypesLonghand = `//ly.img.ubq/${DesignBlockTypesShorthand}`;
2798
+
2799
+ /**
2800
+ * The shorthand block type IDs for the top-level design blocks. These are the IDs used to create new blocks
2801
+ * using `cesdk.engine.editor.cerate(id)`.
2802
+ * @public
2803
+ */
2804
+ export declare type DesignBlockTypesShorthand = 'scene' | 'stack' | 'camera' | 'page' | 'graphic' | 'audio' | 'text' | 'group' | 'cutout' | LegacyDesignBlockTypesShorthand;
2805
+
2721
2806
  /**
2722
2807
  * The unit type in which the page values (size, distances, etc.) are defined.
2723
2808
  * @public
@@ -3053,6 +3138,27 @@ export declare class EditorAPI {
3053
3138
  convertColorToColorSpace(color: Color, colorSpace: ColorSpace): never;
3054
3139
  }
3055
3140
 
3141
+ /**
3142
+ * The block type IDs for the effect blocks. These are the IDs used to create new effects
3143
+ * using `cesdk.engine.editor.createEffect(id)`.
3144
+ * @public
3145
+ */
3146
+ export declare type EffectTypes = EffectTypesShorthand | EffectTypesLonghand;
3147
+
3148
+ /**
3149
+ * The longhand block type IDs for the effect blocks. These are the IDs used to create new effects
3150
+ * using `cesdk.engine.editor.createEffect(id)`.
3151
+ * @public
3152
+ */
3153
+ export declare type EffectTypesLonghand = `//ly.img.ubq/effect/${EffectTypesShorthand}`;
3154
+
3155
+ /**
3156
+ * The shorthand block type IDs for the effect blocks. These are the IDs used to create new effects
3157
+ * using `cesdk.engine.editor.createEffect(id)`.
3158
+ * @public
3159
+ */
3160
+ export declare type EffectTypesShorthand = 'pixelize' | 'radial_pixel' | 'cross_cut' | 'liquid' | 'outliner' | 'dot_pattern' | 'posterize' | 'tv_glitch' | 'half_tone' | 'linocut' | 'shifter' | 'mirror' | 'glow' | 'vignette' | 'tilt_shift' | 'extrude_blur' | 'sharpie' | 'lut_filter' | 'duotone_filter' | 'adjustments';
3161
+
3056
3162
  /**
3057
3163
  * @public
3058
3164
  */
@@ -3137,6 +3243,27 @@ declare interface ExportVideoOptions {
3137
3243
  targetHeight: number;
3138
3244
  }
3139
3245
 
3246
+ /**
3247
+ * The block type IDs for the fill blocks. These are the IDs used to create new fills
3248
+ * using `cesdk.engine.editor.createFill(id)`.
3249
+ * @public
3250
+ */
3251
+ export declare type FillTypes = FillTypesShorthand | FillTypesLonghand;
3252
+
3253
+ /**
3254
+ * The longhand block type IDs for the fill blocks. These are the IDs used to create new fills
3255
+ * using `cesdk.engine.editor.createFill(id)`.
3256
+ * @public
3257
+ */
3258
+ export declare type FillTypesLonghand = `//ly.img.ubq/fill/${FillTypesShorthand}`;
3259
+
3260
+ /**
3261
+ * The shorthand block type IDs for the fill blocks. These are the IDs used to create new fills
3262
+ * using `cesdk.engine.editor.createFill(id)`.
3263
+ * @public
3264
+ */
3265
+ export declare type FillTypesShorthand = 'video' | 'image' | 'color' | 'gradient/linear' | 'gradient/radial' | 'gradient/conical' | 'pixelStream';
3266
+
3140
3267
  /** @public */
3141
3268
  declare interface FindAssetsQuery {
3142
3269
  perPage: number;
@@ -3203,6 +3330,14 @@ export declare type HistoryId = number;
3203
3330
  */
3204
3331
  export declare type HorizontalBlockAlignment = 'Left' | 'Right' | 'Center';
3205
3332
 
3333
+ /**
3334
+ * The shorthand block type IDs for legacy design blocks.
3335
+ * @public
3336
+ * @deprecated These design block IDs are deprecated, you should migrate to using the new graphic design block
3337
+ * instead by setting `cesdk.engine.editor.setSettingBool('features/unifiedBlocksEnabled', true)`
3338
+ */
3339
+ export declare type LegacyDesignBlockTypesShorthand = 'image' | 'video' | 'sticker' | 'vector_path' | 'shapes/rect' | 'shapes/line' | 'shapes/star' | 'shapes/polygon' | 'shapes/ellipse';
3340
+
3206
3341
  /**
3207
3342
  * e.g. `en`, `de`, etc.
3208
3343
  * @public
@@ -3422,6 +3557,23 @@ export declare class SceneAPI {
3422
3557
  * @returns The sorted list of pages in the scene.
3423
3558
  */
3424
3559
  getPages(): DesignBlockId[];
3560
+ /**
3561
+ * Get the current page, i.e., the page nearest to the view port center.
3562
+ * @returns The current page in the scene or null.
3563
+ */
3564
+ getCurrentPage(): DesignBlockId | null;
3565
+ /**
3566
+ * Find all blocks with the given type sorted by the distance to view port center.
3567
+ * @param type - The type to search for.
3568
+ * @returns A list of block ids sorted by distance to view port center.
3569
+ */
3570
+ findNearestToViewPortCenterByType(type: DesignBlockTypes): DesignBlockId[];
3571
+ /**
3572
+ * Find all blocks with the given kind sorted by the distance to view port center.
3573
+ * @param kind - The kind to search for.
3574
+ * @returns A list of block ids sorted by distance to view port center.
3575
+ */
3576
+ findNearestToViewPortCenterByKind(kind: string): DesignBlockId[];
3425
3577
  /**
3426
3578
  * Set the zoom level of the scene, e.g., for headless versions.
3427
3579
  * This only shows an effect if the zoom level is not handled/overwritten by the UI.
@@ -3572,7 +3724,7 @@ export declare type SceneLayout = 'Free' | 'VerticalStack' | 'HorizontalStack' |
3572
3724
  export declare type SceneMode = 'Design' | 'Video';
3573
3725
 
3574
3726
  /** @public */
3575
- export declare type SettingsBool = 'doubleClickToCropEnabled' | 'features/effectsEnabled' | 'features/hspSelectiveAdjustmentsEnabled' | 'features/layerListEnabled' | 'features/singlePageModeEnabled' | 'features/templatingEnabled' | 'page/dimOutOfPageAreas' | 'page/title/show' | 'placeholderControls/showButton' | 'placeholderControls/showOverlay' | 'showBuildVersion' | 'touch/dragStartCanSelect' | 'touch/singlePointPanning' | 'trackActivePage' | ArbitraryString;
3727
+ export declare type SettingsBool = 'doubleClickToCropEnabled' | 'features/effectsEnabled' | 'features/hspSelectiveAdjustmentsEnabled' | 'features/layerListEnabled' | 'features/singlePageModeEnabled' | 'features/templatingEnabled' | 'page/dimOutOfPageAreas' | 'page/title/show' | 'placeholderControls/showButton' | 'placeholderControls/showOverlay' | 'showBuildVersion' | 'touch/dragStartCanSelect' | 'touch/singlePointPanning' | ArbitraryString;
3576
3728
 
3577
3729
  /** @public
3578
3730
  */
@@ -3601,6 +3753,27 @@ export declare type SettingsString = 'basePath' | 'license' | 'page/title/fontFi
3601
3753
  /** @public */
3602
3754
  export declare type SettingType = 'Bool' | 'Int' | 'Float' | 'String' | 'Color' | 'Enum';
3603
3755
 
3756
+ /**
3757
+ * The block type IDs for the shape blocks. These are the IDs used to create new shapes
3758
+ * using `cesdk.engine.editor.createShape(id)`.
3759
+ * @public
3760
+ */
3761
+ export declare type ShapeTypes = ShapeTypesShorthand | ShapeTypesLonghand;
3762
+
3763
+ /**
3764
+ * The longhand block type IDs for the blocks. These are the IDs used to create new shapes
3765
+ * using `cesdk.engine.editor.createShape(id)`.
3766
+ * @public
3767
+ */
3768
+ export declare type ShapeTypesLonghand = `//ly.img.ubq/shape/${ShapeTypesShorthand}`;
3769
+
3770
+ /**
3771
+ * The shorthand block type IDs for the shape blocks. These are the IDs used to create new shapes
3772
+ * using `cesdk.engine.editor.createShape(id)`.
3773
+ * @public
3774
+ */
3775
+ export declare type ShapeTypesShorthand = 'vector_path' | 'rect' | 'line' | 'star' | 'polygon' | 'ellipse';
3776
+
3604
3777
  /** @public */
3605
3778
  export declare interface Size2 {
3606
3779
  width: number;