@astryxdesign/cli 0.6.3-canary.ea2f048 → 0.6.3-canary.ebaebc4

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 (188) hide show
  1. package/README.md +2 -1
  2. package/api/build/build.type.d.mts +2 -2
  3. package/api/build/build.type.mjs +2 -2
  4. package/api/component/component.type.d.mts +6 -6
  5. package/api/component/component.type.mjs +19 -19
  6. package/api/discover/discover.type.d.mts +4 -4
  7. package/api/discover/discover.type.mjs +10 -10
  8. package/api/docs/_adapter.d.mts +37 -24
  9. package/api/docs/_adapter.mjs +169 -83
  10. package/api/docs/compiled-topics.test.mjs +78 -0
  11. package/api/docs/detail/detail.mjs +14 -63
  12. package/api/docs/detail/section/section.d.mts +1 -1
  13. package/api/docs/detail/section/section.mjs +44 -20
  14. package/api/docs/detail/section/section.test.mjs +41 -0
  15. package/api/docs/docs.d.mts +7 -2
  16. package/api/docs/docs.doc.mjs +27 -10
  17. package/api/docs/docs.mjs +16 -9
  18. package/api/docs/docs.test.mjs +6 -0
  19. package/api/docs/docs.type.d.mts +40 -3
  20. package/api/docs/docs.type.mjs +36 -8
  21. package/api/docs/index/index.d.mts +18 -0
  22. package/api/docs/index/index.mjs +32 -0
  23. package/api/docs/index/index.test.mjs +62 -0
  24. package/api/docs/integrationDocs.test.mjs +106 -0
  25. package/api/doctor/doctor.d.mts +48 -0
  26. package/api/doctor/doctor.mjs +232 -0
  27. package/api/doctor/doctor.test.mjs +196 -0
  28. package/api/hook/hook.type.d.mts +3 -3
  29. package/api/hook/hook.type.mjs +11 -11
  30. package/api/hook/list/list.d.mts +1 -1
  31. package/api/integration/add-contribution.mjs +5 -3
  32. package/api/integration/add-contribution.test.mjs +4 -4
  33. package/api/integration/integration-authoring.type.d.mts +1 -1
  34. package/api/integration/pack-check.mjs +49 -7
  35. package/api/integration/pack-check.test.mjs +249 -0
  36. package/api/search/search.d.mts +1 -1
  37. package/api/search/search.mjs +5 -5
  38. package/api/search/search.type.d.mts +2 -2
  39. package/api/search/search.type.mjs +1 -1
  40. package/api/swizzle/swizzle.type.d.mts +2 -2
  41. package/api/swizzle/swizzle.type.mjs +2 -2
  42. package/api/template/template.d.mts +1 -1
  43. package/api/template/template.type.d.mts +6 -6
  44. package/api/template/template.type.mjs +12 -12
  45. package/api/theme/build/build.mjs +20 -6
  46. package/api/theme/build/build.test.mjs +127 -0
  47. package/api/theme/palette/generate/generate.mjs +1 -1
  48. package/api/theme/palette/generate/generator.d.mts +10 -13
  49. package/api/theme/palette/generate/generator.mjs +7 -3
  50. package/api/theme/theme.type.d.mts +170 -11
  51. package/api/theme/theme.type.mjs +94 -27
  52. package/api/upgrade/_adapter.mjs +71 -5
  53. package/api/upgrade/project-context.test.mjs +272 -0
  54. package/api/upgrade/upgrade.doc.mjs +4 -3
  55. package/api/upgrade/upgrade.type.d.mts +5 -5
  56. package/api/upgrade/upgrade.type.mjs +11 -11
  57. package/assets/codemods/integration-discovery.mjs +40 -2
  58. package/assets/codemods/integration-discovery.test.mjs +58 -0
  59. package/assets/codemods/transforms/v0.3.0/__tests__/unwrap-authoring-factories.test.mjs +27 -5
  60. package/assets/codemods/transforms/v0.3.0/unwrap-authoring-factories.mjs +20 -5
  61. package/assets/docs/README.md +9 -0
  62. package/assets/docs/authoring.doc.mjs +14 -0
  63. package/assets/docs/cli-integrations.doc.mjs +86 -15
  64. package/assets/docs/styling-libraries.doc.mjs +1 -1
  65. package/assets/docs/working-with-ai.doc.mjs +1 -1
  66. package/authoring/_shared/contract.ts +22 -0
  67. package/authoring/codemod/codemod.doc.mjs +6 -1
  68. package/authoring/codemod/parse.d.mts +8 -8
  69. package/authoring/codemod/parse.mjs +8 -6
  70. package/authoring/config/parse.d.mts +13 -13
  71. package/authoring/config/parse.mjs +8 -8
  72. package/authoring/config/type.ts +3 -3
  73. package/authoring/debug/parse.d.mts +5 -5
  74. package/authoring/debug/parse.mjs +3 -3
  75. package/authoring/doctypes/_schema.d.mts +788 -23
  76. package/authoring/doctypes/_schema.mjs +492 -39
  77. package/authoring/doctypes/base/graph-fields.doc.d.mts +9 -0
  78. package/authoring/doctypes/base/graph-fields.doc.mjs +62 -0
  79. package/authoring/doctypes/base/type.ts +40 -0
  80. package/authoring/doctypes/command/command.doc.mjs +3 -2
  81. package/authoring/doctypes/command/parse.d.mts +2 -2
  82. package/authoring/doctypes/command/parse.mjs +1 -1
  83. package/authoring/doctypes/command/type.ts +3 -2
  84. package/authoring/doctypes/component/component.doc.mjs +6 -3
  85. package/authoring/doctypes/component/parse.d.mts +2 -2
  86. package/authoring/doctypes/component/parse.mjs +1 -1
  87. package/authoring/doctypes/component/type.ts +4 -3
  88. package/authoring/doctypes/enum/parse.d.mts +2 -2
  89. package/authoring/doctypes/enum/parse.mjs +1 -1
  90. package/authoring/doctypes/enum/type.ts +3 -1
  91. package/authoring/doctypes/function/function.doc.mjs +4 -0
  92. package/authoring/doctypes/function/parse.d.mts +2 -2
  93. package/authoring/doctypes/function/parse.mjs +1 -1
  94. package/authoring/doctypes/function/type.ts +6 -2
  95. package/authoring/doctypes/hook/hook.doc.mjs +4 -0
  96. package/authoring/doctypes/hook/parse.d.mts +2 -2
  97. package/authoring/doctypes/hook/parse.mjs +1 -1
  98. package/authoring/doctypes/hook/type.ts +3 -2
  99. package/authoring/doctypes/legacy.d.mts +8 -6
  100. package/authoring/doctypes/legacy.mjs +5 -4
  101. package/authoring/doctypes/load-contract.test.mjs +207 -0
  102. package/authoring/doctypes/namespace/namespace.doc.d.mts +9 -0
  103. package/authoring/doctypes/namespace/namespace.doc.mjs +132 -0
  104. package/authoring/doctypes/namespace/parse.d.mts +12 -0
  105. package/authoring/doctypes/namespace/parse.mjs +25 -0
  106. package/authoring/doctypes/namespace/parse.test.mjs +165 -0
  107. package/authoring/doctypes/namespace/type.ts +71 -0
  108. package/authoring/doctypes/parse.d.mts +20 -18
  109. package/authoring/doctypes/parse.mjs +16 -10
  110. package/authoring/doctypes/parse.test.mjs +77 -3
  111. package/authoring/doctypes/reference/parse.d.mts +2 -2
  112. package/authoring/doctypes/reference/parse.mjs +8 -5
  113. package/authoring/doctypes/reference/reference.doc.mjs +17 -4
  114. package/authoring/doctypes/reference/type.ts +51 -5
  115. package/authoring/doctypes/schema/parse.d.mts +2 -2
  116. package/authoring/doctypes/schema/parse.mjs +1 -1
  117. package/authoring/doctypes/schema/type.ts +3 -2
  118. package/authoring/doctypes/template/parse.d.mts +92 -1
  119. package/authoring/doctypes/template/parse.mjs +36 -2
  120. package/authoring/doctypes/template/parse.test.mjs +8 -2
  121. package/authoring/doctypes/template/template.doc.mjs +4 -0
  122. package/authoring/doctypes/template/type.ts +5 -2
  123. package/authoring/doctypes/types.ts +10 -9
  124. package/authoring/gap-report/parse.d.mts +10 -10
  125. package/authoring/gap-report/parse.mjs +6 -6
  126. package/authoring/gap-report/type.ts +1 -1
  127. package/authoring/identity/identity.doc.d.mts +9 -0
  128. package/authoring/identity/identity.doc.mjs +61 -0
  129. package/authoring/identity/type.ts +132 -0
  130. package/authoring/index.d.mts +1 -0
  131. package/authoring/index.d.ts +49 -17
  132. package/authoring/index.mjs +1 -0
  133. package/authoring/integration/integration.doc.mjs +13 -6
  134. package/authoring/integration/parse.d.mts +2 -2
  135. package/authoring/integration/parse.mjs +1 -1
  136. package/authoring/integration/parse.test.mjs +10 -1
  137. package/authoring/integration/schema.d.mts +6 -4
  138. package/authoring/integration/schema.mjs +9 -3
  139. package/authoring/integration/type.ts +23 -6
  140. package/authoring/shadcn/receipt.d.mts +6 -6
  141. package/clients/cli/commands/docs.doc.mjs +13 -3
  142. package/clients/cli/commands/docs.mjs +121 -21
  143. package/clients/cli/commands/docs.test.mjs +88 -0
  144. package/clients/cli/commands/integration-authoring.test.mjs +13 -9
  145. package/clients/cli/commands/theme-palette-generate.doc.mjs +8 -4
  146. package/clients/cli/commands/upgrade.doc.mjs +2 -2
  147. package/clients/cli/formatters/index.mjs +162 -1
  148. package/clients/cli/formatters/index.test.mjs +91 -0
  149. package/clients/cli/lib/manifest.mjs +7 -2
  150. package/foundation/config/project.mjs +21 -6
  151. package/foundation/discovery/authoring-self-docs.d.mts +69 -0
  152. package/foundation/discovery/authoring-self-docs.mjs +214 -0
  153. package/foundation/discovery/authoring-self-docs.test.mjs +154 -0
  154. package/foundation/discovery/component-discovery.d.mts +1 -1
  155. package/foundation/discovery/component-discovery.mjs +2 -1
  156. package/foundation/discovery/docs-discovery.d.mts +11 -4
  157. package/foundation/discovery/docs-discovery.mjs +208 -88
  158. package/foundation/discovery/docs-discovery.test.mjs +279 -13
  159. package/foundation/discovery/docs-output-budget.d.mts +28 -0
  160. package/foundation/discovery/docs-output-budget.mjs +50 -0
  161. package/foundation/discovery/docs-section-key.d.mts +98 -0
  162. package/foundation/discovery/docs-section-key.mjs +221 -0
  163. package/foundation/discovery/docs-section-key.test.mjs +224 -0
  164. package/foundation/discovery/template-adapter.mjs +2 -1
  165. package/foundation/discovery/theming-targets.test.mjs +4 -0
  166. package/foundation/doc-compiler/compile.d.mts +162 -0
  167. package/foundation/doc-compiler/compile.mjs +262 -0
  168. package/foundation/doc-compiler/doc-compiler.test.mjs +687 -0
  169. package/foundation/doc-compiler/ir.d.mts +9 -0
  170. package/foundation/doc-compiler/ir.mjs +287 -0
  171. package/foundation/doc-compiler/lenses.d.mts +33 -0
  172. package/foundation/doc-compiler/lenses.mjs +127 -0
  173. package/foundation/identity/provider-identity.d.mts +90 -0
  174. package/foundation/identity/provider-identity.mjs +320 -0
  175. package/foundation/identity/provider-identity.test.mjs +254 -0
  176. package/foundation/identity/providers.d.mts +7 -0
  177. package/foundation/identity/providers.mjs +16 -0
  178. package/foundation/integrations/autolink.mjs +12 -5
  179. package/foundation/integrations/integration-warnings.mjs +6 -0
  180. package/foundation/integrations/integrations.d.mts +46 -2
  181. package/foundation/integrations/integrations.mjs +167 -8
  182. package/foundation/integrations/integrations.test.mjs +384 -1
  183. package/foundation/integrations/provider-conflicts.test.mjs +125 -0
  184. package/foundation/integrations/validate-contributions.d.mts +2 -0
  185. package/foundation/integrations/validate-contributions.mjs +10 -0
  186. package/foundation/response/json-contract.test.mjs +46 -17
  187. package/foundation/response/response-types.doc.mjs +6 -1
  188. package/package.json +9 -11
