@elementor/editor-components 4.0.0-manual → 4.1.0-684

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/index.d.mts +1422 -1
  2. package/dist/index.d.ts +1422 -1
  3. package/dist/index.js +1964 -4820
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +1901 -4849
  6. package/dist/index.mjs.map +1 -1
  7. package/package.json +23 -23
  8. package/src/components/components-tab/components-list.tsx +47 -4
  9. package/src/components/components-tab/components-pro-notification.tsx +9 -15
  10. package/src/components/components-tab/components.tsx +51 -3
  11. package/src/components/components-tab/loading-components.tsx +26 -14
  12. package/src/components/components-upgrade-alert.tsx +39 -0
  13. package/src/components/detach-instance-confirmation-dialog.tsx +50 -0
  14. package/src/components/instance-editing-panel/detach-action.tsx +76 -0
  15. package/src/components/instance-editing-panel/empty-state.tsx +9 -2
  16. package/src/components/instance-editing-panel/instance-editing-panel.tsx +25 -6
  17. package/src/components/instance-editing-panel/use-instance-panel-data.ts +2 -2
  18. package/src/consts.ts +1 -0
  19. package/src/create-component-type.ts +89 -26
  20. package/src/index.ts +92 -0
  21. package/src/init.ts +6 -4
  22. package/src/store/actions/update-overridable-prop.ts +4 -10
  23. package/src/store/dispatchers.ts +63 -0
  24. package/src/store/extensible-slice.ts +168 -0
  25. package/src/store/selectors.ts +53 -0
  26. package/src/store/store-types.ts +48 -0
  27. package/src/store/store.ts +7 -169
  28. package/src/sync/publish-draft-components-in-page-before-save.ts +42 -1
  29. package/src/types.ts +1 -1
  30. package/src/utils/detach-component-instance/detach-component-instance.ts +172 -0
  31. package/src/utils/detach-component-instance/index.ts +1 -0
  32. package/src/utils/detach-component-instance/regenerate-local-style-ids.ts +53 -0
  33. package/src/utils/detach-component-instance/resolve-detached-instance.ts +94 -0
  34. package/src/utils/detach-component-instance/resolve-overridable-settings.ts +121 -0
  35. package/src/utils/is-component-instance.ts +1 -1
  36. package/src/utils/tracking.ts +2 -1
  37. package/src/extended/components/component-introduction.tsx +0 -77
  38. package/src/extended/components/component-panel-header/component-badge.tsx +0 -73
  39. package/src/extended/components/component-panel-header/component-panel-header.tsx +0 -98
  40. package/src/extended/components/component-properties-panel/component-properties-panel-content.tsx +0 -176
  41. package/src/extended/components/component-properties-panel/component-properties-panel.tsx +0 -43
  42. package/src/extended/components/component-properties-panel/properties-empty-state.tsx +0 -51
  43. package/src/extended/components/component-properties-panel/properties-group.tsx +0 -196
  44. package/src/extended/components/component-properties-panel/property-item.tsx +0 -124
  45. package/src/extended/components/component-properties-panel/sortable.tsx +0 -92
  46. package/src/extended/components/component-properties-panel/use-current-editable-item.ts +0 -73
  47. package/src/extended/components/component-properties-panel/utils/generate-unique-label.ts +0 -21
  48. package/src/extended/components/component-properties-panel/utils/validate-group-label.ts +0 -24
  49. package/src/extended/components/components-tab/component-item.tsx +0 -180
  50. package/src/extended/components/components-tab/components.tsx +0 -58
  51. package/src/extended/components/components-tab/delete-confirmation-dialog.tsx +0 -26
  52. package/src/extended/components/create-component-form/create-component-form.tsx +0 -282
  53. package/src/extended/components/create-component-form/hooks/use-form.ts +0 -72
  54. package/src/extended/components/create-component-form/utils/get-component-event-data.ts +0 -54
  55. package/src/extended/components/edit-component/component-modal.tsx +0 -133
  56. package/src/extended/components/edit-component/edit-component.tsx +0 -166
  57. package/src/extended/components/edit-component/use-canvas-document.ts +0 -9
  58. package/src/extended/components/edit-component/use-element-rect.ts +0 -81
  59. package/src/extended/components/instance-editing-panel/instance-editing-panel.tsx +0 -60
  60. package/src/extended/components/overridable-props/indicator.tsx +0 -83
  61. package/src/extended/components/overridable-props/overridable-prop-control.tsx +0 -127
  62. package/src/extended/components/overridable-props/overridable-prop-form.tsx +0 -135
  63. package/src/extended/components/overridable-props/overridable-prop-indicator.tsx +0 -138
  64. package/src/extended/components/overridable-props/utils/validate-prop-label.ts +0 -38
  65. package/src/extended/consts.ts +0 -3
  66. package/src/extended/hooks/use-navigate-back.ts +0 -24
  67. package/src/extended/init.ts +0 -104
  68. package/src/extended/mcp/index.ts +0 -14
  69. package/src/extended/mcp/save-as-component-tool.ts +0 -436
  70. package/src/extended/store/actions/add-overridable-group.ts +0 -59
  71. package/src/extended/store/actions/archive-component.ts +0 -19
  72. package/src/extended/store/actions/create-unpublished-component.ts +0 -102
  73. package/src/extended/store/actions/delete-overridable-group.ts +0 -38
  74. package/src/extended/store/actions/delete-overridable-prop.ts +0 -70
  75. package/src/extended/store/actions/rename-component.ts +0 -49
  76. package/src/extended/store/actions/rename-overridable-group.ts +0 -39
  77. package/src/extended/store/actions/reorder-group-props.ts +0 -43
  78. package/src/extended/store/actions/reorder-overridable-groups.ts +0 -30
  79. package/src/extended/store/actions/reset-sanitized-components.ts +0 -7
  80. package/src/extended/store/actions/set-overridable-prop.ts +0 -117
  81. package/src/extended/store/actions/update-component-sanitized-attribute.ts +0 -8
  82. package/src/extended/store/actions/update-current-component.ts +0 -21
  83. package/src/extended/store/actions/update-overridable-prop-params.ts +0 -58
  84. package/src/extended/store/utils/groups-transformers.ts +0 -187
  85. package/src/extended/sync/before-save.ts +0 -52
  86. package/src/extended/sync/cleanup-overridable-props-on-delete.ts +0 -85
  87. package/src/extended/sync/create-components-before-save.ts +0 -113
  88. package/src/extended/sync/handle-component-edit-mode-container.ts +0 -114
  89. package/src/extended/sync/prevent-non-atomic-nesting.ts +0 -198
  90. package/src/extended/sync/revert-overridables-on-copy-or-duplicate.ts +0 -66
  91. package/src/extended/sync/sanitize-overridable-props.ts +0 -32
  92. package/src/extended/sync/set-component-overridable-props-settings-before-save.ts +0 -23
  93. package/src/extended/sync/update-archived-component-before-save.ts +0 -32
  94. package/src/extended/sync/update-component-title-before-save.ts +0 -19
  95. package/src/extended/utils/component-form-schema.ts +0 -32
  96. package/src/extended/utils/component-name-validation.ts +0 -27
  97. package/src/extended/utils/create-component-model.ts +0 -28
  98. package/src/extended/utils/get-container-for-new-element.ts +0 -49
  99. package/src/extended/utils/is-editing-component.ts +0 -13
  100. package/src/extended/utils/replace-element-with-component.ts +0 -11
  101. package/src/extended/utils/revert-overridable-settings.ts +0 -207
