@webflow/designer-extension-typings 2.0.26 → 2.0.29

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/api.d.ts CHANGED
@@ -96,7 +96,59 @@ interface WebflowApi {
96
96
  */
97
97
  getElementSnapshot(element: AnyElement): Promise<null | string>;
98
98
 
99
+ /**
100
+ * Renders the specified element to WHTML format.
101
+ * @param element - The element to render
102
+ * @returns A promise that resolves to an object containing the WHTML string and shortIdMap, or null
103
+ * @example
104
+ * ```ts
105
+ * const selectedElement = await webflow.getSelectedElement();
106
+ * if (selectedElement) {
107
+ * const result = await webflow.getWHTML(selectedElement);
108
+ * if (result) {
109
+ * console.log('WHTML:', result.whtml);
110
+ * console.log('Short ID Map:', result.shortIdMap);
111
+ * }
112
+ * }
113
+ * ```
114
+ */
115
+ getWHTML?(
116
+ element: AnyElement
117
+ ): Promise<null | {whtml: string; shortIdMap: Record<string, string[]>}>;
118
+
99
119
  elementBuilder(elementPreset: ElementPreset<AnyElement>): BuilderElement;
120
+
121
+ /**
122
+ * Parse a WHTML string and insert the resulting element as a child of the anchor element.
123
+ * The newly created element will be appended to the end of the anchor's children.
124
+ * @param whtml - The WHTML string to parse into an element
125
+ * @param anchor - The parent element to append the parsed WHTML element to
126
+ * @param position - The position relative to the anchor element where the new element will be inserted.
127
+ * - 'before': Insert as a sibling before the anchor element
128
+ * - 'after': Insert as a sibling after the anchor element
129
+ * - 'append': Insert as the last child of the anchor element (default)
130
+ * - 'prepend': Insert as the first child of the anchor element
131
+ * - 'replace': Replace the anchor element with the new element
132
+ * @returns A Promise that resolves to the newly inserted AnyElement
133
+ * @example
134
+ * ```ts
135
+ * const whtml = '<ul><li>Item 1</li><li>Item 2</li></ul>';
136
+ * const body = await allElements.find((el) => el.type === 'Body');
137
+ * // Append as last child (default)
138
+ * const element = await webflow.insertElementFromWHTML(whtml, body);
139
+ * // Or insert before an existing element
140
+ * const existingElement = await webflow.getSelectedElement();
141
+ * const newElement = await webflow.insertElementFromWHTML(whtml, existingElement, 'before');
142
+ * // Or replace an existing element
143
+ * const replacedElement = await webflow.insertElementFromWHTML(whtml, existingElement, 'replace');
144
+ * ```
145
+ */
146
+ insertElementFromWHTML?(
147
+ whtml: string,
148
+ anchor: AnyElement,
149
+ position?: 'before' | 'after' | 'append' | 'prepend' | 'replace'
150
+ ): Promise<AnyElement>;
151
+
100
152
  /**
101
153
  * Get the current media query breakpoint ID.
102
154
  * @returns A Promise that resolves to a BreakpointId which is a string representing the current media query
@@ -123,7 +175,7 @@ interface WebflowApi {
123
175
  /**
124
176
  * Create a component by promoting a Root Element.
125
177
  * @param name - The name of the component.
126
- * @param rootElement - An Element that will become the Root Element of the Component.
178
+ * @param root - An Element that will become the Root Element of the Component.
127
179
  * @returns A Promise resolving to an object containing the newly created Component - with the id property.
128
180
  * @example
129
181
  * ```ts
@@ -138,6 +190,23 @@ interface WebflowApi {
138
190
  name: string,
139
191
  root: AnyElement | ElementPreset<AnyElement> | Component
140
192
  ): Promise<Component>;
193
+ /**
194
+ * Create a blank component.
195
+ * @param options - Options for creating the blank component.
196
+ * @returns A Promise resolving to an object containing the newly created Component - with the id property.
197
+ * @example
198
+ * ```ts
199
+ * const component = await webflow.registerComponent({name: 'Hero Section'})
200
+ *
201
+ * // With optional group and description
202
+ * const grouped = await webflow.registerComponent({
203
+ * name: 'Hero Section',
204
+ * group: 'Sections',
205
+ * description: 'A hero section component',
206
+ * })
207
+ * ```
208
+ */
209
+ registerComponent(options: ComponentOptions): Promise<Component>;
141
210
  /**
142
211
  * Delete a component from the Designer. If there are any instances of the Component within the site, they will
143
212
  * be converted to regular Elements.
@@ -226,7 +295,7 @@ interface WebflowApi {
226
295
  /**
227
296
  * Creates a new style with the provided name.
228
297
  * @param name - The name for the new style
229
- * @param opts - Options for the new style. An object containing the following properties:
298
+ * @param options - Options for the new style. An object containing the following properties:
230
299
  * - parent: A Style object representing the parent style block. Used for creating a combo class.
231
300
  * @returns a Promise that resolves to the Style object representing the newly created style.
232
301
  * @example
package/components.d.ts CHANGED
@@ -32,6 +32,30 @@ interface Component {
32
32
  */
33
33
  setName(name: string): Promise<null>;
34
34
  getRootElement(): Promise<null | AnyElement>;
35
+ /**
36
+ * Get the number of instances of this component across the site.
37
+ * Returns the same instance count displayed in the Components panel.
38
+ * @returns A Promise resolving to the number of instances.
39
+ * @example
40
+ * ```ts
41
+ * const component = (await webflow.getAllComponents())[0];
42
+ * const count = await component.getInstanceCount();
43
+ * console.log(`This component is used ${count} times`);
44
+ * ```
45
+ */
46
+ getInstanceCount(): Promise<number>;
35
47
  }
36
48
 
37
49
  type ComponentId = string;
50
+
51
+ /**
52
+ * Options for creating a blank component.
53
+ */
54
+ interface ComponentOptions {
55
+ /** The name of the component (required) */
56
+ name: string;
57
+ /** The group/folder to place the component in (optional) */
58
+ group?: string;
59
+ /** A description for the component (optional) */
60
+ description?: string;
61
+ }
@@ -104,11 +104,4 @@ type ElementPresets = {
104
104
  LayoutFooterDark: ElementPreset<SectionElement>;
105
105
  LayoutFooterLight: ElementPreset<SectionElement>;
106
106
  LayoutFooterSubscribe: ElementPreset<SectionElement>;
107
- UserAccountSubscriptionList: ElementPreset<UserAccountSubscriptionListWrapperElement>;
108
- UserLogOutLogIn: ElementPreset<UserLogOutLogInElement>;
109
- SignUp: ElementPreset<UserSignUpFormWrapperElement>;
110
- LogIn: ElementPreset<UserLogInFormWrapperElement>;
111
- UserAccount: ElementPreset<UserAccountWrapperElement>;
112
- ResetPassword: ElementPreset<UserResetPasswordFormWrapperElement>;
113
- UpdatePassword: ElementPreset<UserUpdatePasswordFormWrapperElement>;
114
107
  };