@@ -1,16 +1,104 @@
1
1
  // @generated by scripts/sync-api-types.mjs from the JSDoc in authoring/**/*.mjs.
2
2
  // DO NOT EDIT — run `pnpm sync:api-types` to regenerate.
3
3
 
4
- /** New-format stamped component doc (`type: 'component'`). */
4
+ /** Every authored doc-kind discriminant accepted by parseDoc. */
5
+ export const AuthoredDocKindSchema: z.ZodEnum<{
6
+ function: "function";
7
+ component: "component";
8
+ generic: "generic";
9
+ page: "page";
10
+ block: "block";
11
+ schema: "schema";
12
+ command: "command";
13
+ enum: "enum";
14
+ namespace: "namespace";
15
+ }>;
16
+ export namespace AuthoredDocGraphFields {
17
+ let placement: z.ZodOptional<z.ZodObject<{
18
+ parent: z.ZodString;
19
+ slot: z.ZodOptional<z.ZodString>;
20
+ order: z.ZodOptional<z.ZodNumber>;
21
+ }, z.core.$strict>>;
22
+ let aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
23
+ let audience: z.ZodOptional<z.ZodEnum<{
24
+ public: "public";
25
+ internal: "internal";
26
+ }>>;
27
+ }
28
+ /** Runtime schema for every existing and V1 semantic content block. */
29
+ export const ReferenceContentBlockSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
30
+ type: z.ZodLiteral<"prose">;
31
+ text: z.ZodString;
32
+ }, z.core.$strict>, z.ZodObject<{
33
+ type: z.ZodLiteral<"heading">;
34
+ level: z.ZodUnion<readonly [z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>, z.ZodLiteral<6>]>;
35
+ text: z.ZodString;
36
+ }, z.core.$strict>, z.ZodObject<{
37
+ type: z.ZodLiteral<"code">;
38
+ lang: z.ZodString;
39
+ code: z.ZodString;
40
+ label: z.ZodOptional<z.ZodString>;
41
+ }, z.core.$strict>, z.ZodObject<{
42
+ type: z.ZodLiteral<"table">;
43
+ headers: z.ZodArray<z.ZodString>;
44
+ rows: z.ZodArray<z.ZodArray<z.ZodString>>;
45
+ }, z.core.$strict>, z.ZodObject<{
46
+ type: z.ZodLiteral<"list">;
47
+ style: z.ZodEnum<{
48
+ ordered: "ordered";
49
+ unordered: "unordered";
50
+ do: "do";
51
+ dont: "dont";
52
+ }>;
53
+ items: z.ZodArray<z.ZodString>;
54
+ }, z.core.$strict>, z.ZodObject<{
55
+ type: z.ZodLiteral<"token-ref">;
56
+ topic: z.ZodString;
57
+ section: z.ZodString;
58
+ }, z.core.$strict>, z.ZodObject<{
59
+ type: z.ZodLiteral<"workflow">;
60
+ title: z.ZodOptional<z.ZodString>;
61
+ steps: z.ZodArray<z.ZodObject<{
62
+ title: z.ZodString;
63
+ description: z.ZodOptional<z.ZodString>;
64
+ references: z.ZodOptional<z.ZodArray<z.ZodString>>;
65
+ }, z.core.$strict>>;
66
+ }, z.core.$strict>, z.ZodObject<{
67
+ type: z.ZodLiteral<"collection">;
68
+ title: z.ZodOptional<z.ZodString>;
69
+ source: z.ZodObject<{
70
+ slot: z.ZodString;
71
+ }, z.core.$strict>;
72
+ presentation: z.ZodOptional<z.ZodEnum<{
73
+ list: "list";
74
+ cards: "cards";
75
+ compact: "compact";
76
+ }>>;
77
+ whenEmpty: z.ZodOptional<z.ZodEnum<{
78
+ show: "show";
79
+ omit: "omit";
80
+ }>>;
81
+ }, z.core.$strict>, z.ZodObject<{
82
+ type: z.ZodLiteral<"reference">;
83
+ target: z.ZodString;
84
+ projection: z.ZodOptional<z.ZodObject<{
85
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
86
+ sections: z.ZodOptional<z.ZodArray<z.ZodString>>;
87
+ }, z.core.$strict>>;
88
+ presentation: z.ZodOptional<z.ZodEnum<{
89
+ compact: "compact";
90
+ summary: "summary";
91
+ full: "full";
92
+ }>>;
93
+ }, z.core.$strict>], "type">;
94
+ /**
95
+ * New-format stamped component doc (`type: 'component'`): one component's
96
+ * `props`, or the `components` a group doc documents together. These are the
97
+ * shapes the published ComponentDoc type allows, and the ones an unstamped doc
98
+ * may already take.
99
+ */
5
100
  export const ComponentDocKindSchema: z.ZodObject<{
6
101
  type: z.ZodLiteral<"component">;
7
- props: z.ZodArray<z.ZodObject<{
8
- name: z.ZodString;
9
- type: z.ZodString;
10
- description: z.ZodString;
11
- default: z.ZodOptional<z.ZodString>;
12
- required: z.ZodOptional<z.ZodBoolean>;
13
- }, z.core.$loose>>;
14
102
  theming: z.ZodOptional<z.ZodUnknown>;
15
103
  playground: z.ZodOptional<z.ZodUnknown>;
16
104
  examples: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
@@ -26,9 +114,28 @@ export const ComponentDocKindSchema: z.ZodObject<{
26
114
  relatedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
27
115
  hidden: z.ZodOptional<z.ZodBoolean>;
28
116
  isHiddenFromOverview: z.ZodOptional<z.ZodBoolean>;
117
+ placement: z.ZodOptional<z.ZodObject<{
118
+ parent: z.ZodString;
119
+ slot: z.ZodOptional<z.ZodString>;
120
+ order: z.ZodOptional<z.ZodNumber>;
121
+ }, z.core.$strict>>;
122
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
123
+ audience: z.ZodOptional<z.ZodEnum<{
124
+ public: "public";
125
+ internal: "internal";
126
+ }>>;
127
+ props: z.ZodOptional<z.ZodArray<z.ZodObject<{
128
+ name: z.ZodString;
129
+ type: z.ZodString;
130
+ description: z.ZodString;
131
+ default: z.ZodOptional<z.ZodString>;
132
+ required: z.ZodOptional<z.ZodBoolean>;
133
+ }, z.core.$loose>>>;
134
+ components: z.ZodOptional<z.ZodArray<z.ZodObject<{
135
+ name: z.ZodString;
136
+ }, z.core.$loose>>>;
29
137
  }, z.core.$loose>;
30
- /** New-format stamped function doc (`type: 'function'`) — hooks and CLI/API
31
- * functions alike (the discriminant and schema are shared). */
138
+ /** New-format stamped function doc (`type: 'function'`). */
32
139
  export const FunctionDocKindSchema: z.ZodObject<{
33
140
  type: z.ZodLiteral<"function">;
34
141
  params: z.ZodArray<z.ZodObject<{
@@ -55,12 +162,130 @@ export const FunctionDocKindSchema: z.ZodObject<{
55
162
  relatedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
56
163
  hidden: z.ZodOptional<z.ZodBoolean>;
57
164
  isHiddenFromOverview: z.ZodOptional<z.ZodBoolean>;
165
+ placement: z.ZodOptional<z.ZodObject<{
166
+ parent: z.ZodString;
167
+ slot: z.ZodOptional<z.ZodString>;
168
+ order: z.ZodOptional<z.ZodNumber>;
169
+ }, z.core.$strict>>;
170
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
171
+ audience: z.ZodOptional<z.ZodEnum<{
172
+ public: "public";
173
+ internal: "internal";
174
+ }>>;
58
175
  }, z.core.$loose>;
59
- /** New-format stamped generic reference/topic doc (`type: 'generic'`). */
176
+ /**
177
+ * A stamped function doc as it loads: as with components, `displayName` may be
178
+ * missing and `usage` passes through unchecked.
179
+ *
180
+ * @typedef {Omit<FunctionDoc, 'type' | 'displayName' | 'usage'>
181
+ * & {type: 'function', displayName?: string, usage?: unknown}} LoadedFunctionDoc
182
+ */
183
+ /**
184
+ * @typedef {import('../_shared/contract.js').Expect<
185
+ * import('../_shared/contract.js').MutuallyAssignable<
186
+ * import('../_shared/contract.js').NamedFields<z.infer<typeof FunctionDocKindSchema>>,
187
+ * import('../_shared/contract.js').NamedFields<LoadedFunctionDoc>
188
+ * >
189
+ * >} _FunctionDocDriftLock
190
+ */
191
+ /**
192
+ * Every HookDoc is a FunctionDoc, so the one function schema covers both.
193
+ *
194
+ * @typedef {import('../_shared/contract.js').Expect<[HookDoc] extends [FunctionDoc] ? true : false>} _HookDocIsFunctionDocLock
195
+ */
196
+ /**
197
+ * Stamped generic reference/topic doc (`type: 'generic'`). `title` and
198
+ * `sections` stay optional at this parser boundary for docs produced by the
199
+ * shipped v0.3.0 factory-removal codemod. When present, all rich fields and
200
+ * semantic blocks are validated.
201
+ */
60
202
  export const GenericDocKindSchema: z.ZodObject<{
61
203
  type: z.ZodLiteral<"generic">;
204
+ title: z.ZodOptional<z.ZodString>;
205
+ sections: z.ZodOptional<z.ZodArray<z.ZodObject<{
206
+ id: z.ZodOptional<z.ZodString>;
207
+ title: z.ZodString;
208
+ category: z.ZodOptional<z.ZodString>;
209
+ content: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
210
+ type: z.ZodLiteral<"prose">;
211
+ text: z.ZodString;
212
+ }, z.core.$strict>, z.ZodObject<{
213
+ type: z.ZodLiteral<"heading">;
214
+ level: z.ZodUnion<readonly [z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>, z.ZodLiteral<6>]>;
215
+ text: z.ZodString;
216
+ }, z.core.$strict>, z.ZodObject<{
217
+ type: z.ZodLiteral<"code">;
218
+ lang: z.ZodString;
219
+ code: z.ZodString;
220
+ label: z.ZodOptional<z.ZodString>;
221
+ }, z.core.$strict>, z.ZodObject<{
222
+ type: z.ZodLiteral<"table">;
223
+ headers: z.ZodArray<z.ZodString>;
224
+ rows: z.ZodArray<z.ZodArray<z.ZodString>>;
225
+ }, z.core.$strict>, z.ZodObject<{
226
+ type: z.ZodLiteral<"list">;
227
+ style: z.ZodEnum<{
228
+ ordered: "ordered";
229
+ unordered: "unordered";
230
+ do: "do";
231
+ dont: "dont";
232
+ }>;
233
+ items: z.ZodArray<z.ZodString>;
234
+ }, z.core.$strict>, z.ZodObject<{
235
+ type: z.ZodLiteral<"token-ref">;
236
+ topic: z.ZodString;
237
+ section: z.ZodString;
238
+ }, z.core.$strict>, z.ZodObject<{
239
+ type: z.ZodLiteral<"workflow">;
240
+ title: z.ZodOptional<z.ZodString>;
241
+ steps: z.ZodArray<z.ZodObject<{
242
+ title: z.ZodString;
243
+ description: z.ZodOptional<z.ZodString>;
244
+ references: z.ZodOptional<z.ZodArray<z.ZodString>>;
245
+ }, z.core.$strict>>;
246
+ }, z.core.$strict>, z.ZodObject<{
247
+ type: z.ZodLiteral<"collection">;
248
+ title: z.ZodOptional<z.ZodString>;
249
+ source: z.ZodObject<{
250
+ slot: z.ZodString;
251
+ }, z.core.$strict>;
252
+ presentation: z.ZodOptional<z.ZodEnum<{
253
+ list: "list";
254
+ cards: "cards";
255
+ compact: "compact";
256
+ }>>;
257
+ whenEmpty: z.ZodOptional<z.ZodEnum<{
258
+ show: "show";
259
+ omit: "omit";
260
+ }>>;
261
+ }, z.core.$strict>, z.ZodObject<{
262
+ type: z.ZodLiteral<"reference">;
263
+ target: z.ZodString;
264
+ projection: z.ZodOptional<z.ZodObject<{
265
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
266
+ sections: z.ZodOptional<z.ZodArray<z.ZodString>>;
267
+ }, z.core.$strict>>;
268
+ presentation: z.ZodOptional<z.ZodEnum<{
269
+ compact: "compact";
270
+ summary: "summary";
271
+ full: "full";
272
+ }>>;
273
+ }, z.core.$strict>], "type">>;
274
+ previewType: z.ZodOptional<z.ZodEnum<{
275
+ swatch: "swatch";
276
+ "shadow-box": "shadow-box";
277
+ "radius-box": "radius-box";
278
+ "spacing-bar": "spacing-bar";
279
+ "size-bar": "size-bar";
280
+ "border-line": "border-line";
281
+ "duration-bar": "duration-bar";
282
+ "easing-curve": "easing-curve";
283
+ "font-sample": "font-sample";
284
+ }>>;
285
+ }, z.core.$strict>>>;
62
286
  replaces: z.ZodOptional<z.ZodString>;
63
287
  extends: z.ZodOptional<z.ZodString>;
288
+ tokenCategory: z.ZodOptional<z.ZodString>;
64
289
  name: z.ZodString;
65
290
  displayName: z.ZodOptional<z.ZodString>;
66
291
  description: z.ZodOptional<z.ZodString>;
@@ -73,25 +298,115 @@ export const GenericDocKindSchema: z.ZodObject<{
73
298
  relatedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
74
299
  hidden: z.ZodOptional<z.ZodBoolean>;
75
300
  isHiddenFromOverview: z.ZodOptional<z.ZodBoolean>;
301
+ placement: z.ZodOptional<z.ZodObject<{
302
+ parent: z.ZodString;
303
+ slot: z.ZodOptional<z.ZodString>;
304
+ order: z.ZodOptional<z.ZodNumber>;
305
+ }, z.core.$strict>>;
306
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
307
+ audience: z.ZodOptional<z.ZodEnum<{
308
+ public: "public";
309
+ internal: "internal";
310
+ }>>;
76
311
  }, z.core.$loose>;
77
- /** New stamped schema doc (`type: 'schema'`) — documents an authored object. */
312
+ /** New stamped schema doc (`type: 'schema'`). */
78
313
  export const SchemaDocKindSchema: z.ZodObject<{
79
314
  type: z.ZodLiteral<"schema">;
80
315
  name: z.ZodString;
81
316
  displayName: z.ZodString;
82
317
  description: z.ZodString;
83
318
  namespace: z.ZodOptional<z.ZodString>;
84
- aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
85
319
  appliesTo: z.ZodOptional<z.ZodString>;
86
- fields: z.ZodArray<z.ZodType<import("./schema/type").SchemaFieldDoc, any, z.core.$ZodTypeInternals<import("./schema/type").SchemaFieldDoc, any>>>;
320
+ fields: z.ZodArray<z.ZodType<import("./schema/type.js").SchemaFieldDoc, any, z.core.$ZodTypeInternals<import("./schema/type.js").SchemaFieldDoc, any>>>;
87
321
  examples: z.ZodOptional<z.ZodArray<z.ZodObject<{
88
322
  label: z.ZodOptional<z.ZodString>;
89
323
  code: z.ZodString;
90
324
  }, z.core.$loose>>>;
91
- notes: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
325
+ notes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
326
+ type: z.ZodLiteral<"prose">;
327
+ text: z.ZodString;
328
+ }, z.core.$strict>, z.ZodObject<{
329
+ type: z.ZodLiteral<"heading">;
330
+ level: z.ZodUnion<readonly [z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>, z.ZodLiteral<6>]>;
331
+ text: z.ZodString;
332
+ }, z.core.$strict>, z.ZodObject<{
333
+ type: z.ZodLiteral<"code">;
334
+ lang: z.ZodString;
335
+ code: z.ZodString;
336
+ label: z.ZodOptional<z.ZodString>;
337
+ }, z.core.$strict>, z.ZodObject<{
338
+ type: z.ZodLiteral<"table">;
339
+ headers: z.ZodArray<z.ZodString>;
340
+ rows: z.ZodArray<z.ZodArray<z.ZodString>>;
341
+ }, z.core.$strict>, z.ZodObject<{
342
+ type: z.ZodLiteral<"list">;
343
+ style: z.ZodEnum<{
344
+ ordered: "ordered";
345
+ unordered: "unordered";
346
+ do: "do";
347
+ dont: "dont";
348
+ }>;
349
+ items: z.ZodArray<z.ZodString>;
350
+ }, z.core.$strict>, z.ZodObject<{
351
+ type: z.ZodLiteral<"token-ref">;
352
+ topic: z.ZodString;
353
+ section: z.ZodString;
354
+ }, z.core.$strict>, z.ZodObject<{
355
+ type: z.ZodLiteral<"workflow">;
356
+ title: z.ZodOptional<z.ZodString>;
357
+ steps: z.ZodArray<z.ZodObject<{
358
+ title: z.ZodString;
359
+ description: z.ZodOptional<z.ZodString>;
360
+ references: z.ZodOptional<z.ZodArray<z.ZodString>>;
361
+ }, z.core.$strict>>;
362
+ }, z.core.$strict>, z.ZodObject<{
363
+ type: z.ZodLiteral<"collection">;
364
+ title: z.ZodOptional<z.ZodString>;
365
+ source: z.ZodObject<{
366
+ slot: z.ZodString;
367
+ }, z.core.$strict>;
368
+ presentation: z.ZodOptional<z.ZodEnum<{
369
+ list: "list";
370
+ cards: "cards";
371
+ compact: "compact";
372
+ }>>;
373
+ whenEmpty: z.ZodOptional<z.ZodEnum<{
374
+ show: "show";
375
+ omit: "omit";
376
+ }>>;
377
+ }, z.core.$strict>, z.ZodObject<{
378
+ type: z.ZodLiteral<"reference">;
379
+ target: z.ZodString;
380
+ projection: z.ZodOptional<z.ZodObject<{
381
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
382
+ sections: z.ZodOptional<z.ZodArray<z.ZodString>>;
383
+ }, z.core.$strict>>;
384
+ presentation: z.ZodOptional<z.ZodEnum<{
385
+ compact: "compact";
386
+ summary: "summary";
387
+ full: "full";
388
+ }>>;
389
+ }, z.core.$strict>], "type">>>;
390
+ placement: z.ZodOptional<z.ZodObject<{
391
+ parent: z.ZodString;
392
+ slot: z.ZodOptional<z.ZodString>;
393
+ order: z.ZodOptional<z.ZodNumber>;
394
+ }, z.core.$strict>>;
395
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
396
+ audience: z.ZodOptional<z.ZodEnum<{
397
+ public: "public";
398
+ internal: "internal";
399
+ }>>;
92
400
  }, z.core.$loose>;