package/dist/index.d.ts CHANGED
@@ -1,3 +1,1424 @@
1
+ import * as axios from 'axios';
2
+ import * as _elementor_editor_elements from '@elementor/editor-elements';
3
+ import { V1ElementData, V1Element, V1ElementModelProps } from '@elementor/editor-elements';
4
+ import { HttpResponse } from '@elementor/http-client';
5
+ import * as _elementor_editor_props from '@elementor/editor-props';
6
+ import { PropValue } from '@elementor/editor-props';
7
+ import { StyleDefinition } from '@elementor/editor-styles';
8
+ import * as React from 'react';
9
+ import { ElementType, PropsWithChildren } from 'react';
10
+ import { z } from '@elementor/schema';
11
+ import { useElement } from '@elementor/editor-editing-panel';
12
+ import { V1Document } from '@elementor/editor-documents';
13
+ import * as reselect from 'reselect';
14
+ import { PayloadAction, SliceState } from '@elementor/store';
15
+ import * as immer_dist_internal_js from 'immer/dist/internal.js';
16
+ import * as _reduxjs_toolkit_dist_tsHelpers from '@reduxjs/toolkit/dist/tsHelpers';
17
+ import * as _reduxjs_toolkit from '@reduxjs/toolkit';
18
+
1
19
  declare function init(): void;
2
20
 