@@ -120,6 +120,7 @@ interface ComponentElement
120
120
  readonly type: 'ComponentInstance';
121
121
  readonly plugin: '';
122
122
  getComponent(): Promise<Component>;
123
+ getSlots(): Promise<Array<SlotInstanceElement>>;
123
124
  }
124
125
 
125
126
  interface UnknownElement
@@ -3029,19 +3030,6 @@ interface FormFileUploadErrorMsgElement
3029
3030
  readonly plugin: 'Form';
3030
3031
  }
3031
3032
 
3032
- interface UserFormUploadErrorMsgElement
3033
- extends WebflowElement,
3034
- CustomAttributes,
3035
- DomId,
3036
- Styles,
3037
- NoChildren,
3038
- NoTextContent,
3039
- NoAppConnections {
3040
- readonly id: FullElementId;
3041
- readonly type: 'UserFormUploadErrorMsg';
3042
- readonly plugin: 'Form';
3043
- }
3044
-
3045
3033
  interface FormFileUploadInputElement
3046
3034
  extends WebflowElement,
3047
3035
  CustomAttributes,
@@ -3718,254 +3706,7 @@ interface GooglePlusElement
3718
3706
  readonly plugin: 'Widget';
3719
3707
  }
3720
3708
 
3721
- interface UserAccountWrapperElement
3722
- extends WebflowElement,
3723
- CustomAttributes,
3724
- DomId,
3725
- Styles,
3726
- Children,
3727
- NoTextContent,
3728
- NoAppConnections {
3729
- readonly id: FullElementId;
3730
- readonly type: 'UserAccountWrapper';
3731
- readonly plugin: 'Users';
3732
- }
3733
-
3734
- interface UserAccountFormWrapperElement
3735
- extends WebflowElement,
3736
- CustomAttributes,
3737
- DomId,
3738
- Styles,
3739
- Children,
3740
- NoTextContent,
3741
- NoAppConnections {
3742
- readonly id: FullElementId;
3743
- readonly type: 'UserAccountFormWrapper';
3744
- readonly plugin: 'Users';
3745
- }
3746
-
3747
- interface UserAccountFormElement
3748
- extends WebflowElement,
3749
- CustomAttributes,
3750
- DomId,
3751
- Styles,
3752
- Children,
3753
- NoTextContent,
3754
- NoAppConnections {
3755
- readonly id: FullElementId;
3756
- readonly type: 'UserAccountForm';
3757
- readonly plugin: 'Users';
3758
- }
3759
-
3760
- interface UserAccountFormSaveButtonElement
3761
- extends WebflowElement,
3762
- CustomAttributes,
3763
- NoDomId,
3764
- Styles,
3765
- NoChildren,
3766
- NoTextContent,
3767
- NoAppConnections {
3768
- readonly id: FullElementId;
3769
- readonly type: 'UserAccountFormSaveButton';
3770
- readonly plugin: 'Users';
3771
- }
3772
-
3773
- interface UserAccountFormCancelButtonElement
3774
- extends WebflowElement,
3775
- CustomAttributes,
3776
- NoDomId,
3777
- Styles,
3778
- NoChildren,
3779
- NoTextContent,
3780
- NoAppConnections {
3781
- readonly id: FullElementId;
3782
- readonly type: 'UserAccountFormCancelButton';
3783
- readonly plugin: 'Users';
3784
- }
3785
-
3786
- interface UserAccountSubscriptionListWrapperElement
3787
- extends WebflowElement,
3788
- CustomAttributes,
3789
- DomId,
3790
- Styles,
3791
- Children,
3792
- NoTextContent,
3793
- NoAppConnections {
3794
- readonly id: FullElementId;
3795
- readonly type: 'UserAccountSubscriptionListWrapper';
3796
- readonly plugin: 'Users';
3797
- }
3798
-
3799
- interface UserAccountSubscriptionListEmptyElement
3800
- extends WebflowElement,
3801
- CustomAttributes,
3802
- DomId,
3803
- Styles,
3804
- Children,
3805
- NoTextContent,
3806
- NoAppConnections {
3807
- readonly id: FullElementId;
3808
- readonly type: 'UserAccountSubscriptionListEmpty';
3809
- readonly plugin: 'Users';
3810
- }
3811
-
3812
- interface UserAccountSubscriptionListElement
3813
- extends WebflowElement,
3814
- CustomAttributes,
3815
- DomId,
3816
- Styles,
3817
- Children,
3818
- NoTextContent,
3819
- NoAppConnections {
3820
- readonly id: FullElementId;
3821
- readonly type: 'UserAccountSubscriptionList';
3822
- readonly plugin: 'Users';
3823
- }
3824
-
3825
- interface UserAccountSubscriptionListItemElement
3826
- extends WebflowElement,
3827
- CustomAttributes,
3828
- DomId,
3829
- Styles,
3830
- Children,
3831
- NoTextContent,
3832
- NoAppConnections {
3833
- readonly id: FullElementId;
3834
- readonly type: 'UserAccountSubscriptionListItem';
3835
- readonly plugin: 'Users';
3836
- }
3837
-
3838
- interface UserAccountSubscriptionListItemInfoElement
3839
- extends WebflowElement,
3840
- CustomAttributes,
3841
- DomId,
3842
- Styles,
3843
- Children,
3844
- NoTextContent,
3845
- NoAppConnections {
3846
- readonly id: FullElementId;
3847
- readonly type: 'UserAccountSubscriptionListItemInfo';
3848
- readonly plugin: 'Users';
3849
- }
3850
-
3851
- interface UserAccountSubscriptionCancelButtonElement
3852
- extends WebflowElement,
3853
- CustomAttributes,
3854
- DomId,
3855
- Styles,
3856
- NoChildren,
3857
- NoTextContent,
3858
- NoAppConnections {
3859
- readonly id: FullElementId;
3860
- readonly type: 'UserAccountSubscriptionCancelButton';
3861
- readonly plugin: 'Users';
3862
- }
3863
-
3864
- interface UserSignUpFormWrapperElement
3865
- extends WebflowElement,
3866
- CustomAttributes,
3867
- DomId,
3868
- Styles,
3869
- Children,
3870
- NoTextContent,
3871
- NoAppConnections {
3872
- readonly id: FullElementId;
3873
- readonly type: 'UserSignUpFormWrapper';
3874
- readonly plugin: 'Users';
3875
- }
3876
-
3877
- interface UserSignUpFormElement
3878
- extends WebflowElement,
3879
- CustomAttributes,
3880
- DomId,
3881
- Styles,
3882
- Children,
3883
- NoTextContent,
3884
- NoAppConnections {
3885
- readonly id: FullElementId;
3886
- readonly type: 'UserSignUpForm';
3887
- readonly plugin: 'Users';
3888
- }
3889
-
3890
- interface UserSignUpVerificationMessageElement
3891
- extends WebflowElement,
3892
- CustomAttributes,
3893
- NoDomId,
3894
- Styles,
3895
- Children,
3896
- NoTextContent,
3897
- NoAppConnections {
3898
- readonly id: FullElementId;
3899
- readonly type: 'UserSignUpVerificationMessage';
3900
- readonly plugin: 'Users';
3901
- }
3902
-
3903
- interface UserSignUpRedirectWrapperElement
3904
- extends WebflowElement,
3905
- CustomAttributes,
3906
- NoDomId,
3907
- Styles,
3908
- Children,
3909
- NoTextContent,
3910
- NoAppConnections {
3911
- readonly id: FullElementId;
3912
- readonly type: 'UserSignUpRedirectWrapper';
3913
- readonly plugin: 'Users';
3914
- }
3915
-
3916
- interface UserSignUpTermsOfServiceWrapperElement
3917
- extends WebflowElement,
3918
- CustomAttributes,
3919
- DomId,
3920
- Styles,
3921
- Children,
3922
- NoTextContent,
3923
- NoAppConnections {
3924
- readonly id: FullElementId;
3925
- readonly type: 'UserSignUpTermsOfServiceWrapper';
3926
- readonly plugin: 'Users';
3927
- }
3928
-
3929
- interface UserSignUpTermsOfServiceCheckboxInputElement
3930
- extends WebflowElement,
3931
- CustomAttributes,
3932
- DomId,
3933
- Styles,
3934
- NoChildren,
3935
- NoTextContent,
3936
- NoAppConnections {
3937
- readonly id: FullElementId;
3938
- readonly type: 'UserSignUpTermsOfServiceCheckboxInput';
3939
- readonly plugin: 'Users';
3940
- }
3941
-
3942
- interface UserLogInFormWrapperElement
3943
- extends WebflowElement,
3944
- CustomAttributes,
3945
- DomId,
3946
- Styles,
3947
- Children,
3948
- NoTextContent,
3949
- NoAppConnections {
3950
- readonly id: FullElementId;
3951
- readonly type: 'UserLogInFormWrapper';
3952
- readonly plugin: 'Users';
3953
- }
3954
-
3955
- interface UserLogInFormElement
3956
- extends WebflowElement,
3957
- CustomAttributes,
3958
- DomId,
3959
- Styles,
3960
- Children,
3961
- NoTextContent,
3962
- NoAppConnections {
3963
- readonly id: FullElementId;
3964
- readonly type: 'UserLogInForm';
3965
- readonly plugin: 'Users';
3966
- }
3967
-
3968
- interface UserUpdatePasswordFormWrapperElement
3709
+ interface BlockContentElement
3969
3710
  extends WebflowElement,