93
- /** New stamped command doc (`type: 'command'`) — a function's terminal binding;
94
- * references a FunctionDoc via `fn`. */
401
+ /**
402
+ * @typedef {import('../_shared/contract.js').Expect<
403
+ * import('../_shared/contract.js').MutuallyAssignable<
404
+ * import('../_shared/contract.js').NamedFields<z.infer<typeof SchemaDocKindSchema>>,
405
+ * import('../_shared/contract.js').NamedFields<SchemaDoc & {type: 'schema'}>
406
+ * >
407
+ * >} _SchemaDocDriftLock
408
+ */
409
+ /** New stamped command doc (`type: 'command'`). */
95
410
  export const CommandDocKindSchema: z.ZodObject<{
96
411
  type: z.ZodLiteral<"command">;
97
412
  name: z.ZodString;
@@ -99,7 +414,6 @@ export const CommandDocKindSchema: z.ZodObject<{
99
414
  summary: z.ZodString;
100
415
  description: z.ZodOptional<z.ZodString>;
101
416
  namespace: z.ZodOptional<z.ZodString>;
102
- aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
103
417
  fn: z.ZodOptional<z.ZodString>;
104
418
  args: z.ZodOptional<z.ZodArray<z.ZodObject<{
105
419
  name: z.ZodString;
@@ -127,24 +441,235 @@ export const CommandDocKindSchema: z.ZodObject<{
127
441
  when: z.ZodString;
128
442
  }, z.core.$loose>>>;
129
443
  related: z.ZodOptional<z.ZodArray<z.ZodString>>;
130
- notes: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
444
+ notes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
445
+ type: z.ZodLiteral<"prose">;
446
+ text: z.ZodString;
447
+ }, z.core.$strict>, z.ZodObject<{
448
+ type: z.ZodLiteral<"heading">;
449
+ level: z.ZodUnion<readonly [z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>, z.ZodLiteral<6>]>;
450
+ text: z.ZodString;
451
+ }, z.core.$strict>, z.ZodObject<{
452
+ type: z.ZodLiteral<"code">;
453
+ lang: z.ZodString;
454
+ code: z.ZodString;
455
+ label: z.ZodOptional<z.ZodString>;
456
+ }, z.core.$strict>, z.ZodObject<{
457
+ type: z.ZodLiteral<"table">;
458
+ headers: z.ZodArray<z.ZodString>;
459
+ rows: z.ZodArray<z.ZodArray<z.ZodString>>;
460
+ }, z.core.$strict>, z.ZodObject<{
461
+ type: z.ZodLiteral<"list">;
462
+ style: z.ZodEnum<{
463
+ ordered: "ordered";
464
+ unordered: "unordered";
465
+ do: "do";
466
+ dont: "dont";
467
+ }>;
468
+ items: z.ZodArray<z.ZodString>;
469
+ }, z.core.$strict>, z.ZodObject<{
470
+ type: z.ZodLiteral<"token-ref">;
471
+ topic: z.ZodString;
472
+ section: z.ZodString;
473
+ }, z.core.$strict>, z.ZodObject<{
474
+ type: z.ZodLiteral<"workflow">;
475
+ title: z.ZodOptional<z.ZodString>;
476
+ steps: z.ZodArray<z.ZodObject<{
477
+ title: z.ZodString;
478
+ description: z.ZodOptional<z.ZodString>;
479
+ references: z.ZodOptional<z.ZodArray<z.ZodString>>;
480
+ }, z.core.$strict>>;
481
+ }, z.core.$strict>, z.ZodObject<{
482
+ type: z.ZodLiteral<"collection">;
483
+ title: z.ZodOptional<z.ZodString>;
484
+ source: z.ZodObject<{
485
+ slot: z.ZodString;
486
+ }, z.core.$strict>;
487
+ presentation: z.ZodOptional<z.ZodEnum<{
488
+ list: "list";
489
+ cards: "cards";
490
+ compact: "compact";
491
+ }>>;
492
+ whenEmpty: z.ZodOptional<z.ZodEnum<{
493
+ show: "show";
494
+ omit: "omit";
495
+ }>>;
496
+ }, z.core.$strict>, z.ZodObject<{
497
+ type: z.ZodLiteral<"reference">;
498
+ target: z.ZodString;
499
+ projection: z.ZodOptional<z.ZodObject<{
500
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
501
+ sections: z.ZodOptional<z.ZodArray<z.ZodString>>;
502
+ }, z.core.$strict>>;
503
+ presentation: z.ZodOptional<z.ZodEnum<{
504
+ compact: "compact";
505
+ summary: "summary";
506
+ full: "full";
507
+ }>>;
508
+ }, z.core.$strict>], "type">>>;
509
+ placement: z.ZodOptional<z.ZodObject<{
510
+ parent: z.ZodString;
511
+ slot: z.ZodOptional<z.ZodString>;
512
+ order: z.ZodOptional<z.ZodNumber>;
513
+ }, z.core.$strict>>;
514
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
515
+ audience: z.ZodOptional<z.ZodEnum<{
516
+ public: "public";
517
+ internal: "internal";
518
+ }>>;
131
519
  }, z.core.$loose>;
