@vcp-dev/contracts 0.6.10 → 0.7.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.
Files changed (78) hide show
  1. package/README.md +5 -4
  2. package/dist/api-response.d.ts +11 -0
  3. package/dist/business-facts.d.ts +23 -0
  4. package/dist/cms-page-directory.d.ts +281 -0
  5. package/dist/cms-site-id.d.ts +4 -0
  6. package/dist/colorway-distinctness.js +1 -1
  7. package/dist/connect-dynamic-collection.d.ts +7 -3
  8. package/dist/connect-form.d.ts +7 -5
  9. package/dist/conversion-hints.d.ts +37 -0
  10. package/dist/crawler-task-service.d.ts +594 -0
  11. package/dist/custom-domain.d.ts +120 -206
  12. package/dist/customer-materials.d.ts +196 -0
  13. package/dist/deployment-lifecycle.d.ts +45 -0
  14. package/dist/deployment-progress.d.ts +51 -0
  15. package/dist/design-tokens.d.ts +1 -0
  16. package/dist/design-tokens.js +1 -1
  17. package/dist/designer-component-library.d.ts +9 -7
  18. package/dist/designer-page-library.d.ts +36 -40
  19. package/dist/e2b-preview-proxy.d.ts +5 -0
  20. package/dist/external-site-edit.d.ts +267 -0
  21. package/dist/firecrawl-internal.d.ts +122 -0
  22. package/dist/font-catalog.d.ts +5 -2
  23. package/dist/form-design.d.ts +109 -69
  24. package/dist/google-search-console.d.ts +317 -0
  25. package/dist/index.d.ts +7110 -1965
  26. package/dist/index.js +1 -1
  27. package/dist/industry-classification.d.ts +43 -0
  28. package/dist/input-context-bundle.d.ts +16 -6
  29. package/dist/internal-entity-id.d.ts +3 -0
  30. package/dist/knowledge-category.d.ts +20 -0
  31. package/dist/knowledge-source-readiness.d.ts +94 -0
  32. package/dist/launcher-prompt-templates.d.ts +742 -0
  33. package/dist/media-library.d.ts +164 -0
  34. package/dist/migration-products.d.ts +45 -0
  35. package/dist/page-slug.d.ts +2 -0
  36. package/dist/page-template.d.ts +95 -0
  37. package/dist/product-search.d.ts +227 -0
  38. package/dist/site-build.d.ts +563 -0
  39. package/dist/site-design-presets.d.ts +20 -0
  40. package/dist/site-edit-capability.d.ts +13 -1
  41. package/dist/site-edit-class-name-source.d.ts +40 -8
  42. package/dist/site-edit-command-result.d.ts +15 -4
  43. package/dist/site-edit-composition.d.ts +13 -0
  44. package/dist/site-edit-event.d.ts +76 -14
  45. package/dist/site-edit-history-status.d.ts +193 -0
  46. package/dist/site-edit-operation.d.ts +205 -62
  47. package/dist/site-edit-page-composition.d.ts +101 -22
  48. package/dist/site-edit-patch-plan.d.ts +49 -3
  49. package/dist/site-edit-render-document.d.ts +67 -17
  50. package/dist/site-edit-session.d.ts +5 -2
  51. package/dist/site-edit-source.d.ts +60 -11
  52. package/dist/site-edit-version.d.ts +1 -1
  53. package/dist/site-extra-requirement.d.ts +31 -0
  54. package/dist/site-locale.d.ts +20 -0
  55. package/dist/site-localization-fields.d.ts +196 -0
  56. package/dist/site-localization-scope.d.ts +95 -0
  57. package/dist/site-preview.d.ts +65 -0
  58. package/dist/site-publish-domain.d.ts +680 -0
  59. package/dist/site-publish-workflow.d.ts +612 -0
  60. package/dist/site-workflow-completions.d.ts +163 -0
  61. package/dist/site-workflow.d.ts +1026 -0
  62. package/dist/sitemap-navigation.d.ts +12 -0
  63. package/dist/step2-page-selection.d.ts +88 -0
  64. package/dist/step2-site-initialization.d.ts +500 -0
  65. package/dist/step3-digital-employee-analysis.d.ts +661 -0
  66. package/dist/step4-diagnosis.d.ts +272 -0
  67. package/dist/step5-strategy.d.ts +8076 -0
  68. package/dist/step6-design.d.ts +986 -0
  69. package/dist/subsite-localization-input.d.ts +121 -0
  70. package/dist/subsite-mount-path.d.ts +23 -0
  71. package/dist/subsite-visible-text-export.d.ts +22 -0
  72. package/dist/template-upgrade-observability.d.ts +2 -2
  73. package/dist/theme-presets.d.ts +56 -1
  74. package/dist/user-facing-copy.d.ts +1 -0
  75. package/dist/workspace-design-apply.d.ts +5 -0
  76. package/dist/workspace-resource-operation.d.ts +75 -33
  77. package/package.json +2 -1
  78. package/dist/publish-plan.d.ts +0 -54