3970
3711
  CustomAttributes,
3971
3712
  DomId,
@@ -3974,11 +3715,11 @@ interface UserUpdatePasswordFormWrapperElement
3974
3715
  NoTextContent,
3975
3716
  NoAppConnections {
3976
3717
  readonly id: FullElementId;
3977
- readonly type: 'UserUpdatePasswordFormWrapper';
3718
+ readonly type: 'BlockContent';
3978
3719
  readonly plugin: 'Users';
3979
3720
  }
3980
3721
 
3981
- interface UserUpdatePasswordFormElement
3722
+ interface BlockHeaderElement
3982
3723
  extends WebflowElement,
3983
3724
  CustomAttributes,
3984
3725
  DomId,
@@ -3987,11 +3728,11 @@ interface UserUpdatePasswordFormElement
3987
3728
  NoTextContent,
3988
3729
  NoAppConnections {
3989
3730
  readonly id: FullElementId;
3990
- readonly type: 'UserUpdatePasswordForm';
3731
+ readonly type: 'BlockHeader';
3991
3732
  readonly plugin: 'Users';
3992
3733
  }
3993
3734
 
3994
- interface UserResetPasswordFormWrapperElement
3735
+ interface FlexColumnElement
3995
3736
  extends WebflowElement,
3996
3737
  CustomAttributes,
3997
3738
  DomId,
@@ -4000,258 +3741,11 @@ interface UserResetPasswordFormWrapperElement
4000
3741
  NoTextContent,
4001
3742
  NoAppConnections {
4002
3743
  readonly id: FullElementId;
4003
- readonly type: 'UserResetPasswordFormWrapper';
3744
+ readonly type: 'FlexColumn';
4004
3745
  readonly plugin: 'Users';
4005
3746
  }
4006
3747
 