132
- /** New stamped enum doc (`type: 'enum'`) — a closed vocabulary (error codes,
133
- * response-type discriminants). */
520
+ /**
521
+ * @typedef {import('../_shared/contract.js').Expect<
522
+ * import('../_shared/contract.js').MutuallyAssignable<
523
+ * import('../_shared/contract.js').NamedFields<z.infer<typeof CommandDocKindSchema>>,
524
+ * import('../_shared/contract.js').NamedFields<CommandDoc & {type: 'command'}>
525
+ * >
526
+ * >} _CommandDocDriftLock
527
+ */
528
+ /** New stamped enum doc (`type: 'enum'`). */
134
529
  export const EnumDocKindSchema: z.ZodObject<{
135
530
  type: z.ZodLiteral<"enum">;
136
531
  name: z.ZodString;
137
532
  displayName: z.ZodString;
138
533
  description: z.ZodString;
139
534
  namespace: z.ZodOptional<z.ZodString>;
140
- aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
141
535
  members: z.ZodArray<z.ZodObject<{
142
536
  value: z.ZodString;
143
537
  description: z.ZodString;
144
538
  deprecated: z.ZodOptional<z.ZodString>;
145
539
  }, z.core.$loose>>;
540
+ placement: z.ZodOptional<z.ZodObject<{
541
+ parent: z.ZodString;
542
+ slot: z.ZodOptional<z.ZodString>;
543
+ order: z.ZodOptional<z.ZodNumber>;
544
+ }, z.core.$strict>>;
545
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
546
+ audience: z.ZodOptional<z.ZodEnum<{
547
+ public: "public";
548
+ internal: "internal";
549
+ }>>;
146
550
  }, z.core.$loose>;