@@ -0,0 +1,164 @@
1
+ import { z } from "zod";
2
+ export declare const MEDIA_LIBRARY_MAX_BYTES: number;
3
+ export declare const MEDIA_LIBRARY_IMAGE_MAX_BYTES: number;
4
+ export declare const MEDIA_LIBRARY_IMAGE_EXTENSIONS: readonly ["jpg", "jpeg", "png", "gif", "webp", "bmp"];
5
+ export declare const MEDIA_LIBRARY_VIDEO_EXTENSIONS: readonly ["mp4", "avi", "mov", "webm", "mkv"];
6
+ export declare const MEDIA_LIBRARY_AUDIO_EXTENSIONS: readonly ["mp3", "wav", "aac", "flac", "ogg", "wma", "m4a"];
7
+ export declare const MEDIA_LIBRARY_DOCUMENT_EXTENSIONS: readonly ["pdf", "doc", "docx", "xls", "xlsx", "ppt", "pptx", "txt", "md", "csv"];
8
+ export declare const MEDIA_LIBRARY_FILE_EXTENSIONS: readonly ["pdf", "doc", "docx", "xls", "xlsx", "ppt", "pptx", "txt", "md", "csv", "zip", "rar", "json", "xmind", "psd", "ai", "fig", "sketch"];
9
+ export declare const MEDIA_LIBRARY_EXTENSIONS: readonly ["jpg", "jpeg", "png", "gif", "webp", "bmp", "mp4", "avi", "mov", "webm", "mkv", "mp3", "wav", "aac", "flac", "ogg", "wma", "m4a", "pdf", "doc", "docx", "xls", "xlsx", "ppt", "pptx", "txt", "md", "csv", "zip", "rar", "json", "xmind", "psd", "ai", "fig", "sketch"];
10
+ export declare const MEDIA_LIBRARY_IMAGE_MIME_TYPES: readonly ["image/jpeg", "image/png", "image/gif", "image/webp", "image/bmp"];
11
+ export declare const MEDIA_LIBRARY_VIDEO_MIME_TYPES: readonly ["video/mp4", "video/x-msvideo", "video/quicktime", "video/webm", "video/x-matroska"];
12
+ export declare const MEDIA_LIBRARY_AUDIO_MIME_TYPES: readonly ["audio/mpeg", "audio/wav", "audio/x-wav", "audio/vnd.wave", "audio/aac", "audio/flac", "audio/x-flac", "audio/ogg", "audio/x-ms-wma", "audio/mp4", "audio/x-m4a"];
13
+ export declare const MEDIA_LIBRARY_MIME_TYPES: readonly ["image/jpeg", "image/png", "image/gif", "image/webp", "image/bmp", "video/mp4", "video/x-msvideo", "video/quicktime", "video/webm", "video/x-matroska", "audio/mpeg", "audio/wav", "audio/x-wav", "audio/vnd.wave", "audio/aac", "audio/flac", "audio/x-flac", "audio/ogg", "audio/x-ms-wma", "audio/mp4", "audio/x-m4a"];
14
+ export declare const MediaLibraryFileTypeSchema: z.ZodEnum<{
15
+ file: "file";
16
+ image: "image";
17
+ video: "video";
18
+ audio: "audio";
19
+ }>;
20
+ export type MediaLibraryFileType = z.infer<typeof MediaLibraryFileTypeSchema>;
21
+ export declare const MediaLibrarySourceSchema: z.ZodEnum<{
22
+ external: "external";
23
+ ai_generated: "ai_generated";
24
+ unsplash: "unsplash";
25
+ }>;
26
+ export type MediaLibrarySource = z.infer<typeof MediaLibrarySourceSchema>;
27
+ export declare const MediaLibraryAssetSchema: z.ZodObject<{
28
+ resource_id: z.ZodString;
29
+ name: z.ZodString;
30
+ url: z.ZodString;
31
+ thumbnail_url: z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<"">]>;
32
+ mime_type: z.ZodString;
33
+ size: z.ZodNumber;
34
+ width: z.ZodNullable<z.ZodNumber>;
35
+ height: z.ZodNullable<z.ZodNumber>;
36
+ source: z.ZodEnum<{
37
+ external: "external";
38
+ ai_generated: "ai_generated";
39
+ unsplash: "unsplash";
40
+ }>;
41
+ created_at: z.ZodNullable<z.ZodString>;
42
+ }, z.core.$strip>;
43
+ export type MediaLibraryAsset = z.infer<typeof MediaLibraryAssetSchema>;
44
+ export declare const ListMediaLibraryAssetsQuerySchema: z.ZodObject<{
45
+ page: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
46
+ page_size: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
47
+ keyword: z.ZodOptional<z.ZodString>;
48
+ file_type: z.ZodDefault<z.ZodEnum<{
49
+ file: "file";
50
+ image: "image";
51
+ video: "video";
52
+ audio: "audio";
53
+ }>>;
54
+ }, z.core.$strip>;
55
+ export type ListMediaLibraryAssetsQuery = z.infer<typeof ListMediaLibraryAssetsQuerySchema>;
56
+ export declare const ListMediaLibraryAssetsResponseSchema: z.ZodObject<{
57
+ code: z.ZodLiteral<0>;
58
+ message: z.ZodString;
59
+ data: z.ZodObject<{
60
+ items: z.ZodArray<z.ZodObject<{
61
+ resource_id: z.ZodString;
62
+ name: z.ZodString;
63
+ url: z.ZodString;
64
+ thumbnail_url: z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<"">]>;
65
+ mime_type: z.ZodString;
66
+ size: z.ZodNumber;
67
+ width: z.ZodNullable<z.ZodNumber>;
68
+ height: z.ZodNullable<z.ZodNumber>;
69
+ source: z.ZodEnum<{
70
+ external: "external";
71
+ ai_generated: "ai_generated";
72
+ unsplash: "unsplash";
73
+ }>;
74
+ created_at: z.ZodNullable<z.ZodString>;
75
+ }, z.core.$strip>>;
76
+ page: z.ZodNumber;
77
+ page_size: z.ZodNumber;
78
+ total: z.ZodNumber;
79
+ }, z.core.$strip>;
80
+ }, z.core.$strip>;
81
+ export type ListMediaLibraryAssetsResponse = z.infer<typeof ListMediaLibraryAssetsResponseSchema>;
82
+ export declare const UploadMediaLibraryAssetResponseSchema: z.ZodObject<{
83
+ code: z.ZodLiteral<0>;
84
+ message: z.ZodString;
85
+ data: z.ZodObject<{
86
+ resource_id: z.ZodString;
87
+ name: z.ZodString;
88
+ url: z.ZodString;
89
+ thumbnail_url: z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<"">]>;
90
+ mime_type: z.ZodString;
91
+ size: z.ZodNumber;
92
+ width: z.ZodNullable<z.ZodNumber>;
93
+ height: z.ZodNullable<z.ZodNumber>;
94
+ source: z.ZodEnum<{
95
+ external: "external";
96
+ ai_generated: "ai_generated";
97
+ unsplash: "unsplash";
98
+ }>;
99
+ created_at: z.ZodNullable<z.ZodString>;
100
+ }, z.core.$strip>;
101
+ }, z.core.$strip>;
102
+ export type UploadMediaLibraryAssetResponse = z.infer<typeof UploadMediaLibraryAssetResponseSchema>;
103
+ export declare const UnsplashMediaAssetSchema: z.ZodObject<{
104
+ provider_id: z.ZodString;
105
+ url: z.ZodString;
106
+ thumbnail_url: z.ZodString;
107
+ width: z.ZodNumber;
108
+ height: z.ZodNumber;
109
+ alt: z.ZodString;
110
+ photographer_name: z.ZodString;
111
+ photographer_url: z.ZodString;
112
+ photo_url: z.ZodString;
113
+ download_location: z.ZodString;
114
+ dominant_color: z.ZodNullable<z.ZodString>;
115
+ }, z.core.$strip>;
116
+ export type UnsplashMediaAsset = z.infer<typeof UnsplashMediaAssetSchema>;
117
+ export declare const SearchUnsplashMediaQuerySchema: z.ZodObject<{
118
+ query: z.ZodString;
119
+ page: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
120
+ page_size: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
121
+ orientation: z.ZodOptional<z.ZodEnum<{
122
+ landscape: "landscape";
123
+ portrait: "portrait";
124
+ squarish: "squarish";
125
+ }>>;
126
+ }, z.core.$strip>;
127
+ export type SearchUnsplashMediaQuery = z.infer<typeof SearchUnsplashMediaQuerySchema>;
128
+ export declare const SearchUnsplashMediaResponseSchema: z.ZodObject<{
129
+ code: z.ZodLiteral<0>;
130
+ message: z.ZodString;
131
+ data: z.ZodObject<{
132
+ items: z.ZodArray<z.ZodObject<{
133
+ provider_id: z.ZodString;
134
+ url: z.ZodString;
135
+ thumbnail_url: z.ZodString;
136
+ width: z.ZodNumber;
137
+ height: z.ZodNumber;
138
+ alt: z.ZodString;
139
+ photographer_name: z.ZodString;
140
+ photographer_url: z.ZodString;
141
+ photo_url: z.ZodString;
142
+ download_location: z.ZodString;
143
+ dominant_color: z.ZodNullable<z.ZodString>;
144
+ }, z.core.$strip>>;
145
+ page: z.ZodNumber;
146
+ page_size: z.ZodNumber;
147
+ total: z.ZodNumber;
148
+ total_pages: z.ZodNumber;
149
+ }, z.core.$strip>;
150
+ }, z.core.$strip>;
151
+ export type SearchUnsplashMediaResponse = z.infer<typeof SearchUnsplashMediaResponseSchema>;
152
+ export declare const UnsplashDownloadLocationSchema: z.ZodString;
153
+ export declare const UseUnsplashMediaRequestSchema: z.ZodObject<{
154
+ download_location: z.ZodString;
155
+ }, z.core.$strip>;
156
+ export type UseUnsplashMediaRequest = z.infer<typeof UseUnsplashMediaRequestSchema>;
157
+ export declare const UseUnsplashMediaResponseSchema: z.ZodObject<{
158
+ code: z.ZodLiteral<0>;
159
+ message: z.ZodString;
160
+ data: z.ZodObject<{
161
+ reported: z.ZodBoolean;
162
+ }, z.core.$strip>;
163
+ }, z.core.$strip>;
164
+ export type UseUnsplashMediaResponse = z.infer<typeof UseUnsplashMediaResponseSchema>;
@@ -0,0 +1,45 @@
1
+ /**
2
+ * 搬家预置产品页在前端、Agent、CMS 三侧共用的标识。
3
+ *
4
+ * 这个 slug 同时决定了:结构规划页插入的页面路径、Agent 的确定性 CMS 接线和
5
+ * 专用 View 任务匹配依据、以及 CMS 置备详情页时拼出的页面标题。三处必须逐字
6
+ * 相等,差一个字符就会让页面与容器对不上,表现为产品列表页空白或整套预置被
7
+ * 跳过,因此集中在这里定义一次。
8
+ *
9
+ * 不要为它加环境变量覆盖:浏览器读不到服务端环境变量,一旦服务端改了值,前端
10
+ * 插入的路径不会跟随,链路会静默断开。
11
+ */
12
+ export declare const MIGRATION_PRODUCTS_SLUG = "products";
13
+ /** 结构规划页插入的页面路径,也是列表页最终的访问地址。 */
14
+ export declare const MIGRATION_PRODUCTS_ROUTE: "/products";
15
+ /** 详情路由前缀,等于 CMS 地址模板里的固定段。 */
16
+ export declare const MIGRATION_PRODUCTS_DETAIL_PREFIX: "/products";
17
+ /** CMS 置备详情页时自动生成的标题,详情路由的页面身份声明必须与之相等。 */
18
+ export declare const MIGRATION_PRODUCTS_CMS_DETAIL_PAGE_TITLE: "products detail";
19
+ /** Sitemap / DesignPlan / Workspace 共用的产品集合布局节点类型。 */
20
+ export declare const MIGRATION_PRODUCTS_VIEW_BLOCK_TYPE = "cms_collection_view";
21
+ /** 产品中心静态承载页上的列表布局节点。 */
22
+ export declare const MIGRATION_PRODUCTS_LIST_VIEW_VARIANT = "list";
23
+ /** 产品动态详情路由使用的详情布局节点。 */
24
+ export declare const MIGRATION_PRODUCTS_DETAIL_VIEW_VARIANT = "detail";
25
+ export type MigrationProductsViewVariant = typeof MIGRATION_PRODUCTS_LIST_VIEW_VARIANT | typeof MIGRATION_PRODUCTS_DETAIL_VIEW_VARIANT;
26
+ /**
27
+ * 搬家产品页是平台预置页面,但它最终出现在访客导航里,因此文案只能跟随站点
28
+ * 输出语种,不能跟随操作者控制台语种。站点语言目录比平台 UI 语言更宽;没有
29
+ * 明确译文时统一回退英文,避免中文控制台给其它语种站点写入中文导航。
30
+ */
31
+ export interface MigrationProductsLocalizedCopy {
32
+ readonly pageTitle: string;
33
+ /** 列表布局节点文案;保留 blockLabel 名称兼容已有调用。 */
34
+ readonly blockLabel: string;
35
+ readonly detailBlockLabel: string;
36
+ /** 承载页首屏区块名。产品中心是平台建的页,没有它整页就没有 h1。 */
37
+ readonly heroBlockLabel: string;
38
+ /** 详情页面包屑里的首页一级。 */
39
+ readonly homeLabel: string;
40
+ }
41
+ export declare function migrationProductsCopyForLocale(locale: string | null | undefined): MigrationProductsLocalizedCopy;
42
+ /** 系统已知预置标题;仅这些标题允许随站点 locale 自动改写。 */
43
+ export declare function isMigrationProductsPresetPageTitle(value: string): boolean;
44
+ /** 系统已知预置区块名;用户自定义区块名不得被 locale 同步覆盖。 */
45
+ export declare function isMigrationProductsPresetBlockLabel(value: string): boolean;
@@ -25,6 +25,8 @@
25
25
  */