4007
- interface UserResetPasswordFormElement
4008
- extends WebflowElement,
4009
- CustomAttributes,
4010
- DomId,
4011
- Styles,
4012
- Children,
4013
- NoTextContent,
4014
- NoAppConnections {
4015
- readonly id: FullElementId;
4016
- readonly type: 'UserResetPasswordForm';
4017
- readonly plugin: 'Users';
4018
- }
4019
-
4020
- interface UserLogOutLogInElement
4021
- extends WebflowElement,
4022
- CustomAttributes,
4023
- DomId,
4024
- Styles,
4025
- NoChildren,
4026
- NoTextContent,
4027
- NoAppConnections {
4028
- readonly id: FullElementId;
4029
- readonly type: 'UserLogOutLogIn';
4030
- readonly plugin: 'Users';
4031
- }
4032
-
4033
- interface UserFormBlockLabelElement
4034
- extends WebflowElement,
4035
- CustomAttributes,
4036
- NoDomId,
4037
- Styles,
4038
- Children,
4039
- TextContent,
4040
- NoAppConnections {
4041
- readonly id: FullElementId;
4042
- readonly type: 'UserFormBlockLabel';
4043
- readonly plugin: 'Users';
4044
- }
4045
-
4046
- interface UserFormButtonElement
4047
- extends WebflowElement,
4048
- CustomAttributes,
4049
- NoDomId,
4050
- Styles,
4051
- NoChildren,
4052
- NoTextContent,
4053
- NoAppConnections {
4054
- readonly id: FullElementId;
4055
- readonly type: 'UserFormButton';
4056
- readonly plugin: 'Users';
4057
- }
4058
-
4059
- interface UserFormCheckboxInputElement
4060
- extends WebflowElement,
4061
- CustomAttributes,
4062
- NoDomId,
4063
- Styles,
4064
- NoChildren,
4065
- NoTextContent,
4066
- NoAppConnections {
4067
- readonly id: FullElementId;
4068
- readonly type: 'UserFormCheckboxInput';
4069
- readonly plugin: 'Users';
4070
- }
4071
-
4072
- interface UserFormTextInputElement
4073
- extends WebflowElement,
4074
- CustomAttributes,
4075
- NoDomId,
4076
- Styles,
4077
- NoChildren,
4078
- NoTextContent,
4079
- NoAppConnections {
4080
- readonly id: FullElementId;
4081
- readonly type: 'UserFormTextInput';
4082
- readonly plugin: 'Users';
4083
- }
4084
-
4085
- interface UserFormEmailInputElement
4086
- extends WebflowElement,
4087
- CustomAttributes,
4088
- NoDomId,
4089
- Styles,
4090
- NoChildren,
4091
- NoTextContent,
4092
- NoAppConnections {
4093
- readonly id: FullElementId;
4094
- readonly type: 'UserFormEmailInput';
4095
- readonly plugin: 'Users';
4096
- }
4097
-
4098
- interface UserFormNameInputElement
4099
- extends WebflowElement,
4100
- CustomAttributes,
4101
- NoDomId,
4102
- Styles,
4103
- NoChildren,
4104
- NoTextContent,
4105
- NoAppConnections {
4106
- readonly id: FullElementId;
4107
- readonly type: 'UserFormNameInput';
4108
- readonly plugin: 'Users';
4109
- }
4110
-
4111
- interface UserFormPasswordInputElement
4112
- extends WebflowElement,
4113
- CustomAttributes,
4114
- NoDomId,
4115
- Styles,
4116
- NoChildren,
4117
- NoTextContent,
4118
- NoAppConnections {
4119
- readonly id: FullElementId;
4120
- readonly type: 'UserFormPasswordInput';
4121
- readonly plugin: 'Users';
4122
- }
4123
-
4124
- interface UserFormSelectElement
4125
- extends WebflowElement,
4126
- CustomAttributes,
4127
- NoDomId,
4128
- Styles,
4129
- NoChildren,
4130
- NoTextContent,
4131
- NoAppConnections {
4132
- readonly id: FullElementId;
4133
- readonly type: 'UserFormSelect';
4134
- readonly plugin: 'Users';
4135
- }
4136
-
4137
- interface UserFormNumberInputElement
4138
- extends WebflowElement,
4139
- CustomAttributes,
4140
- NoDomId,
4141
- Styles,
4142
- NoChildren,
4143
- NoTextContent,
4144
- NoAppConnections {
4145
- readonly id: FullElementId;
4146
- readonly type: 'UserFormNumberInput';
4147
- readonly plugin: 'Users';
4148
- }
4149
-
4150
- interface UserFormFileUploadInputElement
4151
- extends WebflowElement,
4152
- CustomAttributes,
4153
- NoDomId,
4154
- Styles,
4155
- NoChildren,
4156
- NoTextContent,
4157
- NoAppConnections {
4158
- readonly id: FullElementId;
4159
- readonly type: 'UserFormFileUploadInput';
4160
- readonly plugin: 'Users';
4161
- }
4162
-
4163
- interface UserFormUploadNameElement
4164
- extends WebflowElement,
4165
- CustomAttributes,
4166
- DomId,
4167
- Styles,
4168
- Children,
4169
- NoTextContent,
4170
- NoAppConnections {
4171
- readonly id: FullElementId;
4172
- readonly type: 'UserFormUploadName';
4173
- readonly plugin: 'Users';
4174
- }
4175
-
4176
- interface UserFormHeaderElement
4177
- extends WebflowElement,
4178
- CustomAttributes,
4179
- DomId,
4180
- Styles,
4181
- Children,
4182
- NoTextContent,
4183
- NoAppConnections {
4184
- readonly id: FullElementId;
4185
- readonly type: 'UserFormHeader';
4186
- readonly plugin: 'Users';
4187
- }
4188
-
4189
- interface UserFormFooterElement
4190
- extends WebflowElement,
4191
- CustomAttributes,
4192
- DomId,
4193
- Styles,
4194
- Children,
4195
- NoTextContent,
4196
- NoAppConnections {
4197
- readonly id: FullElementId;
4198
- readonly type: 'UserFormFooter';
4199
- readonly plugin: 'Users';
4200
- }
4201
-
4202
- interface UserFormPageWrapElement
4203
- extends WebflowElement,
4204
- CustomAttributes,
4205
- DomId,
4206
- Styles,
4207
- Children,
4208
- NoTextContent,
4209
- NoAppConnections {
4210
- readonly id: FullElementId;
4211
- readonly type: 'UserFormPageWrap';
4212
- readonly plugin: 'Users';
4213
- }
4214
-
4215
- interface BlockContentElement
4216
- extends WebflowElement,
4217
- CustomAttributes,
4218
- DomId,
4219
- Styles,
4220
- Children,
4221
- NoTextContent,
4222
- NoAppConnections {
4223
- readonly id: FullElementId;
4224
- readonly type: 'BlockContent';
4225
- readonly plugin: 'Users';
4226
- }
4227
-
4228
- interface BlockHeaderElement
4229
- extends WebflowElement,
4230
- CustomAttributes,
4231
- DomId,
4232
- Styles,
4233
- Children,
4234
- NoTextContent,
4235
- NoAppConnections {
4236
- readonly id: FullElementId;
4237
- readonly type: 'BlockHeader';
4238
- readonly plugin: 'Users';
4239
- }
4240
-
4241
- interface FlexColumnElement
4242
- extends WebflowElement,
4243
- CustomAttributes,
4244
- DomId,
4245
- Styles,
4246
- Children,
4247
- NoTextContent,
4248
- NoAppConnections {
4249
- readonly id: FullElementId;
4250
- readonly type: 'FlexColumn';
4251
- readonly plugin: 'Users';
4252
- }
4253
-
4254
- interface GridRowElement
3748
+ interface GridRowElement
4255
3749
  extends WebflowElement,
