schema-components 1.12.11 → 1.14.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 (83) hide show
  1. package/README.md +35 -0
  2. package/dist/core/adapter.d.mts +8 -3
  3. package/dist/core/adapter.mjs +58 -14
  4. package/dist/core/constraints.d.mts +17 -0
  5. package/dist/core/constraints.mjs +150 -0
  6. package/dist/core/diagnostics.d.mts +2 -0
  7. package/dist/core/diagnostics.mjs +33 -0
  8. package/dist/core/errors.d.mts +1 -1
  9. package/dist/core/formats.d.mts +33 -0
  10. package/dist/core/formats.mjs +67 -0
  11. package/dist/core/merge.d.mts +48 -0
  12. package/dist/core/merge.mjs +125 -0
  13. package/dist/core/normalise.d.mts +41 -0
  14. package/dist/core/normalise.mjs +2 -0
  15. package/dist/core/openapi30.d.mts +41 -0
  16. package/dist/core/openapi30.mjs +2 -0
  17. package/dist/core/ref.d.mts +2 -0
  18. package/dist/core/ref.mjs +165 -0
  19. package/dist/core/renderer.d.mts +2 -2
  20. package/dist/core/renderer.mjs +8 -0
  21. package/dist/core/swagger2.d.mts +11 -0
  22. package/dist/core/swagger2.mjs +2 -0
  23. package/dist/core/typeInference.d.mts +2 -0
  24. package/dist/core/typeInference.mjs +1 -0
  25. package/dist/core/types.d.mts +2 -3
  26. package/dist/core/types.mjs +58 -2
  27. package/dist/core/version.d.mts +2 -0
  28. package/dist/core/version.mjs +151 -0
  29. package/dist/core/walkBuilders.d.mts +66 -0
  30. package/dist/core/walkBuilders.mjs +152 -0
  31. package/dist/core/walker.d.mts +3 -10
  32. package/dist/core/walker.mjs +245 -233
  33. package/dist/diagnostics-DzbZmcLI.d.mts +64 -0
  34. package/dist/html/a11y.d.mts +5 -4
  35. package/dist/html/renderToHtml.d.mts +3 -3
  36. package/dist/html/renderToHtml.mjs +23 -379
  37. package/dist/html/renderToHtmlStream.d.mts +29 -47
  38. package/dist/html/renderToHtmlStream.mjs +33 -305
  39. package/dist/html/renderers.d.mts +14 -0
  40. package/dist/html/renderers.mjs +406 -0
  41. package/dist/html/streamRenderers.d.mts +13 -0
  42. package/dist/html/streamRenderers.mjs +243 -0
  43. package/dist/normalise-tL9FckAk.mjs +748 -0
  44. package/dist/openapi/ApiCallbacks.d.mts +16 -0
  45. package/dist/openapi/ApiCallbacks.mjs +34 -0
  46. package/dist/openapi/ApiLinks.d.mts +16 -0
  47. package/dist/openapi/ApiLinks.mjs +42 -0
  48. package/dist/openapi/ApiResponseHeaders.d.mts +16 -0
  49. package/dist/openapi/ApiResponseHeaders.mjs +35 -0
  50. package/dist/openapi/ApiSecurity.d.mts +19 -0
  51. package/dist/openapi/ApiSecurity.mjs +33 -0
  52. package/dist/openapi/bundle.d.mts +47 -0
  53. package/dist/openapi/bundle.mjs +95 -0
  54. package/dist/openapi/components.d.mts +7 -1
  55. package/dist/openapi/components.mjs +30 -6
  56. package/dist/openapi/parser.d.mts +59 -2
  57. package/dist/openapi/parser.mjs +189 -8
  58. package/dist/react/SchemaComponent.d.mts +13 -4
  59. package/dist/react/SchemaComponent.mjs +51 -91
  60. package/dist/react/SchemaView.d.mts +10 -2
  61. package/dist/react/SchemaView.mjs +33 -15
  62. package/dist/react/fieldPath.d.mts +20 -0
  63. package/dist/react/fieldPath.mjs +81 -0
  64. package/dist/react/headless.d.mts +2 -4
  65. package/dist/react/headless.mjs +3 -492
  66. package/dist/react/headlessRenderers.d.mts +23 -0
  67. package/dist/react/headlessRenderers.mjs +507 -0
  68. package/dist/ref-DvWoULcy.d.mts +44 -0
  69. package/dist/renderer-BdSqllx5.d.mts +160 -0
  70. package/dist/themes/mantine.d.mts +1 -1
  71. package/dist/themes/mantine.mjs +2 -1
  72. package/dist/themes/mui.d.mts +1 -1
  73. package/dist/themes/mui.mjs +3 -2
  74. package/dist/themes/radix.d.mts +1 -1
  75. package/dist/themes/radix.mjs +2 -1
  76. package/dist/themes/shadcn.d.mts +1 -1
  77. package/dist/themes/shadcn.mjs +10 -6
  78. package/dist/typeInference-k7FXfTVO.d.mts +335 -0
  79. package/dist/types-D_5ST7SS.d.mts +269 -0
  80. package/dist/version-B5NV-35j.d.mts +69 -0
  81. package/package.json +1 -1
  82. package/dist/types-BJzEgJdX.d.mts +0 -335
  83. /package/dist/{errors-DIKI2C78.d.mts → errors-C5zRC2PU.d.mts} +0 -0