26
26
  export declare const PAGE_SLUG_SEGMENT_PATTERN_SOURCE = "[a-z0-9]+(?:-[a-z0-9]+)*";
27
27
  export declare const PAGE_SLUG_PATTERN: RegExp;
28
+ export declare const PLATFORM_OWNED_PAGE_SLUGS: readonly ["/privacy", "/cookie-policy"];
29
+ export declare const PLATFORM_OWNED_ROUTE_FILE_PATHS: string[];
28
30
  export declare function isCanonicalPageSlug(value: unknown): value is string;
29
31
  /**
30
32
  * Best-effort canonicalization for ASCII-only semantic input. Returns `null`
@@ -0,0 +1,95 @@
1
+ import { z } from "zod";
2
+ /** Raw page-template identity; the contract intentionally preserves its value. */
3
+ export declare const PageTemplateIdSchema: z.ZodString;
4
+ export type PageTemplateId = z.infer<typeof PageTemplateIdSchema>;
5
+ /** Site-relative page path without URL query or fragment components. */
6
+ export declare const PageTemplatePagePathSchema: z.ZodString;
7
+ export type PageTemplatePagePath = z.infer<typeof PageTemplatePagePathSchema>;
8
+ export declare const ManagedPageTemplateRouteManifestV1Schema: z.ZodObject<{
9
+ schema_version: z.ZodLiteral<1>;
10
+ route_id: z.ZodString;
11
+ canonical_entry_file: z.ZodString;
12
+ route_key: z.ZodString;
13
+ default_template_id: z.ZodString;
14
+ templates: z.ZodArray<z.ZodObject<{
15
+ template_id: z.ZodString;
16
+ safe_name: z.ZodString;
17
+ entry_file: z.ZodString;
18
+ kind: z.ZodEnum<{
19
+ default: "default";
20
+ additional: "additional";
21
+ }>;
22
+ }, z.core.$strict>>;
23
+ }, z.core.$strict>;
24
+ export type ManagedPageTemplateRouteManifestV1 = z.infer<typeof ManagedPageTemplateRouteManifestV1Schema>;
25
+ export declare const PageTemplateCreateRequestSchema: z.ZodObject<{
26
+ page_path: z.ZodString;
27
+ template_id: z.ZodString;
28
+ instruction: z.ZodString;
29
+ }, z.core.$strict>;
30
+ export type PageTemplateCreateRequest = z.infer<typeof PageTemplateCreateRequestSchema>;
31
+ export declare const PageTemplatePromoteRequestSchema: z.ZodObject<{
32
+ page_path: z.ZodString;
33
+ template_id: z.ZodString;
34
+ exit_template_ids: z.ZodPipe<z.ZodDefault<z.ZodArray<z.ZodString>>, z.ZodTransform<string[], string[]>>;
35
+ }, z.core.$strict>;
36
+ export type PageTemplatePromoteRequest = z.infer<typeof PageTemplatePromoteRequestSchema>;
37
+ export declare const PageTemplateCleanupRequestSchema: z.ZodObject<{
38
+ page_path: z.ZodString;
39
+ template_ids: z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>;
40
+ }, z.core.$strict>;
41
+ export type PageTemplateCleanupRequest = z.infer<typeof PageTemplateCleanupRequestSchema>;
42
+ export declare const PageTemplateCreateResponseSchema: z.ZodObject<{
43
+ template_id: z.ZodString;
44
+ status: z.ZodLiteral<"created">;
45
+ ok: z.ZodLiteral<true>;
46
+ site_id: z.ZodUUID;
47
+ page_path: z.ZodString;
48
+ route_id: z.ZodString;
49
+ default_template_id: z.ZodString;
50
+ snapshot_id: z.ZodUUID;
51
+ route_mode: z.ZodLiteral<"delegated">;
52
+ }, z.core.$strict>;
53
+ export type PageTemplateCreateResponse = z.infer<typeof PageTemplateCreateResponseSchema>;
54
+ export declare const PageTemplatePromoteResponseSchema: z.ZodObject<{
55
+ promoted_template_id: z.ZodString;
56
+ deleted_template_ids: z.ZodArray<z.ZodString>;
57
+ status: z.ZodLiteral<"promoted">;
58
+ ok: z.ZodLiteral<true>;
59
+ site_id: z.ZodUUID;
60
+ page_path: z.ZodString;
61
+ route_id: z.ZodString;
62
+ default_template_id: z.ZodString;
63
+ snapshot_id: z.ZodUUID;
64
+ route_mode: z.ZodLiteral<"delegated">;
65
+ }, z.core.$strict>;
66
+ export type PageTemplatePromoteResponse = z.infer<typeof PageTemplatePromoteResponseSchema>;
67
+ export declare const PageTemplateCleanupResponseSchema: z.ZodObject<{
68
+ deleted_template_ids: z.ZodArray<z.ZodString>;
69
+ status: z.ZodLiteral<"cleaned">;
70
+ ok: z.ZodLiteral<true>;
71
+ site_id: z.ZodUUID;
72
+ page_path: z.ZodString;
73
+ route_id: z.ZodString;
74
+ default_template_id: z.ZodString;
75
+ snapshot_id: z.ZodUUID;
76
+ route_mode: z.ZodLiteral<"delegated">;
77
+ }, z.core.$strict>;
78
+ export type PageTemplateCleanupResponse = z.infer<typeof PageTemplateCleanupResponseSchema>;
79
+ export declare const PageTemplateErrorCodeSchema: z.ZodEnum<{
80
+ PAGE_TEMPLATE_REQUEST_INVALID: "PAGE_TEMPLATE_REQUEST_INVALID";
81
+ PAGE_TEMPLATE_PAGE_NOT_FOUND: "PAGE_TEMPLATE_PAGE_NOT_FOUND";
82
+ PAGE_TEMPLATE_NOT_FOUND: "PAGE_TEMPLATE_NOT_FOUND";
83
+ PAGE_TEMPLATE_ALREADY_EXISTS: "PAGE_TEMPLATE_ALREADY_EXISTS";
84
+ PAGE_TEMPLATE_ID_COLLISION: "PAGE_TEMPLATE_ID_COLLISION";
85
+ PAGE_TEMPLATE_MANAGED_SOURCE_INVALID: "PAGE_TEMPLATE_MANAGED_SOURCE_INVALID";
86
+ PAGE_TEMPLATE_DEFAULT_PROTECTED: "PAGE_TEMPLATE_DEFAULT_PROTECTED";
87
+ PAGE_TEMPLATE_DEFAULT_ALREADY_ACTIVE: "PAGE_TEMPLATE_DEFAULT_ALREADY_ACTIVE";
88
+ PAGE_TEMPLATE_ASSET_IN_USE: "PAGE_TEMPLATE_ASSET_IN_USE";
89
+ PAGE_TEMPLATE_SNAPSHOT_CONFLICT: "PAGE_TEMPLATE_SNAPSHOT_CONFLICT";
90
+ PAGE_TEMPLATE_DYNAMIC_ROUTE_UNSUPPORTED: "PAGE_TEMPLATE_DYNAMIC_ROUTE_UNSUPPORTED";
91
+ PAGE_TEMPLATE_SOURCE_UNSUPPORTED: "PAGE_TEMPLATE_SOURCE_UNSUPPORTED";
92
+ PAGE_TEMPLATE_GENERATION_FAILED: "PAGE_TEMPLATE_GENERATION_FAILED";
93
+ PAGE_TEMPLATE_PATCH_FAILED: "PAGE_TEMPLATE_PATCH_FAILED";
94
+ }>;
95
+ export type PageTemplateErrorCode = z.infer<typeof PageTemplateErrorCodeSchema>;
@@ -0,0 +1,227 @@
1
+ import { z } from "zod";
2
+ export declare const ProductSearchAppSlugSchema: z.ZodString;
3
+ export declare const ProductSearchFieldNameSchema: z.ZodString;
4
+ export declare const ProductSearchValueShapeSchema: z.ZodEnum<{
5
+ number: "number";
6
+ boolean: "boolean";
7
+ text: "text";
8
+ select: "select";
9
+ multi_select: "multi_select";
10
+ tags: "tags";
11
+ category_list: "category_list";
12
+ }>;
13
+ export declare const ProductSearchRouteIdSchema: z.ZodString;
14
+ export declare const ProductSearchFilterMetaSchema: z.ZodObject<{
15
+ minimum: z.ZodNumber;
16
+ maximum: z.ZodNumber;
17
+ step: z.ZodNumber;
18
+ }, z.core.$strict>;
19
+ export declare const ProductSearchPopularTermsSchema: z.ZodArray<z.ZodString>;
20
+ export declare const ProductSearchPopularTermsReadSchema: z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>;
21
+ export declare const ProductSearchAppConfigDraftSchema: z.ZodObject<{
22
+ filter_enabled: z.ZodBoolean;
23
+ selected_fields: z.ZodArray<z.ZodString>;
24
+ selected_card_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
25
+ popular_terms_enabled: z.ZodDefault<z.ZodBoolean>;
26
+ popular_terms: z.ZodOptional<z.ZodArray<z.ZodString>>;
27
+ }, z.core.$strict>;
28
+ export declare const ProductSearchDraftConfigSchema: z.ZodObject<{
29
+ app_slug: z.ZodString;
30
+ filter_enabled: z.ZodBoolean;
31
+ selected_fields: z.ZodArray<z.ZodString>;
32
+ selected_card_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
33
+ popular_terms_enabled: z.ZodDefault<z.ZodBoolean>;
34
+ popular_terms: z.ZodOptional<z.ZodArray<z.ZodString>>;
35
+ }, z.core.$strict>;
36
+ export declare const ProductSearchInteractionRequestSchema: z.ZodObject<{
37
+ kind: z.ZodLiteral<"product_search_confirmation">;
38
+ baseline_snapshot_id: z.ZodUUID;
39
+ target_route_id: z.ZodString;
40
+ applications: z.ZodArray<z.ZodObject<{
41
+ app_slug: z.ZodString;
42
+ label: z.ZodString;
43
+ popular_terms: z.ZodDefault<z.ZodArray<z.ZodString>>;
44
+ current_config: z.ZodDefault<z.ZodNullable<z.ZodObject<{
45
+ filter_enabled: z.ZodBoolean;
46
+ selected_fields: z.ZodArray<z.ZodString>;
47
+ selected_card_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
48
+ popular_terms_enabled: z.ZodDefault<z.ZodBoolean>;
49
+ popular_terms: z.ZodOptional<z.ZodArray<z.ZodString>>;
50
+ }, z.core.$strict>>>;
51
+ affected_routes: z.ZodDefault<z.ZodArray<z.ZodString>>;
52
+ fields: z.ZodArray<z.ZodObject<{
53
+ field_name: z.ZodString;
54
+ label: z.ZodString;
55
+ value_shape: z.ZodEnum<{
56
+ number: "number";
57
+ boolean: "boolean";
58
+ text: "text";
59
+ select: "select";
60
+ multi_select: "multi_select";
61
+ tags: "tags";
62
+ category_list: "category_list";
63
+ }>;
64
+ option_count: z.ZodOptional<z.ZodNumber>;
65
+ filter_meta: z.ZodOptional<z.ZodObject<{
66
+ minimum: z.ZodNumber;
67
+ maximum: z.ZodNumber;
68
+ step: z.ZodNumber;
69
+ }, z.core.$strict>>;
70
+ }, z.core.$strict>>;
71
+ }, z.core.$strict>>;
72
+ current_config: z.ZodOptional<z.ZodNullable<z.ZodObject<{
73
+ app_slug: z.ZodString;
74
+ filter_enabled: z.ZodBoolean;
75
+ selected_fields: z.ZodArray<z.ZodString>;
76
+ selected_card_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
77
+ popular_terms_enabled: z.ZodDefault<z.ZodBoolean>;
78
+ popular_terms: z.ZodOptional<z.ZodArray<z.ZodString>>;
79
+ }, z.core.$strict>>>;
80
+ affected_routes: z.ZodOptional<z.ZodArray<z.ZodString>>;
81
+ }, z.core.$strict>;
82
+ export declare const ProductSearchInteractionResponseSchema: z.ZodUnion<readonly [z.ZodObject<{
83
+ kind: z.ZodLiteral<"product_search_confirmation">;
84
+ action: z.ZodEnum<{
85
+ confirm: "confirm";
86
+ modify: "modify";
87
+ }>;
88
+ app_slug: z.ZodString;
89
+ filter_enabled: z.ZodBoolean;
90
+ popular_terms_enabled: z.ZodDefault<z.ZodBoolean>;
91
+ selected_fields: z.ZodArray<z.ZodString>;
92
+ selected_card_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
93
+ }, z.core.$strict>, z.ZodObject<{
94
+ kind: z.ZodLiteral<"product_search_confirmation">;
95
+ action: z.ZodLiteral<"cancel">;
96
+ }, z.core.$strict>]>;
97
+ export declare const ProductSearchRequestSchema: z.ZodObject<{
98
+ q: z.ZodString;
99
+ page: z.ZodNumber;
100
+ page_size: z.ZodUnion<readonly [z.ZodLiteral<9>, z.ZodLiteral<20>]>;
101
+ sort: z.ZodEnum<{
102
+ published_at_desc: "published_at_desc";
103
+ published_at_asc: "published_at_asc";
104
+ product_name_asc: "product_name_asc";
105
+ product_name_desc: "product_name_desc";
106
+ }>;
107
+ filters: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
108
+ values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
109
+ }, z.core.$strict>, z.ZodObject<{
110
+ min: z.ZodOptional<z.ZodNumber>;
111
+ max: z.ZodOptional<z.ZodNumber>;
112
+ include_unlabeled: z.ZodOptional<z.ZodBoolean>;
113
+ }, z.core.$strict>]>>;
114
+ display_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
115
+ missing_count_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
116
+ relaxation_count_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
117
+ facets: z.ZodArray<z.ZodObject<{
118
+ field: z.ZodString;
119
+ query: z.ZodString;
120
+ page: z.ZodNumber;
121
+ page_size: z.ZodLiteral<10>;
122
+ include_values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
123
+ }, z.core.$strict>>;
124
+ }, z.core.$strict>;
125
+ export declare const ProductSearchResponseSchema: z.ZodObject<{
126
+ items: z.ZodArray<z.ZodObject<{
127
+ id: z.ZodNumber;
128
+ thumbnail: z.ZodNullable<z.ZodString>;
129
+ title: z.ZodString;
130
+ summary: z.ZodString;
131
+ category: z.ZodNullable<z.ZodString>;
132
+ field_values: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>]>>>;
133
+ url: z.ZodString;
134
+ }, z.core.$strict>>;
135
+ page: z.ZodObject<{
136
+ total: z.ZodNumber;
137
+ page: z.ZodNumber;
138
+ page_size: z.ZodUnion<readonly [z.ZodLiteral<9>, z.ZodLiteral<20>]>;
139
+ }, z.core.$strict>;
140
+ facets: z.ZodArray<z.ZodObject<{
141
+ field: z.ZodString;
142
+ total: z.ZodNumber;
143
+ page: z.ZodNumber;
144
+ page_size: z.ZodLiteral<10>;
145
+ values: z.ZodArray<z.ZodObject<{
146
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
147
+ label: z.ZodString;
148
+ count: z.ZodNumber;
149
+ }, z.core.$strict>>;
150
+ selected_values: z.ZodArray<z.ZodObject<{
151
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
152
+ label: z.ZodString;
153
+ count: z.ZodNumber;
154
+ }, z.core.$strict>>;
155
+ }, z.core.$strict>>;
156
+ missing_counts: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodNumber>>;
157
+ relaxation_counts: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodNumber>>;
158
+ }, z.core.$strict>;
159
+ export declare const ProductSearchContractFixtureSchema: z.ZodObject<{
160
+ contract_version: z.ZodLiteral<1>;
161
+ request: z.ZodObject<{
162
+ q: z.ZodString;
163
+ page: z.ZodNumber;
164
+ page_size: z.ZodUnion<readonly [z.ZodLiteral<9>, z.ZodLiteral<20>]>;
165
+ sort: z.ZodEnum<{
166
+ published_at_desc: "published_at_desc";
167
+ published_at_asc: "published_at_asc";
168
+ product_name_asc: "product_name_asc";
169
+ product_name_desc: "product_name_desc";
170
+ }>;
171
+ filters: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodObject<{
172
+ values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
173
+ }, z.core.$strict>, z.ZodObject<{
174
+ min: z.ZodOptional<z.ZodNumber>;
175
+ max: z.ZodOptional<z.ZodNumber>;
176
+ include_unlabeled: z.ZodOptional<z.ZodBoolean>;
177
+ }, z.core.$strict>]>>;
178
+ display_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
179
+ missing_count_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
180
+ relaxation_count_fields: z.ZodDefault<z.ZodArray<z.ZodString>>;
181
+ facets: z.ZodArray<z.ZodObject<{
182
+ field: z.ZodString;
183
+ query: z.ZodString;
184
+ page: z.ZodNumber;
185
+ page_size: z.ZodLiteral<10>;
186
+ include_values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
187
+ }, z.core.$strict>>;
188
+ }, z.core.$strict>;
189
+ response: z.ZodObject<{
190
+ items: z.ZodArray<z.ZodObject<{
191
+ id: z.ZodNumber;
192
+ thumbnail: z.ZodNullable<z.ZodString>;
193
+ title: z.ZodString;
194
+ summary: z.ZodString;
195
+ category: z.ZodNullable<z.ZodString>;
196
+ field_values: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>]>>>;
197
+ url: z.ZodString;
198
+ }, z.core.$strict>>;
199
+ page: z.ZodObject<{
200
+ total: z.ZodNumber;
201
+ page: z.ZodNumber;
202
+ page_size: z.ZodUnion<readonly [z.ZodLiteral<9>, z.ZodLiteral<20>]>;
203
+ }, z.core.$strict>;
204
+ facets: z.ZodArray<z.ZodObject<{
205
+ field: z.ZodString;
206
+ total: z.ZodNumber;
207
+ page: z.ZodNumber;
208
+ page_size: z.ZodLiteral<10>;
209
+ values: z.ZodArray<z.ZodObject<{
210
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
211
+ label: z.ZodString;
212
+ count: z.ZodNumber;
213
+ }, z.core.$strict>>;
214
+ selected_values: z.ZodArray<z.ZodObject<{
215
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
216
+ label: z.ZodString;
217
+ count: z.ZodNumber;
218
+ }, z.core.$strict>>;
219
+ }, z.core.$strict>>;
220
+ missing_counts: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodNumber>>;
221
+ relaxation_counts: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodNumber>>;
222
+ }, z.core.$strict>;
223
+ }, z.core.$strict>;
224
+ export type ProductSearchInteractionRequest = z.infer<typeof ProductSearchInteractionRequestSchema>;
225
+ export type ProductSearchInteractionResponse = z.infer<typeof ProductSearchInteractionResponseSchema>;
226
+ export type ProductSearchRequest = z.infer<typeof ProductSearchRequestSchema>;
227
+ export type ProductSearchResponse = z.infer<typeof ProductSearchResponseSchema>;