4256
3750
  CustomAttributes,
4257
3751
  DomId,
@@ -4264,110 +3758,6 @@ interface GridRowElement
4264
3758
  readonly plugin: 'Users';
4265
3759
  }
4266
3760
 
4267
- interface UserFormSuccessStateElement
4268
- extends WebflowElement,
4269
- CustomAttributes,
4270
- NoDomId,
4271
- Styles,
4272
- Children,
4273
- NoTextContent,
4274
- NoAppConnections {
4275
- readonly id: FullElementId;
4276
- readonly type: 'UserFormSuccessState';
4277
- readonly plugin: 'Users';
4278
- }
4279
-
4280
- interface UserFormErrorStateElement
4281
- extends WebflowElement,
4282
- CustomAttributes,
4283
- DomId,
4284
- Styles,
4285
- Children,
4286
- NoTextContent,
4287
- NoAppConnections {
4288
- readonly id: FullElementId;
4289
- readonly type: 'UserFormErrorState';
4290
- readonly plugin: 'Users';
4291
- }
4292
-
4293
- interface UserFormErrorStateStyleVariant1Element
4294
- extends WebflowElement,
4295
- CustomAttributes,
4296
- DomId,
4297
- Styles,
4298
- Children,
4299
- NoTextContent,
4300
- NoAppConnections {
4301
- readonly id: FullElementId;
4302
- readonly type: 'UserFormErrorStateStyleVariant1';
4303
- readonly plugin: 'Users';
4304
- }
4305
-
4306
- interface UserLogInErrorMsgElement
4307
- extends WebflowElement,
4308
- NoCustomAttributes,
4309
- NoDomId,
4310
- NoStyles,
4311
- NoChildren,
4312
- NoTextContent,
4313
- NoAppConnections {
4314
- readonly id: FullElementId;
4315
- readonly type: 'UserLogInErrorMsg';
4316
- readonly plugin: 'Users';
4317
- }
4318
-
4319
- interface UserSignUpErrorMsgElement
4320
- extends WebflowElement,
4321
- NoCustomAttributes,
4322
- NoDomId,
4323
- NoStyles,
4324
- NoChildren,
4325
- NoTextContent,
4326
- NoAppConnections {
4327
- readonly id: FullElementId;
4328
- readonly type: 'UserSignUpErrorMsg';
4329
- readonly plugin: 'Users';
4330
- }
4331
-
4332
- interface UserResetPasswordErrorMsgElement
4333
- extends WebflowElement,
4334
- NoCustomAttributes,
4335
- NoDomId,
4336
- NoStyles,
4337
- NoChildren,
4338
- NoTextContent,
4339
- NoAppConnections {
4340
- readonly id: FullElementId;
4341
- readonly type: 'UserResetPasswordErrorMsg';
4342
- readonly plugin: 'Users';
4343
- }
4344
-
4345
- interface UserUpdatePasswordErrorMsgElement
4346
- extends WebflowElement,
4347
- NoCustomAttributes,
4348
- NoDomId,
4349
- NoStyles,
4350
- NoChildren,
4351
- NoTextContent,
4352
- NoAppConnections {
4353
- readonly id: FullElementId;
4354
- readonly type: 'UserUpdatePasswordErrorMsg';
4355
- readonly plugin: 'Users';
4356
- }
4357
-
4358
- interface UserErrorMsgElement
4359
- extends WebflowElement,
4360
- CustomAttributes,
4361
- DomId,
4362
- Styles,
4363
- NoChildren,
4364
- NoTextContent,
4365
- NoAppConnections {
4366
- readonly id: FullElementId;
4367
- readonly type: 'UserErrorMsg';
4368
- readonly plugin: 'Users';
4369
- }
4370
-
4371
3761
  interface FrameElement
4372
3762
  extends WebflowElement,
4373
3763
  CustomAttributes,
@@ -4602,7 +3992,6 @@ type AnyElement =
4602
3992
  | FormFileUploadRemoveLinkElement
4603
3993
  | FormFileUploadErrorElement
4604
3994
  | FormFileUploadErrorMsgElement
4605
- | UserFormUploadErrorMsgElement
4606
3995
  | FormFileUploadInputElement
4607
3996
  | FormFileUploadLabelElement
4608
3997
  | FormFileUploadInfoElement
@@ -4655,54 +4044,8 @@ type AnyElement =
4655
4044
  | MapWidgetElement
4656
4045
  | TwitterElement
4657
4046
  | GooglePlusElement
4658
- | UserAccountWrapperElement
4659
- | UserAccountFormWrapperElement
4660
- | UserAccountFormElement
4661
- | UserAccountFormSaveButtonElement
4662
- | UserAccountFormCancelButtonElement
4663
- | UserAccountSubscriptionListWrapperElement
4664
- | UserAccountSubscriptionListEmptyElement
4665
- | UserAccountSubscriptionListElement
4666
- | UserAccountSubscriptionListItemElement
4667
- | UserAccountSubscriptionListItemInfoElement
4668
- | UserAccountSubscriptionCancelButtonElement
4669
- | UserSignUpFormWrapperElement
4670
- | UserSignUpFormElement
4671
- | UserSignUpVerificationMessageElement
4672
- | UserSignUpRedirectWrapperElement
4673
- | UserSignUpTermsOfServiceWrapperElement
4674
- | UserSignUpTermsOfServiceCheckboxInputElement
4675
- | UserLogInFormWrapperElement
4676
- | UserLogInFormElement
4677
- | UserUpdatePasswordFormWrapperElement
4678
- | UserUpdatePasswordFormElement
4679
- | UserResetPasswordFormWrapperElement
4680
- | UserResetPasswordFormElement
4681
- | UserLogOutLogInElement
4682
- | UserFormBlockLabelElement
4683
- | UserFormButtonElement
4684
- | UserFormCheckboxInputElement
4685
- | UserFormTextInputElement
4686
- | UserFormEmailInputElement
4687
- | UserFormNameInputElement
4688
- | UserFormPasswordInputElement
4689
- | UserFormSelectElement
4690
- | UserFormNumberInputElement
4691
- | UserFormFileUploadInputElement
4692
- | UserFormUploadNameElement
4693
- | UserFormHeaderElement
4694
- | UserFormFooterElement
4695
- | UserFormPageWrapElement
4696
4047
  | BlockContentElement
4697
4048
  | BlockHeaderElement
4698
4049
  | FlexColumnElement
4699
4050
  | GridRowElement
