@wix/sdk-types 1.17.2 → 1.17.4

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.
@@ -620,7 +620,7 @@ type Filter<Entity, Spec extends WQLSpec> = Simplify<{
620
620
  /**
621
621
  * Cursor-based paging configuration
622
622
  */
623
- interface CursorPaging {
623
+ interface CursorPaging$1 {
624
624
  /** Maximum number of items to return in the results. */
625
625
  limit?: number | null;
626
626
  /**
@@ -634,7 +634,7 @@ interface CursorPaging {
634
634
  /**
635
635
  * Offset-based paging configuration
636
636
  */
637
- interface OffsetPaging {
637
+ interface OffsetPaging$1 {
638
638
  /** Number of items to load */
639
639
  limit?: number | null;
640
640
  /** Number of items to skip in the current sort order */
@@ -650,9 +650,9 @@ type PagingType = 'cursor' | 'offset';
650
650
  type Paging<Spec extends {
651
651
  paging?: PagingType;
652
652
  }> = Spec['paging'] extends 'cursor' ? {
653
- cursorPaging: CursorPaging;
653
+ cursorPaging: CursorPaging$1;
654
654
  } : Spec['paging'] extends 'offset' ? {
655
- paging: OffsetPaging;
655
+ paging: OffsetPaging$1;
656
656
  } : {};
657
657
 
658
658
  /**
@@ -895,6 +895,314 @@ type BaseSearch<Entity, Spec extends SearchSpec> = {
895
895
  */
896
896
  type Search<Entity, Spec extends SearchSpec> = BaseSearch<Entity, Spec> & Partial<Paging<Spec>>;
897
897
 
898
+ interface PagingSpec {
899
+ paging: PagingType;
900
+ }
901
+ interface CursorPaging {
902
+ limit: number;
903
+ cursor?: string;
904
+ }
905
+ interface OffsetPaging {
906
+ limit: number;
907
+ offset?: number;
908
+ }
909
+ type PagingFor<S extends PagingSpec> = S['paging'] extends 'cursor' ? CursorPaging : OffsetPaging;
910
+ /**
911
+ * Represents a filter expression that can be combined with other filters
912
+ */
913
+ interface FilterExpression<T, S extends WQLSpec> {
914
+ readonly filter: Filter<T, S>;
915
+ }
916
+ /**
917
+ * Represents a sort expression
918
+ */
919
+ interface SortExpression<S extends WQLSpec> {
920
+ readonly sort: Sorting<S>;
921
+ }
922
+ /**
923
+ * Extract fields that support a specific operator from the spec
924
+ */
925
+ type FieldsWithOperator<S extends WQLSpec, Op extends string> = S['wql'][number] extends infer Group ? Group extends WQL ? Group['operators'] extends readonly string[] ? Op extends Group['operators'][number] ? Group['fields'][number] : never : Group['fields'][number] : never : never;
926
+ /**
927
+ * Check if a specific field supports a specific operator
928
+ */
929
+ type HasOperator<S extends WQLSpec, Field extends string, Op extends string> = Field extends FieldsWithOperator<S, Op> ? true : false;
930
+ /**
931
+ * Extract sortable fields from the spec
932
+ */
933
+ type SortableFields<S extends WQLSpec> = S['wql'][number] extends infer Group ? Group extends {
934
+ fields: readonly string[];
935
+ sort: 'ASC' | 'DESC' | 'BOTH';
936
+ } ? Group['fields'][number] : never : never;
937
+ /**
938
+ * Chainable field filter - extends FilterExpression so it can be used directly,
939
+ * but also allows chaining multiple operators on the same field.
940
+ * @example
941
+ * // Single operator - returns ChainableFieldFilter which is also FilterExpression
942
+ * Filter('price').gt(50)
943
+ *
944
+ * // Chained operators - combines into single field filter
945
+ * Filter('price').gt(50).lt(100)
946
+ * // Produces: { price: { $gt: 50, $lt: 100 } }
947
+ */
948
+ type ChainableFieldFilter<T, S extends WQLSpec, Field extends FilterableFields<S>> = FilterExpression<T, S> & (HasOperator<S, Field & string, '$eq'> extends true ? {
949
+ eq(value: GetNestedType<T, Field & string>): ChainableFieldFilter<T, S, Field>;
950
+ } : {}) & (HasOperator<S, Field & string, '$ne'> extends true ? {
951
+ ne(value: GetNestedType<T, Field & string>): ChainableFieldFilter<T, S, Field>;
952
+ } : {}) & (HasOperator<S, Field & string, '$gt'> extends true ? {
953
+ gt(value: GetNestedType<T, Field & string>): ChainableFieldFilter<T, S, Field>;
954
+ } : {}) & (HasOperator<S, Field & string, '$gte'> extends true ? {
955
+ gte(value: GetNestedType<T, Field & string>): ChainableFieldFilter<T, S, Field>;
956
+ } : {}) & (HasOperator<S, Field & string, '$lt'> extends true ? {
957
+ lt(value: GetNestedType<T, Field & string>): ChainableFieldFilter<T, S, Field>;
958
+ } : {}) & (HasOperator<S, Field & string, '$lte'> extends true ? {
959
+ lte(value: GetNestedType<T, Field & string>): ChainableFieldFilter<T, S, Field>;
960
+ } : {}) & (HasOperator<S, Field & string, '$startsWith'> extends true ? {
961
+ startsWith(value: string): ChainableFieldFilter<T, S, Field>;
962
+ } : {}) & (HasOperator<S, Field & string, '$endsWith'> extends true ? {
963
+ endsWith(value: string): ChainableFieldFilter<T, S, Field>;
964
+ } : {}) & (HasOperator<S, Field & string, '$contains'> extends true ? {
965
+ contains(value: string): ChainableFieldFilter<T, S, Field>;
966
+ } : {}) & (HasOperator<S, Field & string, '$in'> extends true ? {
967
+ in(values: GetNestedType<T, Field & string>[]): ChainableFieldFilter<T, S, Field>;
968
+ } : {}) & (HasOperator<S, Field & string, '$nin'> extends true ? {
969
+ nin(values: GetNestedType<T, Field & string>[]): ChainableFieldFilter<T, S, Field>;
970
+ } : {}) & (HasOperator<S, Field & string, '$hasSome'> extends true ? {
971
+ hasSome(values: GetNestedType<T, Field & string>[]): ChainableFieldFilter<T, S, Field>;
972
+ } : {}) & (HasOperator<S, Field & string, '$hasAll'> extends true ? {
973
+ hasAll(values: GetNestedType<T, Field & string>[]): ChainableFieldFilter<T, S, Field>;
974
+ } : {}) & (HasOperator<S, Field & string, '$exists'> extends true ? {
975
+ exists(value?: boolean): ChainableFieldFilter<T, S, Field>;
976
+ } : {}) & (HasOperator<S, Field & string, '$isEmpty'> extends true ? {
977
+ isEmpty(value?: boolean): ChainableFieldFilter<T, S, Field>;
978
+ } : {}) & (HasOperator<S, Field & string, '$ne'> extends true ? {
979
+ isNotEmpty(): ChainableFieldFilter<T, S, Field>;
980
+ } : {});
981
+ /**
982
+ * Filter methods for a specific field (alias for ChainableFieldFilter)
983
+ * Only shows methods for operators that the field supports
984
+ */
985
+ type FieldFilter<T, S extends WQLSpec, Field extends FilterableFields<S>> = ChainableFieldFilter<T, S, Field>;
986
+ /**
987
+ * Sort methods for a specific field
988
+ */
989
+ interface FieldSort<S extends WQLSpec> {
990
+ asc(): SortExpression<S>;
991
+ desc(): SortExpression<S>;
992
+ }
993
+ /**
994
+ * Filter factory interface - creates filter expressions
995
+ * @example
996
+ * Filter('price').gt(50)
997
+ * Filter.and(Filter('title').eq('Product'), Filter('price').gt(50))
998
+ */
999
+ interface FilterFactory<T, S extends WQLSpec> {
1000
+ /** Create a field-specific filter */
1001
+ <Field extends FilterableFields<S>>(field: Field): FieldFilter<T, S, Field>;
1002
+ /** Combine filters with AND logic */
1003
+ and(...filters: FilterExpression<T, S>[]): FilterExpression<T, S>;
1004
+ /** Combine filters with OR logic */
1005
+ or(...filters: FilterExpression<T, S>[]): FilterExpression<T, S>;
1006
+ /** Negate a filter */
1007
+ not(filter: FilterExpression<T, S>): FilterExpression<T, S>;
1008
+ }
1009
+ /**
1010
+ * Sort factory - creates sort expressions
1011
+ * @example
1012
+ * Sort('price').desc()
1013
+ */
1014
+ type SortFactory<S extends WQLSpec> = <Field extends SortableFields<S>>(field: Field) => FieldSort<S>;
1015
+
1016
+ /**
1017
+ * The output type from SearchBuilder.build()
1018
+ * This is a plain object ready to be sent to an API
1019
+ */
1020
+ interface SearchRequest<T, S extends SearchSpec> {
1021
+ /** Filter object */
1022
+ filter?: Filter<T, S>;
1023
+ /** List of sort objects */
1024
+ sort?: Sorting<S>[];
1025
+ /** Full-text search parameters */
1026
+ search?: SearchDetails<S>;
1027
+ /** Aggregations to compute */
1028
+ aggregations?: Aggregation<S>[];
1029
+ /** Paging configuration */
1030
+ paging?: PagingFor<S>;
1031
+ /** Time zone for date operations */
1032
+ timeZone?: string;
1033
+ }
1034
+ /**
1035
+ * Represents a search expression that can be used in SearchBuilder
1036
+ */
1037
+ interface SearchExpression<S extends SearchSpec> {
1038
+ readonly search: SearchDetails<S>;
1039
+ }
1040
+ /**
1041
+ * Represents an aggregation expression that can be used in SearchBuilder
1042
+ */
1043
+ interface AggregationExpression<S extends SearchSpec> {
1044
+ readonly aggregation: Aggregation<S>;
1045
+ }
1046
+ /**
1047
+ * Builder for constructing search parameters
1048
+ * @example
1049
+ * SearchParams('dark shoes')
1050
+ * .mode('AND')
1051
+ * .fields(['productName', 'description'])
1052
+ * .fuzzy(true)
1053
+ */
1054
+ interface SearchParamsBuilder<S extends SearchSpec> extends SearchExpression<S> {
1055
+ /** Set the search expression/query string */
1056
+ expression(expr: string): SearchParamsBuilder<S>;
1057
+ /** Set the search mode (how to combine multiple terms) */
1058
+ mode(mode: 'AND' | 'OR'): SearchParamsBuilder<S>;
1059
+ /** Set the fields to search in */
1060
+ fields(fields: SearchableFields<S>[]): SearchParamsBuilder<S>;
1061
+ /** Enable or disable fuzzy matching */
1062
+ fuzzy(enabled?: boolean): SearchParamsBuilder<S>;
1063
+ }
1064
+ /**
1065
+ * Factory function for creating SearchParamsBuilder
1066
+ * @param expression - Optional search expression to initialize with
1067
+ */
1068
+ type SearchParamsFactory<S extends SearchSpec> = (expression?: string) => SearchParamsBuilder<S>;
1069
+ /**
1070
+ * Sort configuration for value aggregations
1071
+ */
1072
+ interface ValueAggregationSort {
1073
+ sortBy(type: 'COUNT' | 'VALUE', direction: 'ASC' | 'DESC'): this;
1074
+ }
1075
+ /**
1076
+ * Builder for VALUE type aggregations
1077
+ */
1078
+ interface ValueAggregationBuilder<S extends SearchSpec> extends AggregationExpression<S>, ValueAggregationSort {
1079
+ /** Set maximum number of buckets to return */
1080
+ limit(count: number): ValueAggregationBuilder<S>;
1081
+ /** Exclude documents with missing values */
1082
+ excludeMissingValues(): ValueAggregationBuilder<S>;
1083
+ /** Include documents with missing values */
1084
+ includeMissingValues(): ValueAggregationBuilder<S>;
1085
+ /** Include specific values in their own bucket */
1086
+ includeValues(addToBucket: string): ValueAggregationBuilder<S>;
1087
+ }
1088
+ /**
1089
+ * Builder for RANGE type aggregations
1090
+ */
1091
+ interface RangeAggregationBuilder<S extends SearchSpec> extends AggregationExpression<S> {
1092
+ /** Set the range buckets */
1093
+ withBuckets(...buckets: {
1094
+ from?: number | null;
1095
+ to?: number | null;
1096
+ }[]): RangeAggregationBuilder<S>;
1097
+ }
1098
+ /**
1099
+ * Builder for DATE_HISTOGRAM type aggregations
1100
+ */
1101
+ interface DateHistogramAggregationBuilder<S extends SearchSpec> extends AggregationExpression<S> {
1102
+ /** Set the interval for date histogram buckets */
1103
+ interval(interval: 'YEAR' | 'MONTH' | 'WEEK' | 'DAY' | 'HOUR' | 'MINUTE' | 'SECOND'): DateHistogramAggregationBuilder<S>;
1104
+ }
1105
+ /**
1106
+ * Builder for SCALAR type aggregations
1107
+ */
1108
+ interface ScalarAggregationBuilder<S extends SearchSpec> extends AggregationExpression<S> {
1109
+ /** Set the scalar aggregation type */
1110
+ type(scalarType: 'COUNT_DISTINCT' | 'MIN' | 'MAX' | 'SUM' | 'AVG'): ScalarAggregationBuilder<S>;
1111
+ }
1112
+ /**
1113
+ * Builder for NESTED type aggregations
1114
+ */
1115
+ interface NestedAggregationBuilder<S extends SearchSpec> extends AggregationExpression<S> {
1116
+ /** Add a nested aggregation */
1117
+ addNestedAggregation(aggregation: AggregationExpression<S>): NestedAggregationBuilder<S>;
1118
+ }
1119
+ /**
1120
+ * Aggregation type configuration
1121
+ */
1122
+ type AggregationType = 'VALUE' | 'RANGE' | 'DATE_HISTOGRAM' | 'SCALAR' | 'NESTED';
1123
+ /**
1124
+ * Builder for constructing aggregations
1125
+ * @example
1126
+ * Aggregation('status_count')
1127
+ * .ofType('VALUE')
1128
+ * .onField('status')
1129
+ * .asValueAggregation()
1130
+ * .sortBy('COUNT', 'DESC')
1131
+ * .limit(10)
1132
+ */
1133
+ interface AggregationBuilder<S extends SearchSpec> extends AggregationExpression<S> {
1134
+ /** Set the aggregation type */
1135
+ ofType(type: AggregationType): AggregationBuilder<S>;
1136
+ /** Set the field to aggregate on */
1137
+ onField(field: AggregatableFields<S>): AggregationBuilder<S>;
1138
+ /** Configure as a value aggregation */
1139
+ asValueAggregation(): ValueAggregationBuilder<S>;
1140
+ /** Configure as a range aggregation */
1141
+ asRangeAggregation(): RangeAggregationBuilder<S>;
1142
+ /** Configure as a date histogram aggregation */
1143
+ asDateHistogramAggregation(): DateHistogramAggregationBuilder<S>;
1144
+ /** Configure as a scalar aggregation */
1145
+ asScalarAggregation(): ScalarAggregationBuilder<S>;
1146
+ /** Configure as a nested aggregation */
1147
+ asNestedAggregation(): NestedAggregationBuilder<S>;
1148
+ }
1149
+ /**
1150
+ * Factory function for creating AggregationBuilder
1151
+ */
1152
+ type AggregationFactory<S extends SearchSpec> = (name: string) => AggregationBuilder<S>;
1153
+ /**
1154
+ * Search builder interface for constructing search requests
1155
+ * @template T - Entity type
1156
+ * @template S - Search spec defining filterable/sortable/searchable/aggregatable fields
1157
+ * @template R - Output type from build() (defaults to SearchRequest<T, S>)
1158
+ * @example
1159
+ * SearchBuilder()
1160
+ * .withFilter(Filter.and(
1161
+ * Filter('title').eq('Product'),
1162
+ * Filter('price').gt(50)
1163
+ * ))
1164
+ * .withSearchClause(SearchParams('shoes').fuzzy(true))
1165
+ * .withAggregation(Aggregation('status_count').ofType('VALUE').onField('status'))
1166
+ * .withSorting(Sort('price').desc())
1167
+ * .withPaging({ limit: 20 })
1168
+ * .build()
1169
+ */
1170
+ interface SearchBuilder<T, S extends SearchSpec, R = SearchRequest<T, S>> {
1171
+ /** Add a filter to the search */
1172
+ withFilter(filter: FilterExpression<T, S>): SearchBuilder<T, S, R>;
1173
+ /** Add a search clause for full-text search */
1174
+ withSearchClause(search: SearchExpression<S>): SearchBuilder<T, S, R>;
1175
+ /** Add sorting to the search */
1176
+ withSorting(...sorts: SortExpression<S>[]): SearchBuilder<T, S, R>;
1177
+ /** Add aggregations to the search */
1178
+ withAggregation(...aggregations: AggregationExpression<S>[]): SearchBuilder<T, S, R>;
1179
+ /** Add paging to the search */
1180
+ withPaging(paging: PagingFor<S>): SearchBuilder<T, S, R>;
1181
+ /** Set the time zone for date operations */
1182
+ withTimeZone(timeZone: string): SearchBuilder<T, S, R>;
1183
+ /** Build the final search request object */
1184
+ build(): R;
1185
+ }
1186
+ /**
1187
+ * Complete set of search helpers for an entity
1188
+ * This is what gets spread into module namespaces
1189
+ * @template T - Entity type
1190
+ * @template S - Search spec defining filterable/sortable/searchable/aggregatable fields
1191
+ * @template R - Output type from SearchBuilder.build() (defaults to SearchRequest<T, S>)
1192
+ */
1193
+ interface SearchHelpers<T, S extends SearchSpec, R = SearchRequest<T, S>> {
1194
+ /** SearchBuilder factory */
1195
+ SearchBuilder: () => SearchBuilder<T, S, R>;
1196
+ /** Filter factory - creates filter expressions (reused from query) */
1197
+ Filter: FilterFactory<T, S>;
1198
+ /** Sort factory - creates sort expressions (reused from query) */
1199
+ Sort: SortFactory<S>;
1200
+ /** Search params factory - creates search expressions */
1201
+ SearchParams: SearchParamsFactory<S>;
1202
+ /** Aggregation factory - creates aggregation expressions */
1203
+ Aggregation: AggregationFactory<S>;
1204
+ }
1205
+
898
1206
  /**
899
1207
  * Specification for a query API
900
1208
  * Defines what fields can be filtered and sorted
@@ -952,4 +1260,59 @@ type Query<Entity, Spec extends QuerySpec> = {
952
1260
  sort?: Sorting<Spec>[];
953
1261
  } & Partial<Paging<Spec>>;
954
1262
 
955
- export { type APIMetadata, type AccountInfo, type AmbassadorFactory, type AmbassadorFunctionDescriptor, type AmbassadorRequestOptions, type AuthenticationStrategy, type BaseEventMetadata, type BoundAuthenticationStrategy, type BuildAmbassadorFunction, type BuildDescriptors, type BuildEventDefinition, type BuildRESTFunction, type BuildServicePluginDefinition, type Descriptors, EventDefinition, type EventHandler, type EventIdentity, type ExposeFieldsBasedOnToggle, type Filter, type FilterableFields, type GetNestedType, type HTTPMethod, type Host, type HostModule, type HostModuleAPI, type HttpClient, type HttpResponse, type MaybeContext, type Method, type MigrationOptions, type NonNullablePaths, type PublicMetadata, type Query, type QuerySpec, type RESTFunctionDescriptor, type RequestContext, type RequestOptions, type RequestOptionsFactory, type RestModuleMeta, SERVICE_PLUGIN_ERROR_TYPE, SORT_CAPABILITIES, SORT_DIRECTIONS, type Search, type SearchSpec, type ServicePluginContract, ServicePluginDefinition, type ServicePluginMethodInput, type ServicePluginMethodMetadata, type SortCapability, type SortOrder, type Sorting, type WQL, type WQLSpec };
1263
+ /**
1264
+ * The output type from QueryBuilder.build()
1265
+ * This is a plain object ready to be sent to an API
1266
+ */
1267
+ interface QueryRequest<T, S extends QuerySpec> {
1268
+ filter?: Filter<T, S>;
1269
+ sort?: Sorting<S>[];
1270
+ paging?: PagingFor<S>;
1271
+ /** Field projection - return only specified fields */
1272
+ fields?: string[];
1273
+ }
1274
+ /**
1275
+ * Query builder interface
1276
+ * @template T - Entity type
1277
+ * @template S - Query spec defining filterable/sortable fields
1278
+ * @template R - Output type from build() (defaults to QueryRequest<T, S>)
1279
+ * @example
1280
+ * QueryBuilder()
1281
+ * .withFilter(Filter.and(
1282
+ * Filter('title').eq('Product'),
1283
+ * Filter('price').gt(50)
1284
+ * ))
1285
+ * .withFields('title', 'price')
1286
+ * .withSorting(Sort('price').desc())
1287
+ * .withPaging({ limit: 20, offset: 0 })
1288
+ * .build()
1289
+ */
1290
+ interface QueryBuilder<T, S extends QuerySpec, R = QueryRequest<T, S>> {
1291
+ /** Add a filter to the query */
1292
+ withFilter(filter: FilterExpression<T, S>): QueryBuilder<T, S, R>;
1293
+ /** Add field projection - return only specified fields */
1294
+ withFields(...fields: (keyof T & string)[]): QueryBuilder<T, S, R>;
1295
+ /** Add sorting to the query */
1296
+ withSorting(...sorts: SortExpression<S>[]): QueryBuilder<T, S, R>;
1297
+ /** Add paging to the query */
1298
+ withPaging(paging: PagingFor<S>): QueryBuilder<T, S, R>;
1299
+ /** Build the final query request object */
1300
+ build(): R;
1301
+ }
1302
+ /**
1303
+ * Complete set of query helpers for an entity
1304
+ * This is what gets spread into module namespaces
1305
+ * @template T - Entity type
1306
+ * @template S - Query spec defining filterable/sortable fields
1307
+ * @template R - Output type from QueryBuilder.build() (defaults to QueryRequest<T, S>)
1308
+ */
1309
+ interface QueryHelpers<T, S extends QuerySpec, R = QueryRequest<T, S>> {
1310
+ /** QueryBuilder factory */
1311
+ QueryBuilder: () => QueryBuilder<T, S, R>;
1312
+ /** Filter factory - creates filter expressions */
1313
+ Filter: FilterFactory<T, S>;
1314
+ /** Sort factory - creates sort expressions */
1315
+ Sort: SortFactory<S>;
1316
+ }
1317
+
1318
+ export { type APIMetadata, type AccountInfo, type AggregatableFields, type Aggregation, type AggregationBuilder, type AggregationExpression, type AggregationFactory, type AggregationType, type AmbassadorFactory, type AmbassadorFunctionDescriptor, type AmbassadorRequestOptions, type AuthenticationStrategy, type BaseEventMetadata, type BoundAuthenticationStrategy, type BuildAmbassadorFunction, type BuildDescriptors, type BuildEventDefinition, type BuildRESTFunction, type BuildServicePluginDefinition, type CursorPaging, type DateHistogramAggregationBuilder, type Descriptors, EventDefinition, type EventHandler, type EventIdentity, type ExposeFieldsBasedOnToggle, type FieldFilter, type FieldSort, type Filter, type FilterExpression, type FilterFactory, type FilterableFields, type GetNestedType, type HTTPMethod, type Host, type HostModule, type HostModuleAPI, type HttpClient, type HttpResponse, type MaybeContext, type Method, type MigrationOptions, type NestedAggregationBuilder, type NonNullablePaths, type OffsetPaging, type PagingFor, type PublicMetadata, type Query, type QueryBuilder, type QueryHelpers, type QueryRequest, type QuerySpec, type RESTFunctionDescriptor, type RangeAggregationBuilder, type RequestContext, type RequestOptions, type RequestOptionsFactory, type RestModuleMeta, SERVICE_PLUGIN_ERROR_TYPE, SORT_CAPABILITIES, SORT_DIRECTIONS, type ScalarAggregationBuilder, type Search, type SearchBuilder, type SearchDetails, type SearchExpression, type SearchHelpers, type SearchParamsBuilder, type SearchParamsFactory, type SearchRequest, type SearchSpec, type SearchableFields, type ServicePluginContract, ServicePluginDefinition, type ServicePluginMethodInput, type ServicePluginMethodMetadata, type SortCapability, type SortExpression, type SortFactory, type SortOrder, type Sorting, type ValueAggregationBuilder, type ValueAggregationSort, type WQL, type WQLSpec };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/sdk-types",
3
- "version": "1.17.2",
3
+ "version": "1.17.4",
4
4
  "author": {
5
5
  "name": "Ronny Ringel",
6
6
  "email": "ronnyr@wix.com"
@@ -62,5 +62,5 @@
62
62
  ]
63
63
  }
64
64
  },
65
- "falconPackageHash": "dbcb65b0d495abc60656e5cf051188a2fbdc2f6359aaade41b2465ee"
65
+ "falconPackageHash": "1d9bf5bab7590b3128ea9479165bc5243e09e387acd60b54b5fa1863"
66
66
  }