@@ -0,0 +1,151 @@
1
+ //#region src/core/version.ts
2
+ /**
3
+ * $schema URI prefixes mapped to their draft version.
4
+ * Draft 04–07 use `http://json-schema.org/draft-XX/schema#`.
5
+ * Draft 2019-09 and 2020-12 use `https://json-schema.org/draft/YYYY-MM/schema`.
6
+ */
7
+ const DRAFT_URIS = new Map([
8
+ ["https://json-schema.org/draft/2020-12/schema", "draft-2020-12"],
9
+ ["https://json-schema.org/draft/2019-09/schema", "draft-2019-09"],
10
+ ["http://json-schema.org/draft-07/schema#", "draft-07"],
11
+ ["https://json-schema.org/draft-07/schema#", "draft-07"],
12
+ ["http://json-schema.org/draft-06/schema#", "draft-06"],
13
+ ["https://json-schema.org/draft-06/schema#", "draft-06"],
14
+ ["http://json-schema.org/draft-04/schema#", "draft-04"],
15
+ ["https://json-schema.org/draft-04/schema#", "draft-04"]
16
+ ]);
17
+ /**
18
+ * Detect the JSON Schema draft version from a schema's `$schema` URI.
19
+ * When `$schema` is absent, uses heuristic keyword detection via
20
+ * `inferJsonSchemaDraft` to guess the draft version.
21
+ * Returns `"draft-2020-12"` as the final fallback when no heuristic
22
+ * matches either.
23
+ */
24
+ function detectJsonSchemaDraft(schema) {
25
+ const $schema = schema.$schema;
26
+ if (typeof $schema === "string") {
27
+ const exact = DRAFT_URIS.get($schema);
28
+ if (exact !== void 0) return exact;
29
+ for (const [uri, draft] of DRAFT_URIS) if ($schema.startsWith(uri) || $schema === uri) return draft;
30
+ if ($schema.includes("/draft/2020-12/")) return "draft-2020-12";
31
+ if ($schema.includes("/draft/2019-09/")) return "draft-2019-09";
32
+ if ($schema.includes("/draft-07")) return "draft-07";
33
+ if ($schema.includes("/draft-06")) return "draft-06";
34
+ if ($schema.includes("/draft-04")) return "draft-04";
35
+ return "draft-2020-12";
36
+ }
37
+ return inferJsonSchemaDraft(schema);
38
+ }
39
+ /**
40
+ * Infer the JSON Schema draft from keyword presence when `$schema`
41
+ * is absent. Examined from highest-confidence to lowest.
42
+ *
43
+ * Heuristics:
44
+ * 1. `$dynamicRef` / `$dynamicAnchor` / `prefixItems` → Draft 2020-12
45
+ * 2. `$recursiveRef` / `$recursiveAnchor` / `unevaluatedProperties` /
46
+ * `dependentSchemas` → Draft 2019-09
47
+ * 3. `if` / `then` / `else`, `contentEncoding` / `contentMediaType` → Draft 07
48
+ * 4. `const`, `examples` (array), `propertyNames` → Draft 06
49
+ * 5. Boolean `exclusiveMinimum`, `id` (no `$`), `definitions` only → Draft 04
50
+ * 6. No signal → Draft 2020-12
51
+ */
52
+ function inferJsonSchemaDraft(schema) {
53
+ if ("$dynamicRef" in schema || "$dynamicAnchor" in schema || "prefixItems" in schema) return "draft-2020-12";
54
+ if ("$recursiveRef" in schema || "$recursiveAnchor" in schema || "unevaluatedProperties" in schema || "unevaluatedItems" in schema) return "draft-2019-09";
55
+ if ("if" in schema || "then" in schema || "else" in schema) return "draft-07";
56
+ if ("contentEncoding" in schema || "contentMediaType" in schema) return "draft-07";
57
+ if ("const" in schema || "propertyNames" in schema) return "draft-06";
58
+ const examples = schema.examples;
59
+ if (Array.isArray(examples)) return "draft-06";
60
+ if (typeof schema.exclusiveMinimum === "boolean" || typeof schema.exclusiveMaximum === "boolean") return "draft-04";
61
+ if ("id" in schema && !("$id" in schema)) return "draft-04";
62
+ return "draft-2020-12";
63
+ }
64
+ /**
65
+ * Like `inferJsonSchemaDraft` but also returns the heuristic that
66
+ * triggered the inference, for diagnostic emission.
67
+ */
68
+ function inferJsonSchemaDraftWithReason(schema) {
69
+ if ("$dynamicRef" in schema || "$dynamicAnchor" in schema || "prefixItems" in schema) return {
70
+ draft: "draft-2020-12",
71
+ inferredFrom: "dynamic-ref-or-anchor-or-prefixItems"
72
+ };
73
+ if ("$recursiveRef" in schema || "$recursiveAnchor" in schema || "unevaluatedProperties" in schema || "unevaluatedItems" in schema) return {
74
+ draft: "draft-2019-09",
75
+ inferredFrom: "recursive-ref-or-anchor-or-unevaluated"
76
+ };
77
+ if ("if" in schema || "then" in schema || "else" in schema) return {
78
+ draft: "draft-07",
79
+ inferredFrom: "if-then-else"
80
+ };
81
+ if ("contentEncoding" in schema || "contentMediaType" in schema) return {
82
+ draft: "draft-07",
83
+ inferredFrom: "content-encoding-or-media-type"
84
+ };
85
+ if ("const" in schema || "propertyNames" in schema) return {
86
+ draft: "draft-06",
87
+ inferredFrom: "const-or-propertyNames"
88
+ };
89
+ const examples = schema.examples;
90
+ if (Array.isArray(examples)) return {
91
+ draft: "draft-06",
92
+ inferredFrom: "examples"
93
+ };
94
+ if (typeof schema.exclusiveMinimum === "boolean" || typeof schema.exclusiveMaximum === "boolean") return {
95
+ draft: "draft-04",
96
+ inferredFrom: "boolean-exclusive-min-max"
97
+ };
98
+ if ("id" in schema && !("$id" in schema)) return {
99
+ draft: "draft-04",
100
+ inferredFrom: "id-without-dollar"
101
+ };
102
+ return {
103
+ draft: "draft-2020-12",
104
+ inferredFrom: "no-signal"
105
+ };
106
+ }
107
+ /**
108
+ * Detect the OpenAPI/Swagger version from a document.
109
+ * Returns `undefined` for documents that are not OpenAPI or Swagger.
110
+ */
111
+ function detectOpenApiVersion(doc) {
112
+ const swagger = doc.swagger;
113
+ if (typeof swagger === "string") {
114
+ const parts = swagger.split(".").map(Number);
115
+ return {
116
+ major: parts[0] ?? 2,
117
+ minor: parts[1] ?? 0,
118
+ patch: parts[2] ?? 0
119
+ };
120
+ }
121
+ const openapi = doc.openapi;
122
+ if (typeof openapi === "string") {
123
+ const parts = openapi.split(".").map(Number);
124
+ return {
125
+ major: parts[0] ?? 3,
126
+ minor: parts[1] ?? 0,
127
+ patch: parts[2] ?? 0
128
+ };
129
+ }
130
+ }
131
+ /**
132
+ * Check if an OpenAPI version is 3.0.x (uses modified Draft 04 schemas
133
+ * with `nullable` instead of `anyOf [T, null]`).
134
+ */
135
+ function isOpenApi30(version) {
136
+ return version.major === 3 && version.minor === 0;
137
+ }
138
+ /**
139
+ * Check if an OpenAPI version is 3.1.x (uses standard Draft 2020-12).
140
+ */
141
+ function isOpenApi31(version) {
142
+ return version.major === 3 && version.minor === 1;
143
+ }
144
+ /**
145
+ * Check if a document is Swagger 2.0.
146
+ */
147
+ function isSwagger2(version) {
148
+ return version.major === 2;
149
+ }
150
+ //#endregion
151
+ export { detectJsonSchemaDraft, detectOpenApiVersion, inferJsonSchemaDraft, inferJsonSchemaDraftWithReason, isOpenApi30, isOpenApi31, isSwagger2 };
@@ -0,0 +1,66 @@
1
+ import { M as WalkedField, O as StringField, T as SchemaMeta, b as NumberField, c as FieldBase, j as UnknownField, o as Editability, p as FileField, r as BooleanField, v as NullField } from "../types-D_5ST7SS.mjs";
2
+ import { i as DiagnosticsOptions } from "../diagnostics-DzbZmcLI.mjs";
3
+ import { t as ExternalResolver } from "../ref-DvWoULcy.mjs";
4
+
5
+ //#region src/core/walkBuilders.d.ts
6
+ declare function getString(obj: Record<string, unknown>, key: string): string | undefined;
7
+ declare function getArray(obj: Record<string, unknown>, key: string): unknown[] | undefined;
8
+ declare function getObject(obj: Record<string, unknown>, key: string): Record<string, unknown> | undefined;
9
+ interface WalkOptions {
10
+ componentMeta?: SchemaMeta | undefined;
11
+ rootMeta?: SchemaMeta | undefined;
12
+ /** Nested field overrides — same shape as the schema. */
13
+ fieldOverrides?: Record<string, unknown> | undefined;
14
+ /** The root document for $ref resolution. */
15
+ rootDocument?: Record<string, unknown> | undefined;
16
+ /** Diagnostics channel for surfacing silent fallbacks. */
17
+ diagnostics?: DiagnosticsOptions;
18
+ /** Sync resolver for external $ref URIs. */
19
+ externalResolver?: ExternalResolver;
20
+ }
21
+ declare function extractMetaFromJson(schema: Record<string, unknown>): SchemaMeta;
22
+ declare function extractSchemaMetaFields(overrides: Record<string, unknown> | undefined): SchemaMeta | undefined;
23
+ declare function extractChildOverride(overrides: Record<string, unknown> | undefined, key: string): Record<string, unknown> | undefined;
24
+ interface WalkContext {
25
+ componentMeta: SchemaMeta | undefined;
26
+ rootMeta: SchemaMeta | undefined;
27
+ fieldOverrides: Record<string, unknown> | undefined;
28
+ rootDocument: Record<string, unknown>;
29
+ isNullable: boolean;
30
+ isOptional: boolean;
31
+ defaultValue: unknown;
32
+ /** Cache of $ref → WalkedField for recursive schema support. */
33
+ refResults: Map<string, WalkedField>;
34
+ /** JSON Pointer tracking for diagnostics. */
35
+ pointer: string;
36
+ /** Diagnostics channel for surfacing silent fallbacks. */
37
+ diagnostics: DiagnosticsOptions | undefined;
38
+ /** Derived $ref depth bound from the root document. */
39
+ maxRefDepth: number;
40
+ /** Sync resolver for external $ref URIs. */
41
+ externalResolver: ExternalResolver | undefined;
42
+ }
43
+ /**
44
+ * Build the common base shared by every field variant.
45
+ */
46
+ declare function buildBase(schema: Record<string, unknown>, ctx: WalkContext): FieldBase & {
47
+ editability: Editability;
48
+ };
49
+ declare function buildStringField(schema: Record<string, unknown>, ctx: WalkContext): StringField;
50
+ declare function buildNumberField(schema: Record<string, unknown>, ctx: WalkContext): NumberField;
51
+ declare function buildBooleanField(schema: Record<string, unknown>, ctx: WalkContext): BooleanField;
52
+ declare function buildNullField(schema: Record<string, unknown>, ctx: WalkContext): NullField;
53
+ declare function buildUnknownField(schema: Record<string, unknown>, ctx: WalkContext): UnknownField;
54
+ declare function buildFileField(schema: Record<string, unknown>, ctx: WalkContext): FileField;
55
+ /** Walk a map of sub-schemas (patternProperties, dependentSchemas). */
56
+ declare function walkSubSchemaMap<T>(map: Record<string, unknown>, walkNode: (schema: Record<string, unknown>, ctx: WalkContext) => T, ctx: WalkContext): Record<string, T>;
57
+ /** Walk a dependentRequired map (Record<string, string[]>). */
58
+ declare function walkDependentRequiredMap(map: Record<string, unknown>): Record<string, string[]>;
59
+ /**
60
+ * Return a copy of the schema without the specified keys.
61
+ * Used to strip composition keywords before walking the base schema.
62
+ */
63
+ declare function withoutKeys(schema: Record<string, unknown>, keys: string[]): Record<string, unknown>;
64
+ declare function isPrimitive(value: unknown): value is string | number | boolean | null;
65
+ //#endregion
66
+ export { WalkContext, WalkOptions, buildBase, buildBooleanField, buildFileField, buildNullField, buildNumberField, buildStringField, buildUnknownField, extractChildOverride, extractMetaFromJson, extractSchemaMetaFields, getArray, getObject, getString, isPrimitive, walkDependentRequiredMap, walkSubSchemaMap, withoutKeys };
@@ -0,0 +1,152 @@
1
+ import { isObject } from "./guards.mjs";
2
+ import { extractFileConstraints, extractNumberConstraints, extractStringConstraints } from "./constraints.mjs";
3
+ import { resolveEditability } from "./types.mjs";
4
+ //#region src/core/walkBuilders.ts
5
+ function getString(obj, key) {
6
+ const value = obj[key];
7
+ return typeof value === "string" ? value : void 0;
8
+ }
9
+ function getArray(obj, key) {
10
+ const value = obj[key];
11
+ return Array.isArray(value) ? value : void 0;
12
+ }
13
+ function getObject(obj, key) {
14
+ const value = obj[key];
15
+ return isObject(value) ? value : void 0;
16
+ }
17
+ const META_KEYWORDS = new Set([
18
+ "readOnly",
19
+ "writeOnly",
20
+ "description",
21
+ "title",
22
+ "deprecated",
23
+ "default",
24
+ "component",
25
+ "example",
26
+ "examples"
27
+ ]);
28
+ function extractMetaFromJson(schema) {
29
+ const meta = {};
30
+ for (const [key, value] of Object.entries(schema)) if (META_KEYWORDS.has(key)) meta[key] = value;
31
+ return meta;
32
+ }
33
+ const OVERRIDE_META_KEYS = new Set([
34
+ "readOnly",
35
+ "writeOnly",
36
+ "description",
37
+ "title",
38
+ "deprecated",
39
+ "component",
40
+ "visible",
41
+ "order"
42
+ ]);
43
+ function extractSchemaMetaFields(overrides) {
44
+ if (overrides === void 0) return void 0;
45
+ const meta = {};
46
+ for (const key of Object.keys(overrides)) if (OVERRIDE_META_KEYS.has(key)) meta[key] = overrides[key];
47
+ return Object.keys(meta).length > 0 ? meta : void 0;
48
+ }
49
+ function extractChildOverride(overrides, key) {
50
+ if (overrides === void 0) return void 0;
51
+ const child = overrides[key];
52
+ if (child === void 0 || child === null) return void 0;
53
+ if (typeof child !== "object" || Array.isArray(child)) return void 0;
54
+ const result = {};
55
+ for (const [k, v] of Object.entries(child)) result[k] = v;
56
+ return Object.keys(result).length > 0 ? result : void 0;
57
+ }
58
+ /**
59
+ * Build the common base shared by every field variant.
60
+ */
61
+ function buildBase(schema, ctx) {
62
+ const propertyMeta = extractMetaFromJson(schema);
63
+ const overrideMeta = extractSchemaMetaFields(ctx.fieldOverrides);
64
+ const mergedMeta = {
65
+ ...propertyMeta,
66
+ ...overrideMeta
67
+ };
68
+ const defaultValue = "default" in schema ? schema.default : void 0;
69
+ const examplesRaw = schema.examples;
70
+ const examples = Array.isArray(examplesRaw) ? examplesRaw : void 0;
71
+ const editability = resolveEditability(mergedMeta, ctx.componentMeta, ctx.rootMeta);
72
+ if ((overrideMeta !== void 0 && ("readOnly" in overrideMeta || "writeOnly" in overrideMeta) || Boolean(propertyMeta.readOnly) || Boolean(propertyMeta.writeOnly)) && ctx.componentMeta !== void 0) ctx = {
73
+ ...ctx,
74
+ componentMeta: void 0
75
+ };
76
+ return {
77
+ editability,
78
+ meta: mergedMeta,
79
+ isOptional: ctx.isOptional,
80
+ isNullable: ctx.isNullable,
81
+ defaultValue: defaultValue ?? ctx.defaultValue,
82
+ ...examples !== void 0 ? { examples } : {}
83
+ };
84
+ }
85
+ function buildStringField(schema, ctx) {
86
+ return {
87
+ ...buildBase(schema, ctx),
88
+ type: "string",
89
+ constraints: extractStringConstraints(schema, ctx.diagnostics, ctx.pointer)
90
+ };
91
+ }
92
+ function buildNumberField(schema, ctx) {
93
+ return {
94
+ ...buildBase(schema, ctx),
95
+ type: "number",
96
+ constraints: extractNumberConstraints(schema)
97
+ };
98
+ }
99
+ function buildBooleanField(schema, ctx) {
100
+ return {
101
+ ...buildBase(schema, ctx),
102
+ type: "boolean",
103
+ constraints: {}
104
+ };
105
+ }
106
+ function buildNullField(schema, ctx) {
107
+ return {
108
+ ...buildBase(schema, ctx),
109
+ type: "null",
110
+ constraints: {}
111
+ };
112
+ }
113
+ function buildUnknownField(schema, ctx) {
114
+ return {
115
+ ...buildBase(schema, ctx),
116
+ type: "unknown",
117
+ constraints: {}
118
+ };
119
+ }
120
+ function buildFileField(schema, ctx) {
121
+ return {
122
+ ...buildBase(schema, ctx),
123
+ type: "file",
124
+ constraints: extractFileConstraints(schema)
125
+ };
126
+ }
127
+ /** Walk a map of sub-schemas (patternProperties, dependentSchemas). */
128
+ function walkSubSchemaMap(map, walkNode, ctx) {
129
+ const result = {};
130
+ for (const [key, value] of Object.entries(map)) if (isObject(value)) result[key] = walkNode(value, ctx);
131
+ return result;
132
+ }
133
+ /** Walk a dependentRequired map (Record<string, string[]>). */
134
+ function walkDependentRequiredMap(map) {
135
+ const result = {};
136
+ for (const [key, value] of Object.entries(map)) if (Array.isArray(value)) result[key] = value.filter((x) => typeof x === "string");
137
+ return result;
138
+ }
139
+ /**
140
+ * Return a copy of the schema without the specified keys.
141
+ * Used to strip composition keywords before walking the base schema.
142
+ */
143
+ function withoutKeys(schema, keys) {
144
+ const result = {};
145
+ for (const [key, value] of Object.entries(schema)) if (!keys.includes(key)) result[key] = value;
146
+ return result;
147
+ }
148
+ function isPrimitive(value) {
149
+ return typeof value === "string" || typeof value === "number" || typeof value === "boolean" || value === null;
150
+ }
151
+ //#endregion
152
+ export { buildBase, buildBooleanField, buildFileField, buildNullField, buildNumberField, buildStringField, buildUnknownField, extractChildOverride, extractMetaFromJson, extractSchemaMetaFields, getArray, getObject, getString, isPrimitive, walkDependentRequiredMap, walkSubSchemaMap, withoutKeys };
@@ -1,14 +1,7 @@
1
- import { _ as WalkedField, m as SchemaMeta } from "../types-BJzEgJdX.mjs";
1
+ import { M as WalkedField } from "../types-D_5ST7SS.mjs";
2
+ import { WalkOptions } from "./walkBuilders.mjs";
2
3
 
3
4
  //#region src/core/walker.d.ts
4
- interface WalkOptions {
5
- componentMeta?: SchemaMeta | undefined;
6
- rootMeta?: SchemaMeta | undefined;
7
- /** Nested field overrides — same shape as the schema. */
8
- fieldOverrides?: Record<string, unknown> | undefined;
9
- /** The root document for $ref resolution. */
10
- rootDocument?: Record<string, unknown> | undefined;
11
- }
12
5
  declare function walk(schema: unknown, options?: WalkOptions): WalkedField;
13
6
  //#endregion
14
- export { WalkOptions, walk };
7
+ export { walk };