4700
- | UserFormSuccessStateElement
4701
- | UserFormErrorStateElement
4702
- | UserFormErrorStateStyleVariant1Element
4703
- | UserLogInErrorMsgElement
4704
- | UserSignUpErrorMsgElement
4705
- | UserResetPasswordErrorMsgElement
4706
- | UserUpdatePasswordErrorMsgElement
4707
- | UserErrorMsgElement
4708
4051
  | FrameElement;
package/elements.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  /// <reference path="./styles.d.ts" />
2
2
  /// <reference path="./elements-generated.d.ts" />
3
+ /// <reference path="./slots.d.ts" />
3
4
 
4
5
  type ElementId = string;
5
6
  type FullElementId = {component: ComponentId; element: ElementId};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webflow/designer-extension-typings",
3
- "version": "2.0.26",
3
+ "version": "2.0.29",
4
4
  "license": "MIT",
5
5
  "description": "Typings for the Webflow Designer Extension API",
6
6
  "main": "",
package/slots.d.ts ADDED
@@ -0,0 +1,16 @@
1
+ /// <reference path="./elements.d.ts" />
2
+ /// <reference path="./components.d.ts" />
3
+
4
+ interface FullSlotId {
5
+ readonly component: string;
6
+ readonly element: string;
7
+ readonly slot: string;
8
+ }
9
+
10
+ interface SlotInstanceElement {
11
+ readonly id: FullSlotId;
12
+ getDisplayName(): Promise<string | null>;
13
+ getChildren(): Promise<AnyElement[]>;
14
+ append(child: Component): Promise<null>;
15
+ prepend(child: Component): Promise<null>;
16
+ }
@@ -283,6 +283,225 @@ type PropertyMap = {
283
283
  '-webkit-text-fill-color'?: string | ColorVariable;
284
284
  '-webkit-text-stroke-color'?: string | ColorVariable;
285
285
  '-webkit-text-stroke-width'?: string | SizeVariable;
286
+ 'align-tracks'?: string;
287
+ all?: string;
288
+ 'anchor-name'?: string;
289
+ 'anchor-scope'?: string;
290
+ animation?: string;
291
+ 'animation-composition'?: string;
292
+ 'animation-range'?: string;
293
+ 'animation-range-end'?: string;
294
+ 'animation-range-start'?: string;
295
+ 'animation-timeline'?: string;
296
+ 'aspect-ratio'?: string;
297
+ azimuth?: string;
298
+ background?: string;
299
+ border?: string;
300
+ 'border-block'?: string;
301
+ 'border-block-color'?: string;
302
+ 'border-block-style'?: string;
303
+ 'border-block-width'?: string;
304
+ 'border-block-end'?: string;
305
+ 'border-block-start'?: string;
306
+ 'border-bottom'?: string;
307
+ 'border-image'?: string;
308
+ 'border-inline'?: string;
309
+ 'border-inline-end'?: string;
310
+ 'border-inline-color'?: string;
311
+ 'border-inline-style'?: string;
312
+ 'border-inline-width'?: string;
313
+ 'border-inline-start'?: string;
314
+ 'border-left'?: string;
315
+ 'border-right'?: string;
316
+ 'border-spacing'?: string;
317
+ 'border-style'?: string;
318
+ 'border-top'?: string;
319
+ 'box-align'?: string;
320
+ 'box-decoration-break'?: string;
321
+ 'box-direction'?: string;
322
+ 'box-flex'?: string;
323
+ 'box-flex-group'?: string;
324
+ 'box-lines'?: string;
325
+ 'box-ordinal-group'?: string;
326
+ 'box-orient'?: string;
327
+ 'box-pack'?: string;
328
+ caret?: string;
329
+ 'caret-shape'?: string;
330
+ 'color-scheme'?: string;
331
+ 'column-fill'?: string;
332
+ 'column-rule'?: string;
333
+ columns?: string;
334
+ contain?: string;
335
+ 'contain-intrinsic-size'?: string;
336
+ 'contain-intrinsic-block-size'?: string;
337
+ 'contain-intrinsic-height'?: string;
338
+ 'contain-intrinsic-inline-size'?: string;
339
+ 'contain-intrinsic-width'?: string;
340
+ container?: string;
341
+ 'container-name'?: string;
342
+ 'container-type'?: string;
343
+ 'content-visibility'?: string;
344
+ 'counter-increment'?: string;
345
+ 'counter-reset'?: string;
346
+ 'counter-set'?: string;
347
+ d?: string;
348
+ 'field-sizing'?: string;
349
+ flex?: string;
350
+ 'flex-flow'?: string;
351
+ font?: string;
352
+ 'font-feature-settings'?: string;
353
+ 'font-language-override'?: string;
354
+ 'font-palette'?: string;
355
+ 'font-variation-settings'?: string;
356
+ 'font-size-adjust'?: string;
357
+ 'font-smooth'?: string;
358
+ 'font-synthesis'?: string;
359
+ 'font-synthesis-position'?: string;
360
+ 'font-synthesis-small-caps'?: string;
361
+ 'font-synthesis-style'?: string;
362
+ 'font-synthesis-weight'?: string;
363
+ 'font-variant'?: string;
364
+ 'font-variant-position'?: string;
365
+ 'forced-color-adjust'?: string;
366
+ gap?: string;
367
+ grid?: string;
368
+ 'grid-area'?: string;
369
+ 'grid-column'?: string;
370
+ 'grid-gap'?: string;
371
+ 'grid-row'?: string;
372
+ 'grid-template'?: string;
373
+ 'hanging-punctuation'?: string;
374
+ 'hyphenate-character'?: string;
375
+ 'hyphenate-limit-chars'?: string;
376
+ hyphens?: string;
377
+ 'image-resolution'?: string;
378
+ 'ime-mode'?: string;
379
+ 'initial-letter'?: string;
380
+ 'initial-letter-align'?: string;
381
+ 'input-security'?: string;
382
+ inset?: string;
383
+ 'inset-block'?: string;
384
+ 'inset-inline'?: string;
385
+ 'interpolate-size'?: string;
386
+ 'justify-tracks'?: string;
387
+ 'line-height-step'?: string;
388
+ 'list-style'?: string;
389
+ margin?: string;
390
+ 'margin-block'?: string;
391
+ 'margin-inline'?: string;
392
+ 'margin-trim'?: string;
393
+ marker?: string;
394
+ mask?: string;
395
+ 'mask-border'?: string;
396
+ 'mask-border-mode'?: string;
397
+ 'mask-border-outset'?: string;
398
+ 'mask-border-repeat'?: string;
399
+ 'mask-border-slice'?: string;
400
+ 'mask-border-source'?: string;
401
+ 'mask-border-width'?: string;
402
+ 'mask-clip'?: string;
403
+ 'mask-composite'?: string;
404
+ 'mask-image'?: string;
405
+ 'mask-mode'?: string;
406
+ 'mask-origin'?: string;
407
+ 'mask-position'?: string;
408
+ 'mask-repeat'?: string;
409
+ 'mask-size'?: string;
410
+ 'masonry-auto-flow'?: string;
411
+ 'math-depth'?: string;
412
+ 'math-shift'?: string;
413
+ 'math-style'?: string;
414
+ 'max-lines'?: string;
415
+ offset?: string;
416
+ 'offset-position'?: string;
417
+ orphans?: string;
418
+ outline?: string;
419
+ overflow?: string;
420
+ 'overflow-anchor'?: string;
421
+ 'overflow-block'?: string;
422
+ 'overflow-clip-box'?: string;
423
+ 'overflow-clip-margin'?: string;
424
+ 'overflow-inline'?: string;
425
+ overlay?: string;
426
+ 'overscroll-behavior'?: string;
427
+ 'overscroll-behavior-x'?: string;
428
+ 'overscroll-behavior-y'?: string;
429
+ padding?: string;
430
+ 'padding-block'?: string;
431
+ 'padding-inline'?: string;
432
+ page?: string;
433
+ 'page-break-after'?: string;
434
+ 'page-break-before'?: string;
435
+ 'page-break-inside'?: string;
436
+ 'place-content'?: string;
437
+ 'place-items'?: string;
438
+ 'place-self'?: string;
439
+ 'position-anchor'?: string;
440
+ 'position-area'?: string;
441
+ 'position-try'?: string;
442
+ 'position-try-fallbacks'?: string;
443
+ 'position-try-order'?: string;
444
+ 'position-visibility'?: string;
445
+ 'print-color-adjust'?: string;
446
+ quotes?: string;
447
+ 'ruby-align'?: string;
448
+ 'ruby-merge'?: string;
449
+ 'ruby-position'?: string;
450
+ 'scrollbar-color'?: string;
451
+ 'scrollbar-gutter'?: string;
452
+ 'scrollbar-width'?: string;
453
+ 'scroll-margin'?: string;
454
+ 'scroll-margin-block'?: string;
455
+ 'scroll-margin-bottom'?: string;
456
+ 'scroll-margin-inline'?: string;
457
+ 'scroll-margin-left'?: string;
458
+ 'scroll-margin-right'?: string;
459
+ 'scroll-margin-top'?: string;
460
+ 'scroll-padding'?: string;
461
+ 'scroll-padding-block'?: string;
462
+ 'scroll-padding-bottom'?: string;
463
+ 'scroll-padding-inline'?: string;
464
+ 'scroll-padding-left'?: string;
465
+ 'scroll-padding-right'?: string;
466
+ 'scroll-padding-top'?: string;
467
+ 'scroll-snap-align'?: string;
468
+ 'scroll-snap-coordinate'?: string;
469
+ 'scroll-snap-destination'?: string;
470
+ 'scroll-snap-points-x'?: string;
471
+ 'scroll-snap-points-y'?: string;
472
+ 'scroll-snap-stop'?: string;
473
+ 'scroll-snap-type'?: string;
474
+ 'scroll-snap-type-x'?: string;
475
+ 'scroll-snap-type-y'?: string;
476
+ 'scroll-timeline'?: string;
477
+ 'scroll-timeline-axis'?: string;
478
+ 'scroll-timeline-name'?: string;
479
+ 'text-combine-upright'?: string;
480
+ 'text-decoration-skip'?: string;
481
+ 'text-decoration-thickness'?: string;
482
+ 'text-emphasis'?: string;
483
+ 'text-justify'?: string;
484
+ 'text-orientation'?: string;
485
+ 'text-size-adjust'?: string;
486
+ 'text-spacing-trim'?: string;
487
+ 'text-underline-offset'?: string;
488
+ 'text-wrap'?: string;
489
+ 'text-wrap-mode'?: string;
490
+ 'text-wrap-style'?: string;
491
+ 'timeline-scope'?: string;
492
+ 'transform-box'?: string;
493
+ transition?: string;
494
+ 'transition-behavior'?: string;
495
+ 'user-select'?: string;
496
+ 'view-timeline'?: string;
497
+ 'view-timeline-axis'?: string;
498
+ 'view-timeline-inset'?: string;
499
+ 'view-timeline-name'?: string;
500
+ 'view-transition-name'?: string;
501
+ 'white-space-collapse'?: string;
502
+ widows?: string;
503
+ 'word-wrap'?: string;
504
+ zoom?: string;
286
505
  };