3
- export { init };
21
+ type ComponentFormValues = {
22
+ componentName: string;
23
+ };
24
+ type ComponentId = number;
25
+ type StylesDefinition = Record<ComponentId, StyleDefinition[]>;
26
+ type Component = PublishedComponent | UnpublishedComponent;
27
+ type PublishedComponent = BaseComponent & {
28
+ id: number;
29
+ isArchived?: boolean;
30
+ };
31
+ type OriginalElementData = {
32
+ model: V1ElementData;
33
+ parentId: string;
34
+ index: number;
35
+ };
36
+ type UnpublishedComponent = BaseComponent & {
37
+ elements: V1ElementData[];
38
+ };
39
+ type OriginPropFields = Pick<OverridableProp, 'propKey' | 'widgetType' | 'elType' | 'elementId'>;
40
+ type OverridableProp = {
41
+ overrideKey: string;
42
+ label: string;
43
+ elementId: string;
44
+ propKey: string;
45
+ elType: string;
46
+ widgetType: string;
47
+ originValue: PropValue;
48
+ groupId: string;
49
+ originPropFields?: OriginPropFields;
50
+ };
51
+ type OverridablePropsGroup = {
52
+ id: string;
53
+ label: string;
54
+ props: string[];
55
+ };
56
+ type OverridableProps = {
57
+ props: Record<string, OverridableProp>;
58
+ groups: {
59
+ items: Record<string, OverridablePropsGroup>;
60
+ order: string[];
61
+ };
62
+ };
63
+ type BaseComponent = {
64
+ uid: string;
65
+ name: string;
66
+ overridableProps?: OverridableProps;
67
+ };
68
+ type DocumentStatus = 'publish' | 'draft';
69
+ type DocumentSaveStatus = DocumentStatus | 'autosave';
70
+ type ElementorStorage = {
71
+ get: <T = unknown>(key: string) => T | null;
72
+ set: <T>(key: string, data: T) => void;
73
+ };
74
+ type ExtendedWindow = Window & {
75
+ elementorCommon: Record<string, unknown> & {
76
+ eventsManager: {
77
+ config: {
78
+ locations: Record<string, string | Record<string, string>>;
79
+ secondaryLocations: Record<string, string>;
80
+ triggers: Record<string, string>;
81
+ };
82
+ };
83
+ storage: ElementorStorage;
84
+ };
85
+ elementor?: {
86
+ getContainerByKeyValue?: (args: {
87
+ key: string;
88
+ value: string;
89
+ parent?: V1Element['view'];
90
+ }) => V1Element | null;
91
+ };
92
+ };
93
+ type UpdatedComponentName = {
94
+ componentId: number;
95
+ title: string;
96
+ };
97
+
98
+ type ComponentItems = Array<{
99
+ uid: string;
100
+ title: string;
101
+ elements: V1ElementData[];
102
+ settings?: {
103
+ overridable_props?: OverridableProps;
104
+ };
105
+ }>;
106
+ type CreateComponentPayload = {
107
+ status: DocumentSaveStatus;
108
+ items: ComponentItems;
109
+ };
110
+ type GetComponentResponse = Array<PublishedComponent>;
111
+ type CreateComponentResponse = Record<string, number>;
112
+ type ValidateComponentsPayload = {
113
+ items: ComponentItems;
114
+ };
115
+ type ValidateComponentsResponse = {
116
+ code: string;
117
+ message: string;
118
+ data: {
119
+ status: number;
120
+ meta: Record<string, unknown>;
121
+ };
122
+ };
123
+ declare const apiClient: {
124
+ get: () => Promise<GetComponentResponse>;
125
+ create: (payload: CreateComponentPayload) => Promise<CreateComponentResponse>;
126
+ updateStatuses: (ids: number[], status: DocumentSaveStatus) => Promise<axios.AxiosResponse<any, any, {}>>;
127
+ getComponentConfig: (id: number) => Promise<V1ElementData>;
128
+ invalidateComponentConfigCache: (id: number) => void;
129
+ getComponentLockStatus: (componentId: number) => Promise<{
130
+ isAllowedToSwitchDocument: boolean;
131
+ lockedBy: string;
132
+ }>;
133
+ lockComponent: (componentId: number) => Promise<{
134
+ success: boolean;
135
+ }>;
136
+ unlockComponent: (componentId: number) => Promise<{
137
+ success: boolean;
138
+ }>;
139
+ getOverridableProps: (componentId: number) => Promise<OverridableProps>;
140
+ updateArchivedComponents: (componentIds: number[], status: DocumentSaveStatus) => Promise<{
141
+ failedIds: number[];
142
+ successIds: number[];
143
+ success: boolean;
144
+ }>;
145
+ updateComponentTitle: (updatedComponentNames: UpdatedComponentName[], status: DocumentSaveStatus) => Promise<{
146
+ failedIds: number[];
147
+ successIds: number[];
148
+ success: boolean;
149
+ }>;
150
+ validate: (payload: ValidateComponentsPayload) => Promise<HttpResponse<ValidateComponentsResponse>>;
151
+ };
152
+
153
+ declare const ComponentSearch: () => React.JSX.Element;
154
+
155
+ type ComponentItemProps = {
156
+ component: Omit<Component, 'id'> & {
157
+ id?: number;
158
+ };
159
+ disabled?: boolean;
160
+ draggable?: boolean;
161
+ onDragStart?: React.DragEventHandler;
162
+ onDragEnd?: React.DragEventHandler;
163
+ onClick?: () => void;
164
+ isEditing?: boolean;
165
+ error?: string | null;
166
+ nameSlot?: React.ReactNode;
167
+ endSlot?: React.ReactNode;
168
+ };
169
+ declare const ComponentItem: React.ForwardRefExoticComponent<ComponentItemProps & React.RefAttributes<HTMLElement>>;
170
+ type EditableConfig = {
171
+ ref: React.Ref<HTMLElement>;
172
+ isEditing: boolean;
173
+ getProps: () => Record<string, unknown>;
174
+ };
175
+ type ComponentNameProps = {
176
+ name: string;
177
+ editable?: EditableConfig;
178
+ };
179
+ declare function ComponentName({ name, editable }: ComponentNameProps): React.JSX.Element;
180
+
181
+ declare function ComponentsList(): React.JSX.Element;
182
+ declare const EmptySearchResult: () => React.JSX.Element;
183
+ declare const useFilteredComponents: () => {
184
+ components: (PublishedComponent | {
185
+ uid: string;
186
+ name: string;
187
+ overridableProps: OverridableProps | undefined;
188
+ })[];
189
+ isLoading: boolean;
190
+ searchValue: string;
191
+ };
192
+
193
+ declare const LoadingComponents: () => React.JSX.Element;
194
+
195
+ declare const SearchProvider: ({ children, localStorageKey, }: {
196
+ children: React.ReactNode;
197
+ localStorageKey: string;
198
+ }) => React.JSX.Element;
199
+
200
+ declare const EmptyState: ({ onEditComponent }: {
201
+ onEditComponent?: () => void;
202
+ }) => React.JSX.Element;
203
+
204
+ type InstancePanelBodyProps = {
205
+ groups: OverridablePropsGroup[];
206
+ isEmpty: boolean;
207
+ emptyState: React.ReactNode;
208
+ componentInstanceId?: string;
209
+ };
210
+ declare function InstancePanelBody({ groups, isEmpty, emptyState, componentInstanceId }: InstancePanelBodyProps): React.JSX.Element;
211
+
212
+ type InstancePanelHeaderProps = {
213
+ componentName: string;
214
+ actions?: React.ReactNode;
215
+ };
216
+ declare function InstancePanelHeader({ componentName, actions }: InstancePanelHeaderProps): React.JSX.Element;
217
+ type EditComponentActionProps = {
218
+ label: string;
219
+ onClick?: () => void;
220
+ disabled?: boolean;
221
+ icon: ElementType;
222
+ };
223
+ declare function EditComponentAction({ label, onClick, disabled, icon: Icon }: EditComponentActionProps): React.JSX.Element;
224
+
225
+ declare function useSanitizeOverridableProps(componentId: ComponentId | null, instanceElementId?: string): OverridableProps | undefined;
226
+
227
+ declare const componentInstanceOverridesPropTypeUtil: {
228
+ extract: (prop: unknown) => ({
229
+ value: {
230
+ override_key: string;
231
+ schema_source: {
232
+ type: "component";
233
+ id: number;
234
+ };
235
+ override_value?: unknown;
236
+ };
237
+ $$type: "override";
238
+ disabled?: boolean | undefined;
239
+ } | {
240
+ value: {
241
+ override_key: string;
242
+ origin_value: {
243
+ $$type: string;
244
+ value?: unknown;
245
+ } | null;
246
+ };
247
+ $$type: "overridable";
248
+ disabled?: boolean | undefined;
249
+ })[] | null | undefined;
250
+ isValid: (prop: unknown) => prop is _elementor_editor_props.TransformablePropValue<"overrides", ({
251
+ value: {
252
+ override_key: string;
253
+ schema_source: {
254
+ type: "component";
255
+ id: number;
256
+ };
257
+ override_value?: unknown;
258
+ };
259
+ $$type: "override";
260
+ disabled?: boolean | undefined;
261
+ } | {
262
+ value: {
263
+ override_key: string;
264
+ origin_value: {
265
+ $$type: string;
266
+ value?: unknown;
267
+ } | null;
268
+ };
269
+ $$type: "overridable";
270
+ disabled?: boolean | undefined;
271
+ })[] | undefined>;
272
+ create: {
273
+ (value: ({
274
+ value: {
275
+ override_key: string;
276
+ schema_source: {
277
+ type: "component";
278
+ id: number;
279
+ };
280
+ override_value?: unknown;
281
+ };
282
+ $$type: "override";
283
+ disabled?: boolean | undefined;
284
+ } | {
285
+ value: {
286
+ override_key: string;
287
+ origin_value: {
288
+ $$type: string;
289
+ value?: unknown;
290
+ } | null;
291
+ };
292
+ $$type: "overridable";
293
+ disabled?: boolean | undefined;
294
+ })[] | undefined): _elementor_editor_props.TransformablePropValue<"overrides", ({
295
+ value: {
296
+ override_key: string;
297
+ schema_source: {
298
+ type: "component";
299
+ id: number;
300
+ };
301
+ override_value?: unknown;
302
+ };
303
+ $$type: "override";
304
+ disabled?: boolean | undefined;
305
+ } | {
306
+ value: {
307
+ override_key: string;
308
+ origin_value: {
309
+ $$type: string;
310
+ value?: unknown;
311
+ } | null;
312
+ };
313
+ $$type: "overridable";
314
+ disabled?: boolean | undefined;
315
+ })[] | undefined>;
316
+ (value: ({
317
+ value: {
318
+ override_key: string;
319
+ schema_source: {
320
+ type: "component";
321
+ id: number;
322
+ };
323
+ override_value?: unknown;
324
+ };
325
+ $$type: "override";
326
+ disabled?: boolean | undefined;
327
+ } | {
328
+ value: {
329
+ override_key: string;
330
+ origin_value: {
331
+ $$type: string;
332
+ value?: unknown;
333
+ } | null;
334
+ };
335
+ $$type: "overridable";
336
+ disabled?: boolean | undefined;
337
+ })[] | undefined, createOptions?: _elementor_editor_props.CreateOptions): _elementor_editor_props.TransformablePropValue<"overrides", ({
338
+ value: {
339
+ override_key: string;
340
+ schema_source: {
341
+ type: "component";
342
+ id: number;
343
+ };
344
+ override_value?: unknown;
345
+ };
346
+ $$type: "override";
347
+ disabled?: boolean | undefined;
348
+ } | {
349
+ value: {
350
+ override_key: string;
351
+ origin_value: {
352
+ $$type: string;
353
+ value?: unknown;
354
+ } | null;
355
+ };
356
+ $$type: "overridable";
357
+ disabled?: boolean | undefined;
358
+ })[] | undefined>;
359
+ (value: (prev?: ({
360
+ value: {
361
+ override_key: string;
362
+ schema_source: {
363
+ type: "component";
364
+ id: number;
365
+ };
366
+ override_value?: unknown;
367
+ };
368
+ $$type: "override";
369
+ disabled?: boolean | undefined;
370
+ } | {
371
+ value: {
372
+ override_key: string;
373
+ origin_value: {
374
+ $$type: string;
375
+ value?: unknown;
376
+ } | null;
377
+ };
378
+ $$type: "overridable";
379
+ disabled?: boolean | undefined;
380
+ })[] | undefined) => ({
381
+ value: {
382
+ override_key: string;
383
+ schema_source: {
384
+ type: "component";
385
+ id: number;
386
+ };
387
+ override_value?: unknown;
388
+ };
389
+ $$type: "override";
390
+ disabled?: boolean | undefined;
391
+ } | {
392
+ value: {
393
+ override_key: string;
394
+ origin_value: {
395
+ $$type: string;
396
+ value?: unknown;
397
+ } | null;
398
+ };
399
+ $$type: "overridable";
400
+ disabled?: boolean | undefined;
401
+ })[] | undefined, createOptions: _elementor_editor_props.CreateOptions): _elementor_editor_props.TransformablePropValue<"overrides", ({
402
+ value: {
403
+ override_key: string;
404
+ schema_source: {
405
+ type: "component";
406
+ id: number;
407
+ };
408
+ override_value?: unknown;
409
+ };
410
+ $$type: "override";
411
+ disabled?: boolean | undefined;
412
+ } | {
413
+ value: {
414
+ override_key: string;
415
+ origin_value: {
416
+ $$type: string;
417
+ value?: unknown;
418
+ } | null;
419
+ };
420
+ $$type: "overridable";
421
+ disabled?: boolean | undefined;
422
+ })[] | undefined>;
423
+ };
424
+ schema: z.ZodObject<{
425
+ $$type: z.ZodLiteral<"overrides">;
426
+ value: z.ZodType<({
427
+ value: {
428
+ override_key: string;
429
+ schema_source: {
430
+ type: "component";
431
+ id: number;
432
+ };
433
+ override_value?: unknown;
434
+ };
435
+ $$type: "override";
436
+ disabled?: boolean | undefined;
437
+ } | {
438
+ value: {
439
+ override_key: string;
440
+ origin_value: {
441
+ $$type: string;
442
+ value?: unknown;
443
+ } | null;
444
+ };
445
+ $$type: "overridable";
446
+ disabled?: boolean | undefined;
447
+ })[] | undefined, z.ZodTypeDef, ({
448
+ value: {
449
+ override_key: string;
450
+ schema_source: {
451
+ type: "component";
452
+ id: number;
453
+ };
454
+ override_value?: unknown;
455
+ };
456
+ $$type: "override";
457
+ disabled?: boolean | undefined;
458
+ } | {
459
+ value: {
460
+ override_key: string;
461
+ origin_value: {
462
+ $$type: string;
463
+ value?: unknown;
464
+ } | null;
465
+ };
466
+ $$type: "overridable";
467
+ disabled?: boolean | undefined;
468
+ })[] | undefined>;
469
+ disabled: z.ZodOptional<z.ZodBoolean>;
470
+ }, "strict", z.ZodTypeAny, {
471
+ $$type: "overrides";
472
+ value?: ({
473
+ value: {
474
+ override_key: string;
475
+ schema_source: {
476
+ type: "component";
477
+ id: number;
478
+ };
479
+ override_value?: unknown;
480
+ };
481
+ $$type: "override";
482
+ disabled?: boolean | undefined;
483
+ } | {
484
+ value: {
485
+ override_key: string;
486
+ origin_value: {
487
+ $$type: string;
488
+ value?: unknown;
489
+ } | null;
490
+ };
491
+ $$type: "overridable";
492
+ disabled?: boolean | undefined;
493
+ })[] | undefined;
494
+ disabled?: boolean | undefined;
495
+ }, {
496
+ $$type: "overrides";
497
+ value?: ({
498
+ value: {
499
+ override_key: string;
500
+ schema_source: {
501
+ type: "component";
502
+ id: number;
503
+ };
504
+ override_value?: unknown;
505
+ };
506
+ $$type: "override";
507
+ disabled?: boolean | undefined;
508
+ } | {
509
+ value: {
510
+ override_key: string;
511
+ origin_value: {
512
+ $$type: string;
513
+ value?: unknown;
514
+ } | null;
515
+ };
516
+ $$type: "overridable";
517
+ disabled?: boolean | undefined;
518
+ })[] | undefined;
519
+ disabled?: boolean | undefined;
520
+ }>;
521
+ key: "overrides";
522
+ };
523
+ type ComponentInstanceOverridesPropValue = z.infer<typeof componentInstanceOverridesPropTypeUtil.schema>['value'];
524
+ type ComponentInstanceOverride = NonNullable<ComponentInstanceOverridesPropValue>[number];
525
+
526
+ type InstancePanelData = {
527
+ componentId: number;
528
+ component: Component;
529
+ overrides: ComponentInstanceOverridesPropValue;
530
+ overridableProps: NonNullable<ReturnType<typeof useSanitizeOverridableProps>>;
531
+ groups: OverridablePropsGroup[];
532
+ isEmpty: boolean;
533
+ componentInstanceId: string;
534
+ };
535
+ declare function useInstancePanelData(): InstancePanelData | null;
536
+
537
+ declare const DetachAction: ({ componentInstanceId, componentId, }: {
538
+ componentInstanceId: string;
539
+ componentId: number;
540
+ }) => React.JSX.Element;
541
+
542
+ declare const COMPONENT_WIDGET_TYPE = "e-component";
543
+
544
+ declare const useComponents: () => {
545
+ components: (PublishedComponent | {
546
+ uid: string;
547
+ name: string;
548
+ overridableProps: OverridableProps | undefined;
549
+ })[];
550
+ isLoading: boolean;
551
+ };
552
+
553
+ declare const useComponentsPermissions: () => {
554
+ canCreate: boolean;
555
+ canEdit: boolean;
556
+ canDelete: boolean;
557
+ canRename: boolean;
558
+ };
559
+
560
+ declare const componentInstanceOverridePropTypeUtil: {
561
+ extract: (prop: unknown) => {
562
+ override_key: string;
563
+ schema_source: {
564
+ type: "component";
565
+ id: number;
566
+ };
567
+ override_value?: unknown;
568
+ } | null;
569
+ isValid: (prop: unknown) => prop is _elementor_editor_props.TransformablePropValue<"override", {
570
+ override_key: string;
571
+ schema_source: {
572
+ type: "component";
573
+ id: number;
574
+ };
575
+ override_value?: unknown;
576
+ }>;
577
+ create: {
578
+ (value: {
579
+ override_key: string;
580
+ schema_source: {
581
+ type: "component";
582
+ id: number;
583
+ };
584
+ override_value?: unknown;
585
+ }): _elementor_editor_props.TransformablePropValue<"override", {
586
+ override_key: string;
587
+ schema_source: {
588
+ type: "component";
589
+ id: number;
590
+ };
591
+ override_value?: unknown;
592
+ }>;
593
+ (value: {
594
+ override_key: string;
595
+ schema_source: {
596
+ type: "component";
597
+ id: number;
598
+ };
599
+ override_value?: unknown;
600
+ }, createOptions?: _elementor_editor_props.CreateOptions): _elementor_editor_props.TransformablePropValue<"override", {
601
+ override_key: string;
602
+ schema_source: {
603
+ type: "component";
604
+ id: number;
605
+ };
606
+ override_value?: unknown;
607
+ }>;
608
+ (value: (prev?: {
609
+ override_key: string;
610
+ schema_source: {
611
+ type: "component";
612
+ id: number;
613
+ };
614
+ override_value?: unknown;
615
+ } | undefined) => {
616
+ override_key: string;
617
+ schema_source: {
618
+ type: "component";
619
+ id: number;
620
+ };
621
+ override_value?: unknown;
622
+ }, createOptions: _elementor_editor_props.CreateOptions): _elementor_editor_props.TransformablePropValue<"override", {
623
+ override_key: string;
624
+ schema_source: {
625
+ type: "component";
626
+ id: number;
627
+ };
628
+ override_value?: unknown;
629
+ }>;
630
+ };
631
+ schema: z.ZodObject<{
632
+ $$type: z.ZodLiteral<"override">;
633
+ value: z.ZodType<{
634
+ override_key: string;
635
+ schema_source: {
636
+ type: "component";
637
+ id: number;
638
+ };
639
+ override_value?: unknown;
640
+ }, z.ZodTypeDef, {
641
+ override_key: string;
642
+ schema_source: {
643
+ type: "component";
644
+ id: number;
645
+ };
646
+ override_value?: unknown;
647
+ }>;
648
+ disabled: z.ZodOptional<z.ZodBoolean>;
649
+ }, "strict", z.ZodTypeAny, {
650
+ value: {
651
+ override_key: string;
652
+ schema_source: {
653
+ type: "component";
654
+ id: number;
655
+ };
656
+ override_value?: unknown;
657
+ };
658
+ $$type: "override";
659
+ disabled?: boolean | undefined;
660
+ }, {
661
+ value: {
662
+ override_key: string;
663
+ schema_source: {
664
+ type: "component";
665
+ id: number;
666
+ };
667
+ override_value?: unknown;
668
+ };
669
+ $$type: "override";
670
+ disabled?: boolean | undefined;
671
+ }>;
672
+ key: "override";
673
+ };
674
+ type ComponentInstanceOverrideProp = z.infer<typeof componentInstanceOverridePropTypeUtil.schema>;
675
+ type ComponentInstanceOverridePropValue = ComponentInstanceOverrideProp['value'];
676
+
677
+ declare const componentInstancePropTypeUtil: {
678
+ extract: (prop: unknown) => {
679
+ component_id: {
680
+ $$type: "number";
681
+ value: number | null;
682
+ disabled?: boolean | undefined;
683
+ };
684
+ overrides?: {
685
+ $$type: "overrides";
686
+ value?: ({
687
+ value: {
688
+ override_key: string;
689
+ schema_source: {
690
+ type: "component";
691
+ id: number;
692
+ };
693
+ override_value?: unknown;
694
+ };
695
+ $$type: "override";
696
+ disabled?: boolean | undefined;
697
+ } | {
698
+ value: {
699
+ override_key: string;
700
+ origin_value: {
701
+ $$type: string;
702
+ value?: unknown;
703
+ } | null;
704
+ };
705
+ $$type: "overridable";
706
+ disabled?: boolean | undefined;
707
+ })[] | undefined;
708
+ disabled?: boolean | undefined;
709
+ } | undefined;
710
+ } | null;
711
+ isValid: (prop: unknown) => prop is _elementor_editor_props.TransformablePropValue<"component-instance", {
712
+ component_id: {
713
+ $$type: "number";
714
+ value: number | null;
715
+ disabled?: boolean | undefined;
716
+ };
717
+ overrides?: {
718
+ $$type: "overrides";
719
+ value?: ({
720
+ value: {
721
+ override_key: string;
722
+ schema_source: {
723
+ type: "component";
724
+ id: number;
725
+ };
726
+ override_value?: unknown;
727
+ };
728
+ $$type: "override";
729
+ disabled?: boolean | undefined;
730
+ } | {
731
+ value: {
732
+ override_key: string;
733
+ origin_value: {
734
+ $$type: string;
735
+ value?: unknown;
736
+ } | null;
737
+ };
738
+ $$type: "overridable";
739
+ disabled?: boolean | undefined;
740
+ })[] | undefined;
741
+ disabled?: boolean | undefined;
742
+ } | undefined;
743
+ }>;
744
+ create: {
745
+ (value: {
746
+ component_id: {
747
+ $$type: "number";
748
+ value: number | null;
749
+ disabled?: boolean | undefined;
750
+ };
751
+ overrides?: {
752
+ $$type: "overrides";
753
+ value?: ({
754
+ value: {
755
+ override_key: string;
756
+ schema_source: {
757
+ type: "component";
758
+ id: number;
759
+ };
760
+ override_value?: unknown;
761
+ };
762
+ $$type: "override";
763
+ disabled?: boolean | undefined;
764
+ } | {
765
+ value: {
766
+ override_key: string;
767
+ origin_value: {
768
+ $$type: string;
769
+ value?: unknown;
770
+ } | null;
771
+ };
772
+ $$type: "overridable";
773
+ disabled?: boolean | undefined;
774
+ })[] | undefined;
775
+ disabled?: boolean | undefined;
776
+ } | undefined;
777
+ }): _elementor_editor_props.TransformablePropValue<"component-instance", {
778
+ component_id: {
779
+ $$type: "number";
780
+ value: number | null;
781
+ disabled?: boolean | undefined;
782
+ };
783
+ overrides?: {
784
+ $$type: "overrides";
785
+ value?: ({
786
+ value: {
787
+ override_key: string;
788
+ schema_source: {
789
+ type: "component";
790
+ id: number;
791
+ };
792
+ override_value?: unknown;
793
+ };
794
+ $$type: "override";
795
+ disabled?: boolean | undefined;
796
+ } | {
797
+ value: {
798
+ override_key: string;
799
+ origin_value: {
800
+ $$type: string;
801
+ value?: unknown;
802
+ } | null;
803
+ };
804
+ $$type: "overridable";
805
+ disabled?: boolean | undefined;
806
+ })[] | undefined;
807
+ disabled?: boolean | undefined;
808
+ } | undefined;
809
+ }>;
810
+ (value: {
811
+ component_id: {
812
+ $$type: "number";
813
+ value: number | null;
814
+ disabled?: boolean | undefined;
815
+ };
816
+ overrides?: {
817
+ $$type: "overrides";
818
+ value?: ({
819
+ value: {
820
+ override_key: string;
821
+ schema_source: {
822
+ type: "component";
823
+ id: number;
824
+ };
825
+ override_value?: unknown;
826
+ };
827
+ $$type: "override";
828
+ disabled?: boolean | undefined;
829
+ } | {
830
+ value: {
831
+ override_key: string;
832
+ origin_value: {
833
+ $$type: string;
834
+ value?: unknown;
835
+ } | null;
836
+ };
837
+ $$type: "overridable";
838
+ disabled?: boolean | undefined;
839
+ })[] | undefined;
840
+ disabled?: boolean | undefined;
841
+ } | undefined;
842
+ }, createOptions?: _elementor_editor_props.CreateOptions): _elementor_editor_props.TransformablePropValue<"component-instance", {
843
+ component_id: {
844
+ $$type: "number";
845
+ value: number | null;
846
+ disabled?: boolean | undefined;
847
+ };
848
+ overrides?: {
849
+ $$type: "overrides";
850
+ value?: ({
851
+ value: {
852
+ override_key: string;
853
+ schema_source: {
854
+ type: "component";
855
+ id: number;
856
+ };
857
+ override_value?: unknown;
858
+ };
859
+ $$type: "override";
860
+ disabled?: boolean | undefined;
861
+ } | {
862
+ value: {
863
+ override_key: string;
864
+ origin_value: {
865
+ $$type: string;
866
+ value?: unknown;
867
+ } | null;
868
+ };
869
+ $$type: "overridable";
870
+ disabled?: boolean | undefined;
871
+ })[] | undefined;
872
+ disabled?: boolean | undefined;
873
+ } | undefined;
874
+ }>;
875
+ (value: (prev?: {
876
+ component_id: {
877
+ $$type: "number";
878
+ value: number | null;
879
+ disabled?: boolean | undefined;
880
+ };
881
+ overrides?: {
882
+ $$type: "overrides";
883
+ value?: ({
884
+ value: {
885
+ override_key: string;
886
+ schema_source: {
887
+ type: "component";
888
+ id: number;
889
+ };
890
+ override_value?: unknown;
891
+ };
892
+ $$type: "override";
893
+ disabled?: boolean | undefined;
894
+ } | {
895
+ value: {
896
+ override_key: string;
897
+ origin_value: {
898
+ $$type: string;
899
+ value?: unknown;
900
+ } | null;
901
+ };
902
+ $$type: "overridable";
903
+ disabled?: boolean | undefined;
904
+ })[] | undefined;
905
+ disabled?: boolean | undefined;
906
+ } | undefined;
907
+ } | undefined) => {
908
+ component_id: {
909
+ $$type: "number";
910
+ value: number | null;
911
+ disabled?: boolean | undefined;
912
+ };
913
+ overrides?: {
914
+ $$type: "overrides";
915
+ value?: ({
916
+ value: {
917
+ override_key: string;
918
+ schema_source: {
919
+ type: "component";
920
+ id: number;
921
+ };
922
+ override_value?: unknown;
923
+ };
924
+ $$type: "override";
925
+ disabled?: boolean | undefined;
926
+ } | {
927
+ value: {
928
+ override_key: string;
929
+ origin_value: {
930
+ $$type: string;
931
+ value?: unknown;
932
+ } | null;
933
+ };
934
+ $$type: "overridable";
935
+ disabled?: boolean | undefined;
936
+ })[] | undefined;
937
+ disabled?: boolean | undefined;
938
+ } | undefined;
939
+ }, createOptions: _elementor_editor_props.CreateOptions): _elementor_editor_props.TransformablePropValue<"component-instance", {
940
+ component_id: {
941
+ $$type: "number";
942
+ value: number | null;
943
+ disabled?: boolean | undefined;
944
+ };
945
+ overrides?: {
946
+ $$type: "overrides";
947
+ value?: ({
948
+ value: {
949
+ override_key: string;
950
+ schema_source: {
951
+ type: "component";
952
+ id: number;
953
+ };
954
+ override_value?: unknown;
955
+ };
956
+ $$type: "override";
957
+ disabled?: boolean | undefined;
958
+ } | {
959
+ value: {
960
+ override_key: string;
961
+ origin_value: {
962
+ $$type: string;
963
+ value?: unknown;
964
+ } | null;
965
+ };
966
+ $$type: "overridable";
967
+ disabled?: boolean | undefined;
968
+ })[] | undefined;
969
+ disabled?: boolean | undefined;
970
+ } | undefined;
971
+ }>;
972
+ };
973
+ schema: z.ZodObject<{
974
+ $$type: z.ZodLiteral<"component-instance">;
975
+ value: z.ZodType<{
976
+ component_id: {
977
+ $$type: "number";
978
+ value: number | null;
979
+ disabled?: boolean | undefined;
980
+ };
981
+ overrides?: {
982
+ $$type: "overrides";
983
+ value?: ({
984
+ value: {
985
+ override_key: string;
986
+ schema_source: {
987
+ type: "component";
988
+ id: number;
989
+ };
990
+ override_value?: unknown;
991
+ };
992
+ $$type: "override";
993
+ disabled?: boolean | undefined;
994
+ } | {
995
+ value: {
996
+ override_key: string;
997
+ origin_value: {
998
+ $$type: string;
999
+ value?: unknown;
1000
+ } | null;
1001
+ };
1002
+ $$type: "overridable";
1003
+ disabled?: boolean | undefined;
1004
+ })[] | undefined;
1005
+ disabled?: boolean | undefined;
1006
+ } | undefined;
1007
+ }, z.ZodTypeDef, {
1008
+ component_id: {
1009
+ $$type: "number";
1010
+ value: number | null;
1011
+ disabled?: boolean | undefined;
1012
+ };
1013
+ overrides?: {
1014
+ $$type: "overrides";
1015
+ value?: ({
1016
+ value: {
1017
+ override_key: string;
1018
+ schema_source: {
1019
+ type: "component";
1020
+ id: number;
1021
+ };
1022
+ override_value?: unknown;
1023
+ };
1024
+ $$type: "override";
1025
+ disabled?: boolean | undefined;
1026
+ } | {
1027
+ value: {
1028
+ override_key: string;
1029
+ origin_value: {
1030
+ $$type: string;
1031
+ value?: unknown;
1032
+ } | null;
1033
+ };
1034
+ $$type: "overridable";
1035
+ disabled?: boolean | undefined;
1036
+ })[] | undefined;
1037
+ disabled?: boolean | undefined;
1038
+ } | undefined;
1039
+ }>;
1040
+ disabled: z.ZodOptional<z.ZodBoolean>;
1041
+ }, "strict", z.ZodTypeAny, {
1042
+ value: {
1043
+ component_id: {
1044
+ $$type: "number";
1045
+ value: number | null;
1046
+ disabled?: boolean | undefined;
1047
+ };
1048
+ overrides?: {
1049
+ $$type: "overrides";
1050
+ value?: ({
1051
+ value: {
1052
+ override_key: string;
1053
+ schema_source: {
1054
+ type: "component";
1055
+ id: number;
1056
+ };
1057
+ override_value?: unknown;
1058
+ };
1059
+ $$type: "override";
1060
+ disabled?: boolean | undefined;
1061
+ } | {
1062
+ value: {
1063
+ override_key: string;
1064
+ origin_value: {
1065
+ $$type: string;
1066
+ value?: unknown;
1067
+ } | null;
1068
+ };
1069
+ $$type: "overridable";
1070
+ disabled?: boolean | undefined;
1071
+ })[] | undefined;
1072
+ disabled?: boolean | undefined;
1073
+ } | undefined;
1074
+ };
1075
+ $$type: "component-instance";
1076
+ disabled?: boolean | undefined;
1077
+ }, {
1078
+ value: {
1079
+ component_id: {
1080
+ $$type: "number";
1081
+ value: number | null;
1082
+ disabled?: boolean | undefined;
1083
+ };
1084
+ overrides?: {
1085
+ $$type: "overrides";
1086
+ value?: ({
1087
+ value: {
1088
+ override_key: string;
1089
+ schema_source: {
1090
+ type: "component";
1091
+ id: number;
1092
+ };
1093
+ override_value?: unknown;
1094
+ };
1095
+ $$type: "override";
1096
+ disabled?: boolean | undefined;
1097
+ } | {
1098
+ value: {
1099
+ override_key: string;
1100
+ origin_value: {
1101
+ $$type: string;
1102
+ value?: unknown;
1103
+ } | null;
1104
+ };
1105
+ $$type: "overridable";
1106
+ disabled?: boolean | undefined;
1107
+ })[] | undefined;
1108
+ disabled?: boolean | undefined;
1109
+ } | undefined;
1110
+ };
1111
+ $$type: "component-instance";
1112
+ disabled?: boolean | undefined;
1113
+ }>;
1114
+ key: "component-instance";
1115
+ };
1116
+ type ComponentInstanceProp = z.infer<typeof componentInstancePropTypeUtil.schema>;
1117
+ type ComponentInstancePropValue = ComponentInstanceProp['value'];
1118
+
1119
+ declare const componentOverridablePropTypeUtil: {
1120
+ extract: (prop: unknown) => {
1121
+ override_key: string;
1122
+ origin_value: {
1123
+ $$type: string;
1124
+ value?: unknown;
1125
+ } | null;
1126
+ } | null;
1127
+ isValid: (prop: unknown) => prop is _elementor_editor_props.TransformablePropValue<"overridable", {
1128
+ override_key: string;
1129
+ origin_value: {
1130
+ $$type: string;
1131
+ value?: unknown;
1132
+ } | null;
1133
+ }>;
1134
+ create: {
1135
+ (value: {
1136
+ override_key: string;
1137
+ origin_value: {
1138
+ $$type: string;
1139
+ value?: unknown;
1140
+ } | null;
1141
+ }): _elementor_editor_props.TransformablePropValue<"overridable", {
1142
+ override_key: string;
1143
+ origin_value: {
1144
+ $$type: string;
1145
+ value?: unknown;
1146
+ } | null;
1147
+ }>;
1148
+ (value: {
1149
+ override_key: string;
1150
+ origin_value: {
1151
+ $$type: string;
1152
+ value?: unknown;
1153
+ } | null;
1154
+ }, createOptions?: _elementor_editor_props.CreateOptions): _elementor_editor_props.TransformablePropValue<"overridable", {
1155
+ override_key: string;
1156
+ origin_value: {
1157
+ $$type: string;
1158
+ value?: unknown;
1159
+ } | null;
1160
+ }>;
1161
+ (value: (prev?: {
1162
+ override_key: string;
1163
+ origin_value: {
1164
+ $$type: string;
1165
+ value?: unknown;
1166
+ } | null;
1167
+ } | undefined) => {
1168
+ override_key: string;
1169
+ origin_value: {
1170
+ $$type: string;
1171
+ value?: unknown;
1172
+ } | null;
1173
+ }, createOptions: _elementor_editor_props.CreateOptions): _elementor_editor_props.TransformablePropValue<"overridable", {
1174
+ override_key: string;
1175
+ origin_value: {
1176
+ $$type: string;
1177
+ value?: unknown;
1178
+ } | null;
1179
+ }>;
1180
+ };
1181
+ schema: z.ZodObject<{
1182
+ $$type: z.ZodLiteral<"overridable">;
1183
+ value: z.ZodType<{
1184
+ override_key: string;
1185
+ origin_value: {
1186
+ $$type: string;
1187
+ value?: unknown;
1188
+ } | null;
1189
+ }, z.ZodTypeDef, {
1190
+ override_key: string;
1191
+ origin_value: {
1192
+ $$type: string;
1193
+ value?: unknown;
1194
+ } | null;
1195
+ }>;
1196
+ disabled: z.ZodOptional<z.ZodBoolean>;
1197
+ }, "strict", z.ZodTypeAny, {
1198
+ value: {
1199
+ override_key: string;
1200
+ origin_value: {
1201
+ $$type: string;
1202
+ value?: unknown;
1203
+ } | null;
1204
+ };
1205
+ $$type: "overridable";
1206
+ disabled?: boolean | undefined;
1207
+ }, {
1208
+ value: {
1209
+ override_key: string;
1210
+ origin_value: {
1211
+ $$type: string;
1212
+ value?: unknown;
1213
+ } | null;
1214
+ };
1215
+ $$type: "overridable";
1216
+ disabled?: boolean | undefined;
1217
+ }>;
1218
+ key: "overridable";
1219
+ };
1220
+ type ComponentOverridableProp = z.infer<typeof componentOverridablePropTypeUtil.schema>;
1221
+ type ComponentOverridablePropValue = ComponentOverridableProp['value'];
1222
+
1223
+ type ComponentInstanceData = {
1224
+ componentId: number;
1225
+ overrides: ComponentInstanceOverridesPropValue;
1226
+ overridableProps: OverridableProps;
1227
+ };
1228
+ declare function ComponentInstanceProvider({ children, ...props }: PropsWithChildren<ComponentInstanceData>): React.JSX.Element;
1229
+
1230
+ type OverridablePropData = {
1231
+ value?: ComponentOverridablePropValue;
1232
+ componentInstanceElement?: ReturnType<typeof useElement>;
1233
+ };
1234
+ declare function OverridablePropProvider({ children, ...props }: PropsWithChildren<OverridablePropData>): React.JSX.Element;
1235
+ declare const useOverridablePropValue: () => {
1236
+ override_key: string;
1237
+ origin_value: {
1238
+ $$type: string;
1239
+ value?: unknown;
1240
+ } | null;
1241
+ } | undefined;
1242
+ declare const useComponentInstanceElement: () => {
1243
+ element: _elementor_editor_elements.Element;
1244
+ elementType: _elementor_editor_elements.ElementType;
1245
+ settings: Record<string, _elementor_editor_props.AnyTransformable | null>;
1246
+ } | undefined;
1247
+
1248
+ declare function loadComponentsAssets(elements: V1ElementData[]): Promise<void>;
1249
+
1250
+ declare function updateOverridableProp(componentId: number, propValue: ComponentOverridablePropValue, originPropFields?: OriginPropFields): void;
1251
+
1252
+ type SanitizeAttributes = 'overridableProps';
1253
+ type ComponentsState = {
1254
+ data: PublishedComponent[];
1255
+ unpublishedData: UnpublishedComponent[];
1256
+ loadStatus: 'idle' | 'pending' | 'error';
1257
+ styles: StylesDefinition;
1258
+ createdThisSession: Component['uid'][];
1259
+ archivedThisSession: ComponentId[];
1260
+ path: ComponentsPathItem[];
1261
+ currentComponentId: V1Document['id'] | null;
1262
+ updatedComponentNames: Record<number, string>;
1263
+ sanitized: Record<ComponentId, Partial<Record<SanitizeAttributes, boolean>>>;
1264
+ };
1265
+ type ComponentsPathItem = {
1266
+ instanceId?: string;
1267
+ instanceTitle?: string;
1268
+ componentId: V1Document['id'];
1269
+ };
1270
+ declare const SLICE_NAME = "components";
1271
+
1272
+ type ComponentsReducer<P> = (state: ComponentsState, action: PayloadAction<P>) => void;
1273
+ declare function registerComponentsReducer<P>(name: string, reducer: ComponentsReducer<P>): void;
1274
+ declare function createComponentsAction<P>(name: string): {
1275
+ action: _reduxjs_toolkit_dist_tsHelpers.IsAny<P, _reduxjs_toolkit.ActionCreatorWithPayload<any, string>, _reduxjs_toolkit_dist_tsHelpers.IsUnknown<P, _reduxjs_toolkit.ActionCreatorWithNonInferrablePayload<string>, _reduxjs_toolkit_dist_tsHelpers.IfVoid<P, _reduxjs_toolkit.ActionCreatorWithoutPayload<string>, _reduxjs_toolkit_dist_tsHelpers.IfMaybeUndefined<P, _reduxjs_toolkit.ActionCreatorWithOptionalPayload<P, string>, _reduxjs_toolkit.ActionCreatorWithPayload<P, string>>>>>;
1276
+ register(reducer: ComponentsReducer<P>): void;
1277
+ dispatch(payload: P): void;
1278
+ };
1279
+ declare const baseSlice: _reduxjs_toolkit.Slice<ComponentsState, {
1280
+ add: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<PublishedComponent | PublishedComponent[]>) => void;
1281
+ load: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<PublishedComponent[]>) => void;
1282
+ addUnpublished: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<UnpublishedComponent>) => void;
1283
+ removeUnpublished: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<string | string[]>) => void;
1284
+ resetUnpublished: (state: immer_dist_internal_js.WritableDraft<ComponentsState>) => void;
1285
+ removeStyles(state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<{
1286
+ id: ComponentId;
1287
+ }>): void;
1288
+ addStyles: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: {
1289
+ payload: any;
1290
+ type: string;
1291
+ }) => void;
1292
+ addCreatedThisSession: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<string>) => void;
1293
+ removeCreatedThisSession: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<string>) => void;
1294
+ archive: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<number>) => void;
1295
+ setCurrentComponentId: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<V1Document["id"] | null>) => void;
1296
+ setPath: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<ComponentsState["path"]>) => void;
1297
+ setOverridableProps: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<{
1298
+ componentId: ComponentId;
1299
+ overridableProps: OverridableProps;
1300
+ }>) => void;
1301
+ rename: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload }: PayloadAction<{
1302
+ componentUid: string;
1303
+ name: string;
1304
+ }>) => void;
1305
+ cleanUpdatedComponentNames: (state: immer_dist_internal_js.WritableDraft<ComponentsState>) => void;
1306
+ updateComponentSanitizedAttribute: (state: immer_dist_internal_js.WritableDraft<ComponentsState>, { payload: { componentId, attribute }, }: PayloadAction<{
1307
+ componentId: ComponentId;
1308
+ attribute: SanitizeAttributes;
1309
+ }>) => void;
1310
+ resetSanitizedComponents: (state: immer_dist_internal_js.WritableDraft<ComponentsState>) => void;
1311
+ }, "components">;
1312
+ declare const slice: typeof baseSlice;
1313
+
1314
+ type ComponentsSlice = SliceState<typeof slice>;
1315
+
1316
+ declare const selectOverridableProps: ((state: ComponentsSlice, componentId: number) => OverridableProps | undefined) & reselect.OutputSelectorFields<(args_0: PublishedComponent | undefined) => OverridableProps | undefined, {
1317
+ clearCache: () => void;
1318
+ }> & {
1319
+ clearCache: () => void;
1320
+ };
1321
+ declare const useOverridableProps: (componentId: ComponentId | null) => OverridableProps | null | undefined;
1322
+ declare const selectPath: ((state: ComponentsSlice) => ComponentsPathItem[]) & reselect.OutputSelectorFields<(args_0: ComponentsPathItem[]) => ComponentsPathItem[], {
1323
+ clearCache: () => void;
1324
+ }> & {
1325
+ clearCache: () => void;
1326
+ };
1327
+ declare const useCurrentComponentId: () => number | null;
1328
+ declare const useCurrentComponent: () => PublishedComponent | undefined;
1329
+ declare const useIsSanitizedComponent: (componentId: ComponentId | null, key: SanitizeAttributes) => boolean;
1330
+
1331
+ declare const componentsActions: {
1332
+ add(components: PublishedComponent | PublishedComponent[]): void;
1333
+ load(components: PublishedComponent[]): void;
1334
+ addUnpublished(component: UnpublishedComponent): void;
1335
+ removeUnpublished(uids: string | string[]): void;
1336
+ resetUnpublished(): void;
1337
+ removeStyles(id: ComponentId): void;
1338
+ addStyles(styles: Record<string, unknown>): void;
1339
+ addCreatedThisSession(uid: string): void;
1340
+ removeCreatedThisSession(uid: string): void;
1341
+ archive(componentId: ComponentId): void;
1342
+ setCurrentComponentId(id: V1Document["id"] | null): void;
1343
+ setPath(path: ComponentsPathItem[]): void;
1344
+ setOverridableProps(componentId: ComponentId, overridableProps: OverridableProps): void;
1345
+ rename(componentUid: string, name: string): void;
1346
+ cleanUpdatedComponentNames(): void;
1347
+ updateComponentSanitizedAttribute(componentId: ComponentId, attribute: SanitizeAttributes): void;
1348
+ resetSanitizedComponents(): void;
1349
+ };
1350
+
1351
+ declare const componentsSelectors: {
1352
+ getOverridableProps(componentId: ComponentId): OverridableProps | undefined;
1353
+ getCurrentComponent(): PublishedComponent | undefined;
1354
+ getCurrentComponentId(): number | null;
1355
+ getUnpublishedComponents(): UnpublishedComponent[];
1356
+ getUpdatedComponentNames(): {
1357
+ componentId: number;
1358
+ title: string;
1359
+ }[];
1360
+ getArchivedThisSession(): number[];
1361
+ getCreatedThisSession(): string[];
1362
+ getComponents(): (PublishedComponent | {
1363
+ uid: string;
1364
+ name: string;
1365
+ overridableProps: OverridableProps | undefined;
1366
+ })[];
1367
+ getComponentByUid(componentUid: string): PublishedComponent | UnpublishedComponent | undefined;
1368
+ };
1369
+
1370
+ type Options = {
1371
+ status: DocumentSaveStatus;
1372
+ elements: V1ElementData[];
1373
+ };
1374
+ declare function publishDraftComponentsInPageBeforeSave({ status, elements }: Options): Promise<void>;
1375
+
1376
+ declare function filterValidOverridableProps(overridableProps: OverridableProps, instanceElementId?: string): OverridableProps;
1377
+
1378
+ /**
1379
+ * Resolves a container by its origin ID, with optional scoping to a component instance.
1380
+ *
1381
+ * When component instances are rendered, their inner elements get prefixed IDs
1382
+ * (e.g., `{instanceId}_{originalId}`), but store data uses original IDs.
1383
+ * This function bridges between the two by searching for elements with a matching `originId`.
1384
+ *
1385
+ * @param originElementId - The original (unprefixed) element ID from store data
1386
+ * @param instanceElementId - Optional instance widget ID to scope the search
1387
+ *
1388
+ * @return The container with prefixed runtime ID, or null if not found
1389
+ *
1390
+ * @example
1391
+ * // Component editing mode (no prefixing)
1392
+ * getContainerByOriginId('element-1') // returns container with id='element-1'
1393
+ *
1394
+ * @example
1395
+ * // Instance editing mode (with hash prefixing)
1396
+ * getContainerByOriginId('element-1', 'instance-abc')
1397
+ * // returns container with id='{hash}_element-1' and originId='element-1'
1398
+ */
1399
+ declare function getContainerByOriginId(originElementId: string, instanceElementId?: string): V1Element | null;
1400
+
1401
+ declare function getOverridableProp({ componentId, overrideKey, }: {
1402
+ componentId: number;
1403
+ overrideKey: string;
1404
+ }): OverridableProp | undefined;
1405
+
1406
+ declare const getPropTypeForComponentOverride: (overridableProp: OverridableProp) => _elementor_editor_props.PropType<{
1407
+ key?: string;
1408
+ }> | undefined;
1409
+
1410
+ declare function isComponentInstance(elementModel: Partial<V1ElementModelProps>): boolean;
1411
+
1412
+ declare const resolveOverridePropValue: (originalPropValue: ComponentInstanceOverride | PropValue) => PropValue;
1413
+
1414
+ declare function switchToComponent(componentId: number, componentInstanceId?: string | null, element?: HTMLElement | null): Promise<void>;
1415
+
1416
+ type Source = 'user' | 'mcp_tool' | 'system';
1417
+ type ComponentEventData = Record<string, unknown> & {
1418
+ action: 'createClicked' | 'created' | 'createCancelled' | 'instanceAdded' | 'edited' | 'propertyExposed' | 'propertyRemoved' | 'propertiesPanelOpened' | 'propertiesGroupCreated' | 'detached';
1419
+ source: Source;
1420
+ };
1421
+ declare const trackComponentEvent: ({ action, source, ...data }: ComponentEventData) => void;
1422
+ declare const onElementDrop: (_args: unknown, element: V1Element) => void;
1423
+
1424
+ export { COMPONENT_WIDGET_TYPE, type Component, type ComponentFormValues, type ComponentId, type ComponentInstanceOverride, type ComponentInstanceOverrideProp, type ComponentInstanceOverridePropValue, type ComponentInstanceOverridesPropValue, type ComponentInstanceProp, type ComponentInstancePropValue, ComponentInstanceProvider, ComponentItem, type ComponentItemProps, ComponentName, type ComponentOverridableProp, type ComponentOverridablePropValue, ComponentSearch, ComponentsList, type ComponentsPathItem, type ComponentsSlice, type ComponentsState, DetachAction, type DocumentSaveStatus, EditComponentAction, EmptySearchResult, type ExtendedWindow, EmptyState as InstanceEmptyState, InstancePanelBody, InstancePanelHeader, LoadingComponents, type OriginPropFields, type OriginalElementData, type OverridableProp, OverridablePropProvider, type OverridableProps, type OverridablePropsGroup, type PublishedComponent, SLICE_NAME, type SanitizeAttributes, SearchProvider, type Source, type StylesDefinition, type UnpublishedComponent, type UpdatedComponentName, apiClient, componentInstanceOverridePropTypeUtil, componentInstanceOverridesPropTypeUtil, componentInstancePropTypeUtil, componentOverridablePropTypeUtil, componentsActions, componentsSelectors, createComponentsAction, filterValidOverridableProps, getContainerByOriginId, getOverridableProp, getPropTypeForComponentOverride, init, isComponentInstance, loadComponentsAssets, onElementDrop, publishDraftComponentsInPageBeforeSave, registerComponentsReducer, resolveOverridePropValue, selectOverridableProps, selectPath, slice, switchToComponent, trackComponentEvent, updateOverridableProp, useComponentInstanceElement, useComponents, useComponentsPermissions, useCurrentComponent, useCurrentComponentId, useFilteredComponents, useInstancePanelData, useIsSanitizedComponent, useOverridablePropValue, useOverridableProps, useSanitizeOverridableProps };