@wix/auto_sdk_seo_content-plan-flows 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,558 @@
1
+ import { GetContentPlanFlowRequest as GetContentPlanFlowRequest$1, GetContentPlanFlowResponse as GetContentPlanFlowResponse$1, TriggerContentPlanGenerationFlowRequest as TriggerContentPlanGenerationFlowRequest$1, TriggerContentPlanGenerationFlowResponse as TriggerContentPlanGenerationFlowResponse$1, CancelContentPlanFlowRequest as CancelContentPlanFlowRequest$1, CancelContentPlanFlowResponse as CancelContentPlanFlowResponse$1 } from './index.typings.mjs';
2
+ import '@wix/sdk-types';
3
+
4
+ /**
5
+ * A content plan flow tracks the generation of an SEO content plan for a site.
6
+ *
7
+ * A content plan is a set of blog post briefs built from the site's pages, its
8
+ * business category, and real search volume data. Generating one takes several
9
+ * minutes, so the flow runs asynchronously and reports its progress in `status`.
10
+ *
11
+ * A flow doesn't run to completion on its own. It stops at `KEYWORD_RESEARCH`
12
+ * and waits for a call to Create Content Plan before it continues.
13
+ */
14
+ interface ContentPlanFlow {
15
+ /**
16
+ * Content plan flow ID.
17
+ * @format GUID
18
+ * @readonly
19
+ */
20
+ id?: string | null;
21
+ /**
22
+ * Date and time the content plan flow was created.
23
+ * @maxLength 100
24
+ */
25
+ createdAt?: string | null;
26
+ /**
27
+ * Date and time the content plan flow was updated.
28
+ * @maxLength 100
29
+ */
30
+ updatedAt?: string | null;
31
+ /**
32
+ * Current status of the content plan flow.
33
+ *
34
+ * The status advances on its own as generation progresses, except at
35
+ * `KEYWORD_RESEARCH`, where the flow waits for a call to Create Content
36
+ * Plan.
37
+ */
38
+ status?: StatusWithLiterals;
39
+ /**
40
+ * What started the content plan flow. Flows started by an app are
41
+ * recorded as `AGENT`.
42
+ * @maxLength 100
43
+ */
44
+ origin?: string | null;
45
+ /**
46
+ * ID of the site content summary the flow produced.
47
+ * @format GUID
48
+ */
49
+ summaryId?: string | null;
50
+ /**
51
+ * Untyped diagnostic detail about the current status. Carries
52
+ * `failedOnStep` when `status` is `FAIL`.
53
+ * @internal
54
+ */
55
+ statusAdditionalData?: Record<string, any> | null;
56
+ /**
57
+ * ID of the keyword research the flow produced.
58
+ *
59
+ * Available once `status` is `KEYWORD_RESEARCH` or later.
60
+ * @format GUID
61
+ */
62
+ keywordResearchId?: string | null;
63
+ /**
64
+ * retry attempt number
65
+ * @internal
66
+ */
67
+ retryAttempt?: number | null;
68
+ /**
69
+ * Execution ID for async Proactive Marketing Assistant (PMA) operations.
70
+ * @internal
71
+ * @format GUID
72
+ */
73
+ pmaExecutionId?: string | null;
74
+ }
75
+ declare enum Status {
76
+ /** The flow is created and the generation pipeline is starting. */
77
+ CREATED = "CREATED",
78
+ /** The site's existing content is being summarized. */
79
+ SITE_SUMMARY = "SITE_SUMMARY",
80
+ /**
81
+ * Keyword research is complete and the flow is waiting. Call Create
82
+ * Content Plan to generate the blog post briefs and continue the flow.
83
+ */
84
+ KEYWORD_RESEARCH = "KEYWORD_RESEARCH",
85
+ /** Blog post briefs are being generated from the keyword research. */
86
+ CONTENT_PLAN = "CONTENT_PLAN",
87
+ /**
88
+ * Generation is complete. Retrieve the results with List Blog Post
89
+ * Candidates and List Keyword Research Items.
90
+ */
91
+ SUCCESS = "SUCCESS",
92
+ /** Generation failed. Trigger a flow to try again. */
93
+ FAIL = "FAIL",
94
+ /**
95
+ * The site is missing business information that keyword research
96
+ * requires. The flow resumes automatically once the information is
97
+ * added to the site.
98
+ */
99
+ PENDING_REQUIREMENTS = "PENDING_REQUIREMENTS",
100
+ /** The flow was canceled and can't be resumed. */
101
+ CANCELED = "CANCELED",
102
+ /** The site's pages are being analyzed. */
103
+ SITE_ANALYSIS = "SITE_ANALYSIS"
104
+ }
105
+ /** @enumType */
106
+ type StatusWithLiterals = Status | 'CREATED' | 'SITE_SUMMARY' | 'KEYWORD_RESEARCH' | 'CONTENT_PLAN' | 'SUCCESS' | 'FAIL' | 'PENDING_REQUIREMENTS' | 'CANCELED' | 'SITE_ANALYSIS';
107
+ interface GetContentPlanFlowRequest {
108
+ /**
109
+ * ID of the content plan flow to retrieve.
110
+ *
111
+ * Omit to retrieve the site's most recent successful flow.
112
+ * @format GUID
113
+ */
114
+ contentPlanFlowId: string | null;
115
+ }
116
+ interface GetContentPlanFlowResponse {
117
+ /** Retrieved content plan flow. */
118
+ contentPlanFlow?: ContentPlanFlow;
119
+ }
120
+ interface TriggerContentPlanGenerationFlowRequest {
121
+ /**
122
+ * Internal. External app callers get AGENT; internal callers keep their value.
123
+ * @internal
124
+ * @maxLength 100
125
+ */
126
+ origin?: string | null;
127
+ /**
128
+ * Execution ID supplied by the Proactive Marketing Assistant. No external
129
+ * caller has one. No removal owner is assigned yet.
130
+ * @internal
131
+ * @format GUID
132
+ */
133
+ executionId?: string | null;
134
+ }
135
+ interface TriggerContentPlanGenerationFlowResponse {
136
+ /**
137
+ * ID of the content plan flow that was created.
138
+ *
139
+ * Poll Get Content Plan Flow with this ID to follow the flow's progress.
140
+ * @format GUID
141
+ */
142
+ contentPlanFlowId?: string | null;
143
+ }
144
+ interface ExecuteActionRequest {
145
+ /**
146
+ * the execution id
147
+ * @format GUID
148
+ */
149
+ executionId?: string;
150
+ /**
151
+ * the action id
152
+ * @maxLength 1000
153
+ */
154
+ actionId?: string;
155
+ /** item data - if relevant */
156
+ item?: ItemData;
157
+ /** whether to reset the current content of the action */
158
+ reset?: boolean;
159
+ }
160
+ interface ItemData extends ItemDataPayloadDataOneOf {
161
+ blogData?: BlogData;
162
+ /**
163
+ * id
164
+ * @maxLength 1000
165
+ */
166
+ id?: string;
167
+ /**
168
+ * type
169
+ * @maxLength 1000
170
+ */
171
+ type?: string;
172
+ }
173
+ /** @oneof */
174
+ interface ItemDataPayloadDataOneOf {
175
+ blogData?: BlogData;
176
+ }
177
+ interface BlogData {
178
+ /**
179
+ * prompt
180
+ * @maxLength 10000
181
+ */
182
+ prompt?: string;
183
+ }
184
+ interface ExecuteActionResponse {
185
+ /** Whether the suggestion succeeded */
186
+ success?: boolean;
187
+ /** Whether the operation is async */
188
+ async?: boolean;
189
+ /**
190
+ * Optional internal message
191
+ * @maxLength 1000
192
+ */
193
+ message?: string;
194
+ /** Optional display message */
195
+ displayMessage?: DisplayMessage;
196
+ /** The payload of the action, also the suggestion itself. */
197
+ payload?: ActionPayload;
198
+ /** Total action cost in microcents (1 microcent = $0.00001). If omitted or zero, PMA uses configured credit cost. */
199
+ costInMicrocents?: number | null;
200
+ }
201
+ interface DisplayMessage {
202
+ /**
203
+ * Message to show to the user
204
+ * @maxLength 1000
205
+ */
206
+ message?: string;
207
+ /** Optional call to action */
208
+ cta?: ActionCta;
209
+ }
210
+ interface ActionCta {
211
+ /**
212
+ * CTA title
213
+ * @maxLength 1000
214
+ */
215
+ title?: string;
216
+ /**
217
+ * CTA URL
218
+ * @maxLength 1000
219
+ */
220
+ url?: string;
221
+ }
222
+ interface ActionPayload {
223
+ /**
224
+ * Description of the suggestion
225
+ * @maxLength 1000
226
+ */
227
+ description?: string;
228
+ /**
229
+ * Optional motivation for the suggestion
230
+ * @maxLength 1000
231
+ */
232
+ motivation?: string;
233
+ /** Optional entity being suggested */
234
+ entity?: Entity;
235
+ /**
236
+ * Optional changes suggested
237
+ * @maxSize 100
238
+ */
239
+ changes?: Change[];
240
+ /**
241
+ * Optional items suggested
242
+ * @maxSize 100
243
+ */
244
+ items?: Item[];
245
+ /** Optional preview link */
246
+ previewLink?: ActionCta;
247
+ }
248
+ interface Entity {
249
+ /**
250
+ * Entity ID
251
+ * @maxLength 100
252
+ */
253
+ id?: string;
254
+ /**
255
+ * Optional entity name
256
+ * @maxLength 1000
257
+ */
258
+ name?: string;
259
+ }
260
+ interface Change {
261
+ /**
262
+ * Change ID
263
+ * @maxLength 100
264
+ */
265
+ id?: string;
266
+ /**
267
+ * Change title
268
+ * @maxLength 1000
269
+ */
270
+ title?: string;
271
+ /**
272
+ * The resulting state after the change
273
+ * @maxLength 1000
274
+ */
275
+ after?: string;
276
+ /**
277
+ * Optional description
278
+ * @maxLength 1000
279
+ */
280
+ description?: string;
281
+ /**
282
+ * Optional state before the change
283
+ * @maxLength 1000
284
+ */
285
+ before?: string;
286
+ /** Optional: is this a suggestion or a confirmed change */
287
+ isSuggestion?: boolean;
288
+ /**
289
+ * Optional type of change
290
+ * @maxLength 100
291
+ */
292
+ type?: string;
293
+ }
294
+ interface Item {
295
+ /**
296
+ * Item ID
297
+ * @maxLength 100
298
+ */
299
+ id?: string;
300
+ /**
301
+ * Item title
302
+ * @maxLength 1000
303
+ */
304
+ title?: string;
305
+ /**
306
+ * Optional description
307
+ * @maxLength 1000
308
+ */
309
+ description?: string;
310
+ /**
311
+ * Optional images
312
+ * @maxSize 100
313
+ * @maxLength 1000
314
+ */
315
+ images?: string[];
316
+ /** Optional preview link */
317
+ previewLink?: ActionCta;
318
+ /**
319
+ * Optional motivation for suggesting this item
320
+ * @maxLength 1000
321
+ */
322
+ motivation?: string;
323
+ /** Data */
324
+ data?: Record<string, any> | null;
325
+ /**
326
+ * The content plan item id which this item created by
327
+ * @maxLength 100
328
+ */
329
+ contentPlanItemId?: string;
330
+ /** scheduled date */
331
+ scheduledDate?: Date | null;
332
+ }
333
+ interface CancelContentPlanFlowRequest {
334
+ /**
335
+ * ID of the content plan flow to cancel.
336
+ * @format GUID
337
+ */
338
+ contentPlanFlowId: string | null;
339
+ }
340
+ interface CancelContentPlanFlowResponse {
341
+ }
342
+ interface DomainEvent extends DomainEventBodyOneOf {
343
+ createdEvent?: EntityCreatedEvent;
344
+ updatedEvent?: EntityUpdatedEvent;
345
+ deletedEvent?: EntityDeletedEvent;
346
+ actionEvent?: ActionEvent;
347
+ /** Event ID. With this ID you can easily spot duplicated events and ignore them. */
348
+ id?: string;
349
+ /**
350
+ * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.
351
+ * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.
352
+ */
353
+ entityFqdn?: string;
354
+ /**
355
+ * Event action name, placed at the top level to make it easier for users to dispatch messages.
356
+ * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.
357
+ */
358
+ slug?: string;
359
+ /** ID of the entity associated with the event. */
360
+ entityId?: string;
361
+ /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */
362
+ eventTime?: Date | null;
363
+ /**
364
+ * Whether the event was triggered as a result of a privacy regulation application
365
+ * (for example, GDPR).
366
+ */
367
+ triggeredByAnonymizeRequest?: boolean | null;
368
+ /** If present, indicates the action that triggered the event. */
369
+ originatedFrom?: string | null;
370
+ /**
371
+ * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at `16:00` and then again at `16:01`, the second update will always have a higher sequence number.
372
+ * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.
373
+ */
374
+ entityEventSequence?: string | null;
375
+ }
376
+ /** @oneof */
377
+ interface DomainEventBodyOneOf {
378
+ createdEvent?: EntityCreatedEvent;
379
+ updatedEvent?: EntityUpdatedEvent;
380
+ deletedEvent?: EntityDeletedEvent;
381
+ actionEvent?: ActionEvent;
382
+ }
383
+ interface EntityCreatedEvent {
384
+ entityAsJson?: string;
385
+ /**
386
+ * Indicates the event was triggered by a restore-from-trashbin operation for a previously deleted entity
387
+ * @internal
388
+ */
389
+ triggeredByUndelete?: boolean | null;
390
+ /** Indicates the event was triggered by a restore-from-trashbin operation for a previously deleted entity */
391
+ restoreInfo?: RestoreInfo;
392
+ /**
393
+ * Optional domain-specific metadata defined by the API owner, encoded as JSON.
394
+ * @internal
395
+ */
396
+ additionalMetadataAsJson?: string | null;
397
+ }
398
+ interface RestoreInfo {
399
+ deletedDate?: Date | null;
400
+ }
401
+ interface EntityUpdatedEvent {
402
+ /**
403
+ * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.
404
+ * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.
405
+ * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.
406
+ */
407
+ currentEntityAsJson?: string;
408
+ /**
409
+ * This field is currently part of the of the EntityUpdatedEvent msg, but scala/node libraries which implements the domain events standard
410
+ * wont populate it / have any reference to it in the API.
411
+ * The main reason for it is that fetching the old entity from the DB will have a performance hit on an update operation so unless truly needed,
412
+ * the developer should send only the new (current) entity.
413
+ * An additional reason is not wanting to send this additional entity over the wire (kafka) since in some cases it can be really big
414
+ * Developers that must reflect the old entity will have to implement their own domain event sender mechanism which will follow the DomainEvent proto message.
415
+ * @internal
416
+ * @deprecated
417
+ */
418
+ previousEntityAsJson?: string | null;
419
+ /**
420
+ * Map of fully qualified field paths to their previous values for fields that changed.
421
+ * For more details please see [AIP](https://dev.wix.com/docs/rnd-general/articles/p13n-guidelines-aips/guidance-aips/design-patterns/7016-events#modified-fields-format)
422
+ * @internal
423
+ */
424
+ modifiedFields?: Record<string, any>;
425
+ /**
426
+ * Optional domain-specific metadata defined by the API owner, encoded as JSON.
427
+ * @internal
428
+ */
429
+ additionalMetadataAsJson?: string | null;
430
+ }
431
+ interface EntityDeletedEvent {
432
+ /**
433
+ * Indicates if the entity is sent to trash-bin. only available when trash-bin is enabled
434
+ * @internal
435
+ */
436
+ movedToTrash?: boolean | null;
437
+ /** Entity that was deleted. */
438
+ deletedEntityAsJson?: string | null;
439
+ /**
440
+ * Optional domain-specific metadata defined by the API owner, encoded as JSON.
441
+ * @internal
442
+ */
443
+ additionalMetadataAsJson?: string | null;
444
+ }
445
+ interface ActionEvent {
446
+ bodyAsJson?: string;
447
+ }
448
+ interface MessageEnvelope {
449
+ /**
450
+ * App instance ID.
451
+ * @format GUID
452
+ */
453
+ instanceId?: string | null;
454
+ /**
455
+ * Event type.
456
+ * @maxLength 150
457
+ */
458
+ eventType?: string;
459
+ /** The identification type and identity data. */
460
+ identity?: IdentificationData;
461
+ /** Stringify payload. */
462
+ data?: string;
463
+ /** Details related to the account */
464
+ accountInfo?: AccountInfo;
465
+ }
466
+ interface IdentificationData extends IdentificationDataIdOneOf {
467
+ /**
468
+ * ID of a site visitor that has not logged in to the site.
469
+ * @format GUID
470
+ */
471
+ anonymousVisitorId?: string;
472
+ /**
473
+ * ID of a site visitor that has logged in to the site.
474
+ * @format GUID
475
+ */
476
+ memberId?: string;
477
+ /**
478
+ * ID of a Wix user (site owner, contributor, etc.).
479
+ * @format GUID
480
+ */
481
+ wixUserId?: string;
482
+ /**
483
+ * ID of an app.
484
+ * @format GUID
485
+ */
486
+ appId?: string;
487
+ /** @readonly */
488
+ identityType?: WebhookIdentityTypeWithLiterals;
489
+ }
490
+ /** @oneof */
491
+ interface IdentificationDataIdOneOf {
492
+ /**
493
+ * ID of a site visitor that has not logged in to the site.
494
+ * @format GUID
495
+ */
496
+ anonymousVisitorId?: string;
497
+ /**
498
+ * ID of a site visitor that has logged in to the site.
499
+ * @format GUID
500
+ */
501
+ memberId?: string;
502
+ /**
503
+ * ID of a Wix user (site owner, contributor, etc.).
504
+ * @format GUID
505
+ */
506
+ wixUserId?: string;
507
+ /**
508
+ * ID of an app.
509
+ * @format GUID
510
+ */
511
+ appId?: string;
512
+ }
513
+ declare enum WebhookIdentityType {
514
+ UNKNOWN = "UNKNOWN",
515
+ ANONYMOUS_VISITOR = "ANONYMOUS_VISITOR",
516
+ MEMBER = "MEMBER",
517
+ WIX_USER = "WIX_USER",
518
+ APP = "APP"
519
+ }
520
+ /** @enumType */
521
+ type WebhookIdentityTypeWithLiterals = WebhookIdentityType | 'UNKNOWN' | 'ANONYMOUS_VISITOR' | 'MEMBER' | 'WIX_USER' | 'APP';
522
+ interface AccountInfo {
523
+ /**
524
+ * ID of the Wix account associated with the event.
525
+ * @format GUID
526
+ */
527
+ accountId?: string | null;
528
+ /**
529
+ * ID of the parent Wix account. Only included when accountId belongs to a child account.
530
+ * @format GUID
531
+ */
532
+ parentAccountId?: string | null;
533
+ /**
534
+ * ID of the Wix site associated with the event. Only included when the event is tied to a specific site.
535
+ * @format GUID
536
+ */
537
+ siteId?: string | null;
538
+ }
539
+
540
+ type __PublicMethodMetaInfo<K = string, M = unknown, T = unknown, S = unknown, Q = unknown, R = unknown> = {
541
+ getUrl: (context: any) => string;
542
+ httpMethod: K;
543
+ path: string;
544
+ pathParams: M;
545
+ __requestType: T;
546
+ __originalRequestType: S;
547
+ __responseType: Q;
548
+ __originalResponseType: R;
549
+ };
550
+ declare function getContentPlanFlow(): __PublicMethodMetaInfo<'GET', {
551
+ contentPlanFlowId: string;
552
+ }, GetContentPlanFlowRequest$1, GetContentPlanFlowRequest, GetContentPlanFlowResponse$1, GetContentPlanFlowResponse>;
553
+ declare function triggerContentPlanGenerationFlow(): __PublicMethodMetaInfo<'POST', {}, TriggerContentPlanGenerationFlowRequest$1, TriggerContentPlanGenerationFlowRequest, TriggerContentPlanGenerationFlowResponse$1, TriggerContentPlanGenerationFlowResponse>;
554
+ declare function cancelContentPlanFlow(): __PublicMethodMetaInfo<'POST', {
555
+ contentPlanFlowId: string;
556
+ }, CancelContentPlanFlowRequest$1, CancelContentPlanFlowRequest, CancelContentPlanFlowResponse$1, CancelContentPlanFlowResponse>;
557
+
558
+ export { type AccountInfo as AccountInfoOriginal, type ActionCta as ActionCtaOriginal, type ActionEvent as ActionEventOriginal, type ActionPayload as ActionPayloadOriginal, type BlogData as BlogDataOriginal, type CancelContentPlanFlowRequest as CancelContentPlanFlowRequestOriginal, type CancelContentPlanFlowResponse as CancelContentPlanFlowResponseOriginal, type Change as ChangeOriginal, type ContentPlanFlow as ContentPlanFlowOriginal, type DisplayMessage as DisplayMessageOriginal, type DomainEventBodyOneOf as DomainEventBodyOneOfOriginal, type DomainEvent as DomainEventOriginal, type EntityCreatedEvent as EntityCreatedEventOriginal, type EntityDeletedEvent as EntityDeletedEventOriginal, type Entity as EntityOriginal, type EntityUpdatedEvent as EntityUpdatedEventOriginal, type ExecuteActionRequest as ExecuteActionRequestOriginal, type ExecuteActionResponse as ExecuteActionResponseOriginal, type GetContentPlanFlowRequest as GetContentPlanFlowRequestOriginal, type GetContentPlanFlowResponse as GetContentPlanFlowResponseOriginal, type IdentificationDataIdOneOf as IdentificationDataIdOneOfOriginal, type IdentificationData as IdentificationDataOriginal, type ItemData as ItemDataOriginal, type ItemDataPayloadDataOneOf as ItemDataPayloadDataOneOfOriginal, type Item as ItemOriginal, type MessageEnvelope as MessageEnvelopeOriginal, type RestoreInfo as RestoreInfoOriginal, Status as StatusOriginal, type StatusWithLiterals as StatusWithLiteralsOriginal, type TriggerContentPlanGenerationFlowRequest as TriggerContentPlanGenerationFlowRequestOriginal, type TriggerContentPlanGenerationFlowResponse as TriggerContentPlanGenerationFlowResponseOriginal, WebhookIdentityType as WebhookIdentityTypeOriginal, type WebhookIdentityTypeWithLiterals as WebhookIdentityTypeWithLiteralsOriginal, type __PublicMethodMetaInfo, cancelContentPlanFlow, getContentPlanFlow, triggerContentPlanGenerationFlow };
@@ -0,0 +1,3 @@
1
+ {
2
+ "main": "../build/cjs/meta.js"
3
+ }
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "@wix/auto_sdk_seo_content-plan-flows",
3
+ "version": "1.0.0",
4
+ "license": "MIT",
5
+ "publishConfig": {
6
+ "registry": "https://registry.npmjs.org/",
7
+ "access": "public"
8
+ },
9
+ "keywords": [],
10
+ "sideEffects": false,
11
+ "main": "./build/cjs/index.js",
12
+ "types": "./build/cjs/index.d.ts",
13
+ "exports": {
14
+ ".": {
15
+ "import": "./build/es/index.mjs",
16
+ "require": "./build/cjs/index.js",
17
+ "types": "./build/es/index.d.mts"
18
+ },
19
+ "./package.json": "./package.json",
20
+ "./meta": {
21
+ "import": "./build/es/meta.mjs",
22
+ "require": "./build/cjs/meta.js",
23
+ "types": "./build/es/meta.d.mts"
24
+ }
25
+ },
26
+ "files": [
27
+ "build",
28
+ "meta",
29
+ "service-plugins"
30
+ ],
31
+ "dependencies": {
32
+ "@wix/sdk-runtime": "^1.0.24",
33
+ "@wix/sdk-types": "^1.17.11"
34
+ },
35
+ "devDependencies": {
36
+ "tsup": "^8.4.0",
37
+ "typescript": "^5.3.2"
38
+ },
39
+ "scripts": {
40
+ "build": "tsup",
41
+ "test": ":"
42
+ },
43
+ "wix": {
44
+ "artifact": {
45
+ "artifactId": "auto-sdk-seo-content-plan-flows",
46
+ "groupId": "com.wixpress.public-sdk-dependencies"
47
+ },
48
+ "sdkDependency": {
49
+ "fqdnNamespace": "contentPlanFlows",
50
+ "fqdn": "wix.promote.seo.v1.content_plan_content_plan_flow"
51
+ }
52
+ },
53
+ "falconPackageHash": "6f75d59857cb073be364092dacd6f348824e42b6bc7c76d3b72db6c9"
54
+ }