287
506
 
288
507
  type StyleProperty =
@@ -567,7 +786,226 @@ type StyleProperty =
567
786
  | '-webkit-line-clamp'
568
787
  | '-webkit-text-fill-color'
569
788
  | '-webkit-text-stroke-color'
570
- | '-webkit-text-stroke-width';
789
+ | '-webkit-text-stroke-width'
790
+ | 'align-tracks'
791
+ | 'all'
792
+ | 'anchor-name'
793
+ | 'anchor-scope'
794
+ | 'animation'
795
+ | 'animation-composition'
796
+ | 'animation-range'
797
+ | 'animation-range-end'
798
+ | 'animation-range-start'
799
+ | 'animation-timeline'
800
+ | 'aspect-ratio'
801
+ | 'azimuth'
802
+ | 'background'
803
+ | 'border'
804
+ | 'border-block'
805
+ | 'border-block-color'
806
+ | 'border-block-style'
807
+ | 'border-block-width'
808
+ | 'border-block-end'
809
+ | 'border-block-start'
810
+ | 'border-bottom'
811
+ | 'border-image'
812
+ | 'border-inline'
813
+ | 'border-inline-end'
814
+ | 'border-inline-color'
815
+ | 'border-inline-style'
816
+ | 'border-inline-width'
817
+ | 'border-inline-start'
818
+ | 'border-left'
819
+ | 'border-right'
820
+ | 'border-spacing'
821
+ | 'border-style'
822
+ | 'border-top'
823
+ | 'box-align'
824
+ | 'box-decoration-break'
825
+ | 'box-direction'
826
+ | 'box-flex'
827
+ | 'box-flex-group'
828
+ | 'box-lines'
829
+ | 'box-ordinal-group'
830
+ | 'box-orient'
831
+ | 'box-pack'
832
+ | 'caret'
833
+ | 'caret-shape'
834
+ | 'color-scheme'
835
+ | 'column-fill'
836
+ | 'column-rule'
837
+ | 'columns'
838
+ | 'contain'
839
+ | 'contain-intrinsic-size'
840
+ | 'contain-intrinsic-block-size'
841
+ | 'contain-intrinsic-height'
842
+ | 'contain-intrinsic-inline-size'
843
+ | 'contain-intrinsic-width'
844
+ | 'container'
845
+ | 'container-name'
846
+ | 'container-type'
847
+ | 'content-visibility'
848
+ | 'counter-increment'
849
+ | 'counter-reset'
850
+ | 'counter-set'
851
+ | 'd'
852
+ | 'field-sizing'
853
+ | 'flex'
854
+ | 'flex-flow'
855
+ | 'font'
856
+ | 'font-feature-settings'
857
+ | 'font-language-override'
858
+ | 'font-palette'
859
+ | 'font-variation-settings'
860
+ | 'font-size-adjust'
861
+ | 'font-smooth'
862
+ | 'font-synthesis'
863
+ | 'font-synthesis-position'
864
+ | 'font-synthesis-small-caps'
865
+ | 'font-synthesis-style'
866
+ | 'font-synthesis-weight'
867
+ | 'font-variant'
868
+ | 'font-variant-position'
869
+ | 'forced-color-adjust'
870
+ | 'gap'
871
+ | 'grid'
872
+ | 'grid-area'
873
+ | 'grid-column'
874
+ | 'grid-gap'
875
+ | 'grid-row'
876
+ | 'grid-template'
877
+ | 'hanging-punctuation'
878
+ | 'hyphenate-character'
879
+ | 'hyphenate-limit-chars'
880
+ | 'hyphens'
881
+ | 'image-resolution'
882
+ | 'ime-mode'
883
+ | 'initial-letter'
884
+ | 'initial-letter-align'
885
+ | 'input-security'
886
+ | 'inset'
887
+ | 'inset-block'
888
+ | 'inset-inline'
889
+ | 'interpolate-size'
890
+ | 'justify-tracks'
891
+ | 'line-height-step'
892
+ | 'list-style'
893
+ | 'margin'
894
+ | 'margin-block'
895
+ | 'margin-inline'
896
+ | 'margin-trim'
897
+ | 'marker'
898
+ | 'mask'
899
+ | 'mask-border'
900
+ | 'mask-border-mode'
901
+ | 'mask-border-outset'
902
+ | 'mask-border-repeat'
903
+ | 'mask-border-slice'
904
+ | 'mask-border-source'
905
+ | 'mask-border-width'
906
+ | 'mask-clip'
907
+ | 'mask-composite'
908
+ | 'mask-image'
909
+ | 'mask-mode'
910
+ | 'mask-origin'
911
+ | 'mask-position'
912
+ | 'mask-repeat'
913
+ | 'mask-size'
914
+ | 'masonry-auto-flow'
915
+ | 'math-depth'
916
+ | 'math-shift'
917
+ | 'math-style'
918
+ | 'max-lines'
919
+ | 'offset'
920
+ | 'offset-position'
921
+ | 'orphans'
922
+ | 'outline'
923
+ | 'overflow'
924
+ | 'overflow-anchor'
925
+ | 'overflow-block'
926
+ | 'overflow-clip-box'
927
+ | 'overflow-clip-margin'
928
+ | 'overflow-inline'
929
+ | 'overlay'
930
+ | 'overscroll-behavior'
931
+ | 'overscroll-behavior-x'
932
+ | 'overscroll-behavior-y'
933
+ | 'padding'
934
+ | 'padding-block'
935
+ | 'padding-inline'
936
+ | 'page'
937
+ | 'page-break-after'
938
+ | 'page-break-before'
939
+ | 'page-break-inside'
940
+ | 'place-content'
941
+ | 'place-items'
942
+ | 'place-self'
943
+ | 'position-anchor'
944
+ | 'position-area'
945
+ | 'position-try'
946
+ | 'position-try-fallbacks'
947
+ | 'position-try-order'
948
+ | 'position-visibility'
949
+ | 'print-color-adjust'
950
+ | 'quotes'
951
+ | 'ruby-align'
952
+ | 'ruby-merge'
953
+ | 'ruby-position'
954
+ | 'scrollbar-color'
955
+ | 'scrollbar-gutter'
956
+ | 'scrollbar-width'
957
+ | 'scroll-margin'
958
+ | 'scroll-margin-block'
959
+ | 'scroll-margin-bottom'
960
+ | 'scroll-margin-inline'
961
+ | 'scroll-margin-left'
962
+ | 'scroll-margin-right'
963
+ | 'scroll-margin-top'
964
+ | 'scroll-padding'
965
+ | 'scroll-padding-block'
966
+ | 'scroll-padding-bottom'
967
+ | 'scroll-padding-inline'
968
+ | 'scroll-padding-left'
969
+ | 'scroll-padding-right'
970
+ | 'scroll-padding-top'
971
+ | 'scroll-snap-align'
972
+ | 'scroll-snap-coordinate'
973
+ | 'scroll-snap-destination'
974
+ | 'scroll-snap-points-x'
975
+ | 'scroll-snap-points-y'
976
+ | 'scroll-snap-stop'
977
+ | 'scroll-snap-type'
978
+ | 'scroll-snap-type-x'
979
+ | 'scroll-snap-type-y'
980
+ | 'scroll-timeline'
981
+ | 'scroll-timeline-axis'
982
+ | 'scroll-timeline-name'
983
+ | 'text-combine-upright'
984
+ | 'text-decoration-skip'
985
+ | 'text-decoration-thickness'
986
+ | 'text-emphasis'
987
+ | 'text-justify'
988
+ | 'text-orientation'
989
+ | 'text-size-adjust'
990
+ | 'text-spacing-trim'
991
+ | 'text-underline-offset'
992
+ | 'text-wrap'
993
+ | 'text-wrap-mode'
994
+ | 'text-wrap-style'
995
+ | 'timeline-scope'
996
+ | 'transform-box'
997
+ | 'transition'
998
+ | 'transition-behavior'
999
+ | 'user-select'
1000
+ | 'view-timeline'
1001
+ | 'view-timeline-axis'
1002
+ | 'view-timeline-inset'
1003
+ | 'view-timeline-name'
1004
+ | 'view-transition-name'
1005
+ | 'white-space-collapse'
1006
+ | 'widows'
1007
+ | 'word-wrap'
1008
+ | 'zoom';
571
1009
 
572
1010
  type PseudoStateKey =
573
1011
  | 'noPseudo'