147
- /** The permissive legacy union (sub-component first, then hook, multi, single). */
551
+ /** The one new authored doctype: a hierarchy and layout owner. */
552
+ export const NamespaceDocKindSchema: z.ZodObject<{
553
+ type: z.ZodLiteral<"namespace">;
554
+ name: z.ZodString;
555
+ title: z.ZodString;
556
+ summary: z.ZodString;
557
+ keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
558
+ slots: z.ZodRecord<z.ZodString, z.ZodObject<{
559
+ title: z.ZodString;
560
+ accepts: z.ZodObject<{
561
+ kinds: z.ZodArray<z.ZodEnum<{
562
+ function: "function";
563
+ component: "component";
564
+ generic: "generic";
565
+ page: "page";
566
+ block: "block";
567
+ schema: "schema";
568
+ command: "command";
569
+ enum: "enum";
570
+ namespace: "namespace";
571
+ }>>;
572
+ providers: z.ZodOptional<z.ZodEnum<{
573
+ same: "same";
574
+ configured: "configured";
575
+ }>>;
576
+ }, z.core.$strict>;
577
+ }, z.core.$strict>>;
578
+ adopts: z.ZodOptional<z.ZodArray<z.ZodObject<{
579
+ source: z.ZodObject<{
580
+ group: z.ZodString;
581
+ kinds: z.ZodOptional<z.ZodArray<z.ZodEnum<{
582
+ function: "function";
583
+ component: "component";
584
+ generic: "generic";
585
+ page: "page";
586
+ block: "block";
587
+ schema: "schema";
588
+ command: "command";
589
+ enum: "enum";
590
+ namespace: "namespace";
591
+ }>>>;
592
+ }, z.core.$strict>;
593
+ into: z.ZodString;
594
+ groupBy: z.ZodOptional<z.ZodLiteral<"kind">>;
595
+ }, z.core.$strict>>>;
596
+ blocks: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
597
+ type: z.ZodLiteral<"prose">;
598
+ text: z.ZodString;
599
+ }, z.core.$strict>, z.ZodObject<{
600
+ type: z.ZodLiteral<"heading">;
601
+ level: z.ZodUnion<readonly [z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>, z.ZodLiteral<6>]>;
602
+ text: z.ZodString;
603
+ }, z.core.$strict>, z.ZodObject<{
604
+ type: z.ZodLiteral<"code">;
605
+ lang: z.ZodString;
606
+ code: z.ZodString;
607
+ label: z.ZodOptional<z.ZodString>;
608
+ }, z.core.$strict>, z.ZodObject<{
609
+ type: z.ZodLiteral<"table">;
610
+ headers: z.ZodArray<z.ZodString>;
611
+ rows: z.ZodArray<z.ZodArray<z.ZodString>>;
612
+ }, z.core.$strict>, z.ZodObject<{
613
+ type: z.ZodLiteral<"list">;
614
+ style: z.ZodEnum<{
615
+ ordered: "ordered";
616
+ unordered: "unordered";
617
+ do: "do";
618
+ dont: "dont";
619
+ }>;
620
+ items: z.ZodArray<z.ZodString>;
621
+ }, z.core.$strict>, z.ZodObject<{
622
+ type: z.ZodLiteral<"token-ref">;
623
+ topic: z.ZodString;
624
+ section: z.ZodString;
625
+ }, z.core.$strict>, z.ZodObject<{
626
+ type: z.ZodLiteral<"workflow">;
627
+ title: z.ZodOptional<z.ZodString>;
628
+ steps: z.ZodArray<z.ZodObject<{
629
+ title: z.ZodString;
630
+ description: z.ZodOptional<z.ZodString>;
631
+ references: z.ZodOptional<z.ZodArray<z.ZodString>>;
632
+ }, z.core.$strict>>;
633
+ }, z.core.$strict>, z.ZodObject<{
634
+ type: z.ZodLiteral<"collection">;
635
+ title: z.ZodOptional<z.ZodString>;
636
+ source: z.ZodObject<{
637
+ slot: z.ZodString;
638
+ }, z.core.$strict>;
639
+ presentation: z.ZodOptional<z.ZodEnum<{
640
+ list: "list";
641
+ cards: "cards";
642
+ compact: "compact";
643
+ }>>;
644
+ whenEmpty: z.ZodOptional<z.ZodEnum<{
645
+ show: "show";
646
+ omit: "omit";
647
+ }>>;
648
+ }, z.core.$strict>, z.ZodObject<{
649
+ type: z.ZodLiteral<"reference">;
650
+ target: z.ZodString;
651
+ projection: z.ZodOptional<z.ZodObject<{
652
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
653
+ sections: z.ZodOptional<z.ZodArray<z.ZodString>>;
654
+ }, z.core.$strict>>;
655
+ presentation: z.ZodOptional<z.ZodEnum<{
656
+ compact: "compact";
657
+ summary: "summary";
658
+ full: "full";
659
+ }>>;
660
+ }, z.core.$strict>], "type">>>;
661
+ placement: z.ZodOptional<z.ZodObject<{
662
+ parent: z.ZodString;
663
+ slot: z.ZodOptional<z.ZodString>;
664
+ order: z.ZodOptional<z.ZodNumber>;
665
+ }, z.core.$strict>>;
666
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
667
+ audience: z.ZodOptional<z.ZodEnum<{
668
+ public: "public";
669
+ internal: "internal";
670
+ }>>;
671
+ }, z.core.$strict>;
672
+ /** The permissive legacy union (sub-component, hook, multi, single, then reference). */
148
673
  export const LegacyDocSchema: z.ZodUnion<readonly [z.ZodObject<{
149
674
  name: z.ZodString;
150
675
  displayName: z.ZodOptional<z.ZodString>;
@@ -163,6 +688,16 @@ export const LegacyDocSchema: z.ZodUnion<readonly [z.ZodObject<{
163
688
  relatedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
164
689
  relatedComponents: z.ZodOptional<z.ZodArray<z.ZodString>>;
165
690
  relatedHooks: z.ZodOptional<z.ZodArray<z.ZodString>>;
691
+ placement: z.ZodOptional<z.ZodObject<{
692
+ parent: z.ZodString;
693
+ slot: z.ZodOptional<z.ZodString>;
694
+ order: z.ZodOptional<z.ZodNumber>;
695
+ }, z.core.$strict>>;
696
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
697
+ audience: z.ZodOptional<z.ZodEnum<{
698
+ public: "public";
699
+ internal: "internal";
700
+ }>>;
166
701
  subComponentOf: z.ZodString;
167
702
  description: z.ZodString;
168
703
  props: z.ZodArray<z.ZodObject<{
@@ -191,6 +726,16 @@ export const LegacyDocSchema: z.ZodUnion<readonly [z.ZodObject<{
191
726
  relatedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
192
727
  relatedComponents: z.ZodOptional<z.ZodArray<z.ZodString>>;
193
728
  relatedHooks: z.ZodOptional<z.ZodArray<z.ZodString>>;
729
+ placement: z.ZodOptional<z.ZodObject<{
730
+ parent: z.ZodString;
731
+ slot: z.ZodOptional<z.ZodString>;
732
+ order: z.ZodOptional<z.ZodNumber>;
733
+ }, z.core.$strict>>;
734
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
735
+ audience: z.ZodOptional<z.ZodEnum<{
736
+ public: "public";
737
+ internal: "internal";
738
+ }>>;
194
739
  params: z.ZodArray<z.ZodObject<{
195
740
  name: z.ZodString;
196
741
  type: z.ZodString;
@@ -222,6 +767,16 @@ export const LegacyDocSchema: z.ZodUnion<readonly [z.ZodObject<{
222
767
  relatedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
223
768
  relatedComponents: z.ZodOptional<z.ZodArray<z.ZodString>>;
224
769
  relatedHooks: z.ZodOptional<z.ZodArray<z.ZodString>>;
770
+ placement: z.ZodOptional<z.ZodObject<{
771
+ parent: z.ZodString;
772
+ slot: z.ZodOptional<z.ZodString>;
773
+ order: z.ZodOptional<z.ZodNumber>;
774
+ }, z.core.$strict>>;
775
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
776
+ audience: z.ZodOptional<z.ZodEnum<{
777
+ public: "public";
778
+ internal: "internal";
779
+ }>>;
225
780
  components: z.ZodArray<z.ZodUnknown>;
226
781
  }, z.core.$loose>, z.ZodObject<{
227
782
  name: z.ZodString;
@@ -242,6 +797,16 @@ export const LegacyDocSchema: z.ZodUnion<readonly [z.ZodObject<{
242
797
  relatedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
243
798
  relatedComponents: z.ZodOptional<z.ZodArray<z.ZodString>>;
244
799
  relatedHooks: z.ZodOptional<z.ZodArray<z.ZodString>>;
800
+ placement: z.ZodOptional<z.ZodObject<{
801
+ parent: z.ZodString;
802
+ slot: z.ZodOptional<z.ZodString>;
803
+ order: z.ZodOptional<z.ZodNumber>;
804
+ }, z.core.$strict>>;
805
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
806
+ audience: z.ZodOptional<z.ZodEnum<{
807
+ public: "public";
808
+ internal: "internal";
809
+ }>>;
245
810
  props: z.ZodArray<z.ZodObject<{
246
811
  name: z.ZodString;
247
812
  type: z.ZodString;
@@ -249,5 +814,205 @@ export const LegacyDocSchema: z.ZodUnion<readonly [z.ZodObject<{
249
814
  default: z.ZodOptional<z.ZodString>;
250
815
  required: z.ZodOptional<z.ZodBoolean>;
251
816
  }, z.core.$loose>>;
817
+ }, z.core.$loose>, z.ZodObject<{
818
+ name: z.ZodString;
819
+ displayName: z.ZodOptional<z.ZodString>;
820
+ group: z.ZodOptional<z.ZodString>;
821
+ category: z.ZodOptional<z.ZodString>;
822
+ keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
823
+ isHiddenFromOverview: z.ZodOptional<z.ZodBoolean>;
824
+ hidden: z.ZodOptional<z.ZodBoolean>;
825
+ hiddenComponents: z.ZodOptional<z.ZodArray<z.ZodString>>;
826
+ usage: z.ZodOptional<z.ZodUnknown>;
827
+ playground: z.ZodOptional<z.ZodUnknown>;
828
+ theming: z.ZodOptional<z.ZodUnknown>;
829
+ examples: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
830
+ showcase: z.ZodOptional<z.ZodUnknown>;
831
+ parent: z.ZodOptional<z.ZodString>;
832
+ relatedDocs: z.ZodOptional<z.ZodArray<z.ZodString>>;
833
+ relatedComponents: z.ZodOptional<z.ZodArray<z.ZodString>>;
834
+ relatedHooks: z.ZodOptional<z.ZodArray<z.ZodString>>;
835
+ placement: z.ZodOptional<z.ZodObject<{
836
+ parent: z.ZodString;
837
+ slot: z.ZodOptional<z.ZodString>;
838
+ order: z.ZodOptional<z.ZodNumber>;
839
+ }, z.core.$strict>>;
840
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
841
+ audience: z.ZodOptional<z.ZodEnum<{
842
+ public: "public";
843
+ internal: "internal";
844
+ }>>;
845
+ title: z.ZodString;
846
+ description: z.ZodString;
847
+ sections: z.ZodArray<z.ZodObject<{
848
+ id: z.ZodOptional<z.ZodString>;
849
+ title: z.ZodString;
850
+ category: z.ZodOptional<z.ZodString>;
851
+ content: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
852
+ type: z.ZodLiteral<"prose">;
853
+ text: z.ZodString;
854
+ }, z.core.$strict>, z.ZodObject<{
855
+ type: z.ZodLiteral<"heading">;
856
+ level: z.ZodUnion<readonly [z.ZodLiteral<3>, z.ZodLiteral<4>, z.ZodLiteral<5>, z.ZodLiteral<6>]>;
857
+ text: z.ZodString;
858
+ }, z.core.$strict>, z.ZodObject<{
859
+ type: z.ZodLiteral<"code">;
860
+ lang: z.ZodString;
861
+ code: z.ZodString;
862
+ label: z.ZodOptional<z.ZodString>;
863
+ }, z.core.$strict>, z.ZodObject<{
864
+ type: z.ZodLiteral<"table">;
865
+ headers: z.ZodArray<z.ZodString>;
866
+ rows: z.ZodArray<z.ZodArray<z.ZodString>>;
867
+ }, z.core.$strict>, z.ZodObject<{
868
+ type: z.ZodLiteral<"list">;
869
+ style: z.ZodEnum<{
870
+ ordered: "ordered";
871
+ unordered: "unordered";
872
+ do: "do";
873
+ dont: "dont";
874
+ }>;
875
+ items: z.ZodArray<z.ZodString>;
876
+ }, z.core.$strict>, z.ZodObject<{
877
+ type: z.ZodLiteral<"token-ref">;
878
+ topic: z.ZodString;
879
+ section: z.ZodString;
880
+ }, z.core.$strict>, z.ZodObject<{
881
+ type: z.ZodLiteral<"workflow">;
882
+ title: z.ZodOptional<z.ZodString>;
883
+ steps: z.ZodArray<z.ZodObject<{
884
+ title: z.ZodString;
885
+ description: z.ZodOptional<z.ZodString>;
886
+ references: z.ZodOptional<z.ZodArray<z.ZodString>>;
887
+ }, z.core.$strict>>;
888
+ }, z.core.$strict>, z.ZodObject<{
889
+ type: z.ZodLiteral<"collection">;
890
+ title: z.ZodOptional<z.ZodString>;
891
+ source: z.ZodObject<{
892
+ slot: z.ZodString;
893
+ }, z.core.$strict>;
894
+ presentation: z.ZodOptional<z.ZodEnum<{
895
+ list: "list";
896
+ cards: "cards";
897
+ compact: "compact";
898
+ }>>;
899
+ whenEmpty: z.ZodOptional<z.ZodEnum<{
900
+ show: "show";
901
+ omit: "omit";
902
+ }>>;
903
+ }, z.core.$strict>, z.ZodObject<{
904
+ type: z.ZodLiteral<"reference">;
905
+ target: z.ZodString;
906
+ projection: z.ZodOptional<z.ZodObject<{
907
+ fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
908
+ sections: z.ZodOptional<z.ZodArray<z.ZodString>>;
909
+ }, z.core.$strict>>;
910
+ presentation: z.ZodOptional<z.ZodEnum<{
911
+ compact: "compact";
912
+ summary: "summary";
913
+ full: "full";
914
+ }>>;
915
+ }, z.core.$strict>], "type">>;
916
+ previewType: z.ZodOptional<z.ZodEnum<{
917
+ swatch: "swatch";
918
+ "shadow-box": "shadow-box";
919
+ "radius-box": "radius-box";
920
+ "spacing-bar": "spacing-bar";
921
+ "size-bar": "size-bar";
922
+ "border-line": "border-line";
923
+ "duration-bar": "duration-bar";
924
+ "easing-curve": "easing-curve";
925
+ "font-sample": "font-sample";
926
+ }>>;
927
+ }, z.core.$strict>>;
928
+ replaces: z.ZodOptional<z.ZodString>;
929
+ extends: z.ZodOptional<z.ZodString>;
930
+ tokenCategory: z.ZodOptional<z.ZodString>;
252
931
  }, z.core.$loose>]>;
932
+ export type AuthoredDocGraphFieldsType = import("./base/type.js").AuthoredDocGraphFields;
933
+ export type AuthoredDocKind = import("./base/type.js").AuthoredDocKind;
934
+ export type NamespaceDoc = import("./namespace/type.js").NamespaceDoc;
935
+ export type ReferenceContentBlock = import("./reference/type.js").ReferenceContentBlock;
936
+ export type ReferenceDoc = import("./reference/type.js").ReferenceDoc;
937
+ export type SingleComponentDoc = import("./component/type.js").SingleComponentDoc;
938
+ export type ComponentPropDoc = import("./base/type.js").ComponentPropDoc;
939
+ export type HookDoc = import("./hook/type.js").HookDoc;
940
+ export type FunctionDoc = import("./function/type.js").FunctionDoc;
941
+ export type SchemaDoc = import("./schema/type.js").SchemaDoc;
942
+ export type CommandDoc = import("./command/type.js").CommandDoc;
943
+ export type EnumDoc = import("./enum/type.js").EnumDoc;
944
+ export type _AuthoredDocKindDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").Equal<z.infer<typeof AuthoredDocKindSchema>, AuthoredDocKind>>;
945
+ export type _AuthoredDocGraphDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").MutuallyAssignable<z.infer<typeof _AuthoredDocGraphSchema>, AuthoredDocGraphFieldsType>>;
946
+ export type _ReferenceContentBlockDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").Equal<z.infer<typeof ReferenceContentBlockSchema>, ReferenceContentBlock>>;
947
+ /**
948
+ * A stamped component doc as it loads. The loader accepts what the unstamped
949
+ * format always accepted, so stamping an existing doc never breaks it:
950
+ * `displayName` may be missing, `category` is any string, `usage`, `theming`,
951
+ * `playground` and `examples` pass through unchecked, and a doc has `props`,
952
+ * `components`, or both; each `components` entry needs only a `name`. Every
953
+ * other field matches the published type.
954
+ */
955
+ export type LoadedComponentDoc = Omit<SingleComponentDoc, "type" | "displayName" | "category" | "usage" | "theming" | "examples" | "playground" | "props"> & {
956
+ type: "component";
957
+ displayName?: string;
958
+ category?: string;
959
+ usage?: unknown;
960
+ theming?: unknown;
961
+ examples?: unknown[];
962
+ playground?: unknown;
963
+ props?: ComponentPropDoc[];
964
+ components?: Array<{
965
+ name: string;
966
+ }>;
967
+ };
968
+ export type _ComponentDocDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").MutuallyAssignable<import("../_shared/contract.js").NamedFields<z.infer<typeof ComponentDocKindSchema>>, import("../_shared/contract.js").NamedFields<LoadedComponentDoc>>>;
969
+ /**
970
+ * A stamped function doc as it loads: as with components, `displayName` may be
971
+ * missing and `usage` passes through unchecked.
972
+ */
973
+ export type LoadedFunctionDoc = Omit<FunctionDoc, "type" | "displayName" | "usage"> & {
974
+ type: "function";
975
+ displayName?: string;
976
+ usage?: unknown;
977
+ };
978
+ export type _FunctionDocDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").MutuallyAssignable<import("../_shared/contract.js").NamedFields<z.infer<typeof FunctionDocKindSchema>>, import("../_shared/contract.js").NamedFields<LoadedFunctionDoc>>>;
979
+ /**
980
+ * Every HookDoc is a FunctionDoc, so the one function schema covers both.
981
+ */
982
+ export type _HookDocIsFunctionDocLock = import("../_shared/contract.js").Expect<[HookDoc] extends [FunctionDoc] ? true : false>;
983
+ /**
984
+ * A stamped generic doc as the load check accepts it. `title`, `description`
985
+ * and `sections` may be missing, as in docs the v0.3.0 factory-removal codemod
986
+ * produced; `parseReference` then fills them (title from `displayName` or
987
+ * `name`, an empty description, no sections), so its result is a full
988
+ * ReferenceDoc. Only a doc with a description and sections is a usable topic
989
+ * (see `problemsInTopic`).
990
+ */
991
+ export type LoadedReferenceDoc = Omit<ReferenceDoc, "type" | "title" | "description" | "sections"> & {
992
+ type: "generic";
993
+ } & Partial<Pick<ReferenceDoc, "title" | "description" | "sections">>;
994
+ export type _ReferenceDocDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").MutuallyAssignable<import("../_shared/contract.js").NamedFields<z.infer<typeof GenericDocKindSchema>>, import("../_shared/contract.js").NamedFields<LoadedReferenceDoc>>>;
995
+ export type _SchemaDocDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").MutuallyAssignable<import("../_shared/contract.js").NamedFields<z.infer<typeof SchemaDocKindSchema>>, import("../_shared/contract.js").NamedFields<SchemaDoc & {
996
+ type: "schema";
997
+ }>>>;
998
+ export type _CommandDocDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").MutuallyAssignable<import("../_shared/contract.js").NamedFields<z.infer<typeof CommandDocKindSchema>>, import("../_shared/contract.js").NamedFields<CommandDoc & {
999
+ type: "command";
1000
+ }>>>;
1001
+ export type _EnumDocDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").MutuallyAssignable<import("../_shared/contract.js").NamedFields<z.infer<typeof EnumDocKindSchema>>, import("../_shared/contract.js").NamedFields<EnumDoc & {
1002
+ type: "enum";
1003
+ }>>>;
1004
+ export type _NamespaceDocDriftLock = import("../_shared/contract.js").Expect<import("../_shared/contract.js").Equal<z.infer<typeof NamespaceDocKindSchema>, NamespaceDoc>>;
253
1005
  import { z } from 'zod';
1006
+ declare const _AuthoredDocGraphSchema: z.ZodObject<{
1007
+ placement: z.ZodOptional<z.ZodObject<{
1008
+ parent: z.ZodString;
1009
+ slot: z.ZodOptional<z.ZodString>;
1010
+ order: z.ZodOptional<z.ZodNumber>;
1011
+ }, z.core.$strict>>;
1012
+ aliases: z.ZodOptional<z.ZodArray<z.ZodString>>;
1013
+ audience: z.ZodOptional<z.ZodEnum<{
1014
+ public: "public";
1015
+ internal: "internal";
1016
+ }>>;
1017
+ }, z.core.$strict>;
1018
+ export {};