@builder-builder/builder 0.0.18 → 0.0.20

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 (76) hide show
  1. package/dist/bb.d.ts +5 -6
  2. package/dist/bb.js +7 -4
  3. package/dist/entities/builder/builder.d.ts +2 -4
  4. package/dist/entities/collection/config.d.ts +101 -0
  5. package/dist/entities/collection/config.js +1 -0
  6. package/dist/entities/collection/index.d.ts +2 -2
  7. package/dist/entities/collection/index.js +1 -1
  8. package/dist/entities/component/component.d.ts +3 -3
  9. package/dist/entities/component/component.js +4 -4
  10. package/dist/entities/component/config.d.ts +135 -0
  11. package/dist/entities/component/{details.js → config.js} +7 -6
  12. package/dist/entities/component/index.d.ts +2 -2
  13. package/dist/entities/component/index.js +1 -1
  14. package/dist/entities/component/when.d.ts +5 -5
  15. package/dist/entities/component/when.js +3 -3
  16. package/dist/entities/index.d.ts +8 -9
  17. package/dist/entities/index.js +3 -3
  18. package/dist/entities/kind.d.ts +1 -1
  19. package/dist/entities/model/index.d.ts +1 -1
  20. package/dist/entities/model/methods.d.ts +8 -8
  21. package/dist/entities/model/methods.js +2 -2
  22. package/dist/entities/model/models.d.ts +1 -1
  23. package/dist/entities/option/config.d.ts +109 -0
  24. package/dist/entities/option/config.js +15 -0
  25. package/dist/entities/option/index.d.ts +6 -6
  26. package/dist/entities/option/index.js +3 -3
  27. package/dist/entities/option/option.d.ts +3 -3
  28. package/dist/entities/option/option.js +4 -4
  29. package/dist/entities/option/select.d.ts +14 -14
  30. package/dist/entities/option/select.js +5 -5
  31. package/dist/entities/option/toggle.d.ts +10 -10
  32. package/dist/entities/option/toggle.js +7 -7
  33. package/dist/entities/option/when.d.ts +5 -5
  34. package/dist/entities/{refs.d.ts → references.d.ts} +2 -2
  35. package/dist/entities/serialise.d.ts +4 -4
  36. package/dist/entities/serialise.js +10 -10
  37. package/dist/entities/ui/input.d.ts +1 -2
  38. package/dist/entities/ui/ui.d.ts +1 -2
  39. package/dist/entities/ui/uis.d.ts +1 -1
  40. package/dist/entities/ui/uis.js +1 -1
  41. package/dist/entities/validated.d.ts +5 -5
  42. package/dist/environment.d.ts +1 -1
  43. package/dist/index.d.ts +11 -10
  44. package/dist/index.js +2 -2
  45. package/dist/mappers/index.d.ts +3 -5
  46. package/dist/mappers/index.js +2 -3
  47. package/dist/mappers/instance.d.ts +2 -2
  48. package/dist/mappers/instance.js +6 -6
  49. package/dist/mappers/order.d.ts +2 -2
  50. package/dist/mappers/order.js +4 -4
  51. package/dist/mappers/render/pages.d.ts +2 -2
  52. package/dist/mappers/render/render.d.ts +2 -2
  53. package/dist/mappers/render/render.js +11 -11
  54. package/dist/mappers/resolve.d.ts +11 -8
  55. package/dist/mappers/resolve.js +46 -27
  56. package/dist/mappers/variants/option-graph.d.ts +2 -2
  57. package/dist/private.d.ts +1 -1
  58. package/dist/private.js +1 -1
  59. package/dist/validate/builder.d.ts +2 -2
  60. package/dist/validate/index.d.ts +1 -0
  61. package/dist/validate/model.d.ts +2 -2
  62. package/dist/validate/model.js +3 -2
  63. package/dist/validate/paths.d.ts +1 -2
  64. package/dist/validate/paths.js +3 -20
  65. package/dist/validate/pricing.d.ts +2 -2
  66. package/dist/validate/resolve.d.ts +2 -2
  67. package/dist/validate/ui.d.ts +2 -2
  68. package/dist/validate/ui.js +3 -2
  69. package/dist/validate/variants.js +14 -3
  70. package/package.json +1 -1
  71. package/dist/entities/component/details.d.ts +0 -66
  72. package/dist/entities/entry.d.ts +0 -4
  73. package/dist/entities/option/values.d.ts +0 -49
  74. package/dist/entities/option/values.js +0 -14
  75. package/dist/entities/refs.js +0 -1
  76. /package/dist/entities/{entry.js → references.js} +0 -0
package/dist/bb.d.ts CHANGED
@@ -1,9 +1,10 @@
1
- import type { BuilderComponentVariantsValidated, BuilderInstanceValidated, BuilderModelValidated, BuilderPricingValidated, BuilderRefEntities, BuilderUIValidated, BuilderValidated } from './entities/index';
1
+ import type { BuilderComponentVariantsValidated, BuilderInstanceValidated, BuilderModelValidated, BuilderPricingValidated, BuilderReferences, BuilderUIValidated, BuilderValidated } from './entities/index';
2
2
  import type { BuilderEnvironment, BuilderEnvironmentResult } from './environment';
3
- import type { BuilderOrder, BuilderRenderResult } from './mappers/index';
4
3
  import type { BuilderComponentVariants, BuilderInstance, BuilderInstanceInput } from './instance';
4
+ import type { BuilderOrder, BuilderRenderResult } from './mappers/index';
5
+ import type { BuilderVariantsValidationOptions } from './validate/index';
5
6
  export type BBOptions = {
6
- readonly references?: BuilderRefEntities;
7
+ readonly references?: BuilderReferences;
7
8
  };
8
9
  export type BB<Env extends BuilderEnvironment = 'production'> = {
9
10
  readonly validate: {
@@ -12,9 +13,7 @@ export type BB<Env extends BuilderEnvironment = 'production'> = {
12
13
  pricing(input: unknown): BuilderEnvironmentResult<BuilderPricingValidated, Env>;
13
14
  ui(input: unknown): BuilderEnvironmentResult<BuilderUIValidated, Env>;
14
15
  instance(model: BuilderModelValidated, instance: BuilderInstance): BuilderEnvironmentResult<BuilderInstanceValidated, Env>;
15
- variants(model: BuilderModelValidated, input: unknown, options?: {
16
- readonly partial?: boolean;
17
- }): BuilderEnvironmentResult<BuilderComponentVariantsValidated, Env>;
16
+ variants(model: BuilderModelValidated, input: unknown, options?: BuilderVariantsValidationOptions): BuilderEnvironmentResult<BuilderComponentVariantsValidated, Env>;
18
17
  };
19
18
  instance(entity: BuilderValidated | BuilderModelValidated, partial?: BuilderInstanceInput): BuilderInstance;
20
19
  render(builder: BuilderValidated, instance: BuilderInstanceValidated): BuilderRenderResult;
package/dist/bb.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { BuilderException } from './exception.js';
2
- import { assertValidated, createInstance, createVariants, order, price, render, validateBuilder, validateInstance, validateModel, validatePricing, validateUI, validateVariants } from './mappers/index.js';
2
+ import { createInstance, createVariants, order, price, render } from './mappers/index.js';
3
+ import { assertValidated, validateBuilder, validateInstance, validateModel, validatePricing, validateUI, validateVariants } from './validate/index.js';
3
4
  export const bb = Object.assign(bbProduction, {
4
5
  development: bbDevelopment,
5
6
  staging: bbProduction,
@@ -47,10 +48,12 @@ function bbFactory(environment, references = []) {
47
48
  };
48
49
  function throwInProd(result) {
49
50
  const [entity, errors] = result;
50
- const isDev = environment === 'development';
51
- if (!isDev && errors.length > 0) {
51
+ if (environment === 'development') {
52
+ return result;
53
+ }
54
+ if (errors.length > 0) {
52
55
  throw new BuilderException(errors);
53
56
  }
54
- return (isDev ? result : entity);
57
+ return [entity, []];
55
58
  }
56
59
  }
@@ -1,9 +1,7 @@
1
- import type { BuilderModelSerialised } from '../model/model';
2
- import type { BuilderModelBindings, BuilderModelBoundState } from '../model/bind';
3
- import type { BuilderModelState } from '../model/state';
1
+ import type { BuilderModelBindings, BuilderModelBoundState, BuilderModelSerialised, BuilderModelState } from '../model/index';
4
2
  import type { BuilderPricingSerialised } from '../pricing/index';
5
3
  import type { BuilderTags } from '../tags';
6
- import type { BuilderUISerialised } from '../ui/ui';
4
+ import type { BuilderUISerialised } from '../ui/index';
7
5
  import type { BuilderBindings, BuilderBindingsSerialised } from './bind';
8
6
  import * as v from 'valibot';
9
7
  import { BuilderModel } from '../model/index.js';
@@ -87,4 +87,105 @@ export declare const BuilderCollectionConfigSerialisedSchema: v.SchemaWithPipe<r
87
87
  tags?: readonly string[] | undefined;
88
88
  }>]>;
89
89
  export type BuilderCollectionConfigSerialised = v.InferOutput<typeof BuilderCollectionConfigSerialisedSchema>;
90
+ export declare const BuilderCollectionConfigsSerialisedSchema: v.SchemaWithPipe<readonly [v.ArraySchema<v.SchemaWithPipe<readonly [v.ObjectSchema<{
91
+ readonly model: v.UnionSchema<[v.SchemaWithPipe<readonly [v.ObjectSchema<{
92
+ readonly type: v.LiteralSchema<"parameter", undefined>;
93
+ readonly id: v.StringSchema<undefined>;
94
+ readonly name: v.StringSchema<undefined>;
95
+ }, undefined>, v.ReadonlyAction<{
96
+ type: "parameter";
97
+ id: string;
98
+ name: string;
99
+ }>]>, v.SchemaWithPipe<readonly [v.ObjectSchema<{
100
+ readonly type: v.LiteralSchema<"ref", undefined>;
101
+ readonly id: v.StringSchema<undefined>;
102
+ }, undefined>, v.ReadonlyAction<{
103
+ type: "ref";
104
+ id: string;
105
+ }>]>, v.LazySchema<v.GenericSchema<import("..").BuilderModelSerialised>>], undefined>;
106
+ readonly min: v.UnionSchema<[v.SchemaWithPipe<readonly [v.ObjectSchema<{
107
+ readonly type: v.LiteralSchema<"parameter", undefined>;
108
+ readonly id: v.StringSchema<undefined>;
109
+ readonly name: v.StringSchema<undefined>;
110
+ }, undefined>, v.ReadonlyAction<{
111
+ type: "parameter";
112
+ id: string;
113
+ name: string;
114
+ }>]>, v.SchemaWithPipe<readonly [v.ObjectSchema<{
115
+ readonly type: v.LiteralSchema<"ref", undefined>;
116
+ readonly id: v.StringSchema<undefined>;
117
+ }, undefined>, v.ReadonlyAction<{
118
+ type: "ref";
119
+ id: string;
120
+ }>]>, v.NumberSchema<undefined>], undefined>;
121
+ readonly max: v.UnionSchema<[v.SchemaWithPipe<readonly [v.ObjectSchema<{
122
+ readonly type: v.LiteralSchema<"parameter", undefined>;
123
+ readonly id: v.StringSchema<undefined>;
124
+ readonly name: v.StringSchema<undefined>;
125
+ }, undefined>, v.ReadonlyAction<{
126
+ type: "parameter";
127
+ id: string;
128
+ name: string;
129
+ }>]>, v.SchemaWithPipe<readonly [v.ObjectSchema<{
130
+ readonly type: v.LiteralSchema<"ref", undefined>;
131
+ readonly id: v.StringSchema<undefined>;
132
+ }, undefined>, v.ReadonlyAction<{
133
+ type: "ref";
134
+ id: string;
135
+ }>]>, v.NumberSchema<undefined>], undefined>;
136
+ readonly tags: v.OptionalSchema<v.SchemaWithPipe<readonly [v.ArraySchema<v.StringSchema<undefined>, undefined>, v.ReadonlyAction<string[]>]>, undefined>;
137
+ }, undefined>, v.ReadonlyAction<{
138
+ model: Readonly<{
139
+ type: "parameter";
140
+ id: string;
141
+ name: string;
142
+ }> | Readonly<{
143
+ type: "ref";
144
+ id: string;
145
+ }> | import("..").BuilderModelSerialised;
146
+ min: number | Readonly<{
147
+ type: "parameter";
148
+ id: string;
149
+ name: string;
150
+ }> | Readonly<{
151
+ type: "ref";
152
+ id: string;
153
+ }>;
154
+ max: number | Readonly<{
155
+ type: "parameter";
156
+ id: string;
157
+ name: string;
158
+ }> | Readonly<{
159
+ type: "ref";
160
+ id: string;
161
+ }>;
162
+ tags?: readonly string[] | undefined;
163
+ }>]>, undefined>, v.ReadonlyAction<Readonly<{
164
+ model: Readonly<{
165
+ type: "parameter";
166
+ id: string;
167
+ name: string;
168
+ }> | Readonly<{
169
+ type: "ref";
170
+ id: string;
171
+ }> | import("..").BuilderModelSerialised;
172
+ min: number | Readonly<{
173
+ type: "parameter";
174
+ id: string;
175
+ name: string;
176
+ }> | Readonly<{
177
+ type: "ref";
178
+ id: string;
179
+ }>;
180
+ max: number | Readonly<{
181
+ type: "parameter";
182
+ id: string;
183
+ name: string;
184
+ }> | Readonly<{
185
+ type: "ref";
186
+ id: string;
187
+ }>;
188
+ tags?: readonly string[] | undefined;
189
+ }>[]>]>;
190
+ export type BuilderCollectionConfigsSerialised = v.InferOutput<typeof BuilderCollectionConfigsSerialisedSchema>;
90
191
  export declare function collectionConfig<Model extends Paramable<BuilderModelGeneric> = Paramable<BuilderModelGeneric>, Min extends Paramable<number> = Paramable<number>, Max extends Paramable<number> = Paramable<number>>(model: Model, min: Min, max: Max): BuilderCollectionConfig<Model, Min, Max>;
@@ -25,6 +25,7 @@ export const BuilderCollectionConfigSerialisedSchema = serialisable(v.object({
25
25
  max: paramable(v.number()),
26
26
  tags: v.optional(BuilderTagsSchema)
27
27
  }));
28
+ export const BuilderCollectionConfigsSerialisedSchema = v.pipe(v.array(BuilderCollectionConfigSerialisedSchema), v.readonly());
28
29
  export function collectionConfig(model, min, max) {
29
30
  return new BuilderCollectionConfig(model, min, max);
30
31
  }
@@ -1,8 +1,8 @@
1
1
  export type { BuilderCollectionPayload, BuilderCollections, BuilderCollectionSerialised, BuilderCollectionsSerialised, BuilderCollectionWhenSerialised, CollectionNamesOf, CollectionShape } from './collection';
2
- export type { BuilderCollectionConfigSerialised } from './config';
2
+ export type { BuilderCollectionConfigSerialised, BuilderCollectionConfigsSerialised } from './config';
3
3
  export type { CollectionsAsserted } from './expectation';
4
4
  export type { BuilderCollectionWhen } from './when';
5
5
  export { BuilderCollection, BuilderCollectionSchema, BuilderCollectionSelectMapSerialisedSchema, BuilderCollectionSerialisedSchema, BuilderCollectionsSerialisedSchema, BuilderCollectionWhenSerialisedSchema } from './collection.js';
6
- export { BuilderCollectionConfig, BuilderCollectionConfigSchema, BuilderCollectionConfigSerialisedSchema, collectionConfig } from './config.js';
6
+ export { BuilderCollectionConfig, BuilderCollectionConfigSchema, BuilderCollectionConfigSerialisedSchema, BuilderCollectionConfigsSerialisedSchema, collectionConfig } from './config.js';
7
7
  export { collectionExpectation } from './expectation.js';
8
8
  export { collectionWhen } from './when.js';
@@ -1,4 +1,4 @@
1
1
  export { BuilderCollection, BuilderCollectionSchema, BuilderCollectionSelectMapSerialisedSchema, BuilderCollectionSerialisedSchema, BuilderCollectionsSerialisedSchema, BuilderCollectionWhenSerialisedSchema } from './collection.js';
2
- export { BuilderCollectionConfig, BuilderCollectionConfigSchema, BuilderCollectionConfigSerialisedSchema, collectionConfig } from './config.js';
2
+ export { BuilderCollectionConfig, BuilderCollectionConfigSchema, BuilderCollectionConfigSerialisedSchema, BuilderCollectionConfigsSerialisedSchema, collectionConfig } from './config.js';
3
3
  export { collectionExpectation } from './expectation.js';
4
4
  export { collectionWhen } from './when.js';
@@ -2,10 +2,10 @@ import type { BuilderPaths } from '../../paths';
2
2
  import type { Paramable } from '../../references';
3
3
  import type { BuilderTags } from '../tags';
4
4
  import type { BuilderWhenSerialised } from '../when';
5
- import type { BuilderComponentDetails, BuilderComponentDetailsSerialised } from './details';
5
+ import type { BuilderComponentConfig, BuilderComponentConfigSerialised } from './config';
6
6
  import type { BuilderComponentWhen } from './when';
7
7
  import * as v from 'valibot';
8
- export type BuilderComponentPayload = BuilderComponentDetails | BuilderComponentWhen;
8
+ export type BuilderComponentPayload = BuilderComponentConfig | BuilderComponentWhen;
9
9
  export declare class BuilderComponent<const Name extends string = string, const Payload extends Paramable<BuilderComponentPayload> = Paramable<BuilderComponentPayload>, const Paths extends Paramable<BuilderPaths> = Paramable<BuilderPaths>> {
10
10
  readonly type: 'component';
11
11
  readonly name: Name;
@@ -34,7 +34,7 @@ export declare const BuilderComponentWhenSerialisedSchema: v.GenericSchema<Build
34
34
  }>[];
35
35
  tags?: readonly string[] | undefined;
36
36
  }>>>;
37
- export type BuilderComponentWhenSerialised = BuilderWhenSerialised<BuilderComponentDetailsSerialised>;
37
+ export type BuilderComponentWhenSerialised = BuilderWhenSerialised<BuilderComponentConfigSerialised>;
38
38
  export declare const BuilderComponentSelectMapSerialisedSchema: v.GenericSchema<import("..").BuilderMatchSelectMap<Readonly<{
39
39
  type: "parameter";
40
40
  id: string;
@@ -4,7 +4,7 @@ import { paramable } from '../../references.js';
4
4
  import { serialisable } from '../../serialisable.js';
5
5
  import { BuilderTagsSchema } from '../tags.js';
6
6
  import { createSelectMapSerialisedSchema, createWhenSerialisedSchema } from '../when.js';
7
- import { BuilderComponentDetailsSerialisedSchema } from './details.js';
7
+ import { BuilderComponentConfigSerialisedSchema } from './config.js';
8
8
  export class BuilderComponent {
9
9
  name;
10
10
  payload;
@@ -21,11 +21,11 @@ export class BuilderComponent {
21
21
  }
22
22
  }
23
23
  export const BuilderComponentSchema = v.instance(BuilderComponent);
24
- export const BuilderComponentWhenSerialisedSchema = createWhenSerialisedSchema(BuilderComponentDetailsSerialisedSchema);
25
- export const BuilderComponentSelectMapSerialisedSchema = createSelectMapSerialisedSchema(BuilderComponentDetailsSerialisedSchema);
24
+ export const BuilderComponentWhenSerialisedSchema = createWhenSerialisedSchema(BuilderComponentConfigSerialisedSchema);
25
+ export const BuilderComponentSelectMapSerialisedSchema = createSelectMapSerialisedSchema(BuilderComponentConfigSerialisedSchema);
26
26
  export const BuilderComponentSerialisedSchema = serialisable(v.object({
27
27
  name: v.string(),
28
- payload: paramable(v.union([BuilderComponentDetailsSerialisedSchema, BuilderComponentWhenSerialisedSchema])),
28
+ payload: paramable(v.union([BuilderComponentConfigSerialisedSchema, BuilderComponentWhenSerialisedSchema])),
29
29
  paths: v.optional(paramable(BuilderPathsSchema)),
30
30
  tags: v.optional(BuilderTagsSchema)
31
31
  }));
@@ -0,0 +1,135 @@
1
+ import type { Paramable } from '../../references';
2
+ import type { BuilderTags } from '../tags';
3
+ import type { BuilderComponentFields } from './field';
4
+ import * as v from 'valibot';
5
+ export declare class BuilderComponentConfig<const Fields extends Paramable<BuilderComponentFields> = Paramable<BuilderComponentFields>> {
6
+ readonly type: 'component-config';
7
+ readonly fields: Fields;
8
+ readonly tags?: BuilderTags;
9
+ constructor(fields: Fields, tags?: BuilderTags);
10
+ tag(...tags: Array<string>): BuilderComponentConfig<Fields>;
11
+ }
12
+ export declare const BuilderComponentConfigSchema: v.InstanceSchema<typeof BuilderComponentConfig, undefined>;
13
+ export declare const BuilderComponentConfigSerialisedSchema: v.SchemaWithPipe<readonly [v.ObjectSchema<{
14
+ readonly fields: v.UnionSchema<[v.SchemaWithPipe<readonly [v.ObjectSchema<{
15
+ readonly type: v.LiteralSchema<"parameter", undefined>;
16
+ readonly id: v.StringSchema<undefined>;
17
+ readonly name: v.StringSchema<undefined>;
18
+ }, undefined>, v.ReadonlyAction<{
19
+ type: "parameter";
20
+ id: string;
21
+ name: string;
22
+ }>]>, v.SchemaWithPipe<readonly [v.ObjectSchema<{
23
+ readonly type: v.LiteralSchema<"ref", undefined>;
24
+ readonly id: v.StringSchema<undefined>;
25
+ }, undefined>, v.ReadonlyAction<{
26
+ type: "ref";
27
+ id: string;
28
+ }>]>, v.SchemaWithPipe<readonly [v.ArraySchema<v.SchemaWithPipe<readonly [v.ObjectSchema<{
29
+ readonly type: v.LiteralSchema<"component-field", undefined>;
30
+ readonly name: v.StringSchema<undefined>;
31
+ readonly valueType: v.PicklistSchema<["string", "boolean", "number"], undefined>;
32
+ readonly isOptional: v.BooleanSchema<undefined>;
33
+ readonly tags: v.OptionalSchema<v.SchemaWithPipe<readonly [v.ArraySchema<v.StringSchema<undefined>, undefined>, v.ReadonlyAction<string[]>]>, undefined>;
34
+ }, undefined>, v.ReadonlyAction<{
35
+ type: "component-field";
36
+ name: string;
37
+ valueType: "string" | "number" | "boolean";
38
+ isOptional: boolean;
39
+ tags?: readonly string[] | undefined;
40
+ }>]>, undefined>, v.ReadonlyAction<Readonly<{
41
+ type: "component-field";
42
+ name: string;
43
+ valueType: "string" | "number" | "boolean";
44
+ isOptional: boolean;
45
+ tags?: readonly string[] | undefined;
46
+ }>[]>]>], undefined>;
47
+ readonly tags: v.OptionalSchema<v.SchemaWithPipe<readonly [v.ArraySchema<v.StringSchema<undefined>, undefined>, v.ReadonlyAction<string[]>]>, undefined>;
48
+ }, undefined>, v.ReadonlyAction<{
49
+ fields: Readonly<{
50
+ type: "parameter";
51
+ id: string;
52
+ name: string;
53
+ }> | Readonly<{
54
+ type: "ref";
55
+ id: string;
56
+ }> | readonly Readonly<{
57
+ type: "component-field";
58
+ name: string;
59
+ valueType: "string" | "number" | "boolean";
60
+ isOptional: boolean;
61
+ tags?: readonly string[] | undefined;
62
+ }>[];
63
+ tags?: readonly string[] | undefined;
64
+ }>]>;
65
+ export type BuilderComponentConfigSerialised = v.InferOutput<typeof BuilderComponentConfigSerialisedSchema>;
66
+ export declare const BuilderComponentConfigsSerialisedSchema: v.SchemaWithPipe<readonly [v.ArraySchema<v.SchemaWithPipe<readonly [v.ObjectSchema<{
67
+ readonly fields: v.UnionSchema<[v.SchemaWithPipe<readonly [v.ObjectSchema<{
68
+ readonly type: v.LiteralSchema<"parameter", undefined>;
69
+ readonly id: v.StringSchema<undefined>;
70
+ readonly name: v.StringSchema<undefined>;
71
+ }, undefined>, v.ReadonlyAction<{
72
+ type: "parameter";
73
+ id: string;
74
+ name: string;
75
+ }>]>, v.SchemaWithPipe<readonly [v.ObjectSchema<{
76
+ readonly type: v.LiteralSchema<"ref", undefined>;
77
+ readonly id: v.StringSchema<undefined>;
78
+ }, undefined>, v.ReadonlyAction<{
79
+ type: "ref";
80
+ id: string;
81
+ }>]>, v.SchemaWithPipe<readonly [v.ArraySchema<v.SchemaWithPipe<readonly [v.ObjectSchema<{
82
+ readonly type: v.LiteralSchema<"component-field", undefined>;
83
+ readonly name: v.StringSchema<undefined>;
84
+ readonly valueType: v.PicklistSchema<["string", "boolean", "number"], undefined>;
85
+ readonly isOptional: v.BooleanSchema<undefined>;
86
+ readonly tags: v.OptionalSchema<v.SchemaWithPipe<readonly [v.ArraySchema<v.StringSchema<undefined>, undefined>, v.ReadonlyAction<string[]>]>, undefined>;
87
+ }, undefined>, v.ReadonlyAction<{
88
+ type: "component-field";
89
+ name: string;
90
+ valueType: "string" | "number" | "boolean";
91
+ isOptional: boolean;
92
+ tags?: readonly string[] | undefined;
93
+ }>]>, undefined>, v.ReadonlyAction<Readonly<{
94
+ type: "component-field";
95
+ name: string;
96
+ valueType: "string" | "number" | "boolean";
97
+ isOptional: boolean;
98
+ tags?: readonly string[] | undefined;
99
+ }>[]>]>], undefined>;
100
+ readonly tags: v.OptionalSchema<v.SchemaWithPipe<readonly [v.ArraySchema<v.StringSchema<undefined>, undefined>, v.ReadonlyAction<string[]>]>, undefined>;
101
+ }, undefined>, v.ReadonlyAction<{
102
+ fields: Readonly<{
103
+ type: "parameter";
104
+ id: string;
105
+ name: string;
106
+ }> | Readonly<{
107
+ type: "ref";
108
+ id: string;
109
+ }> | readonly Readonly<{
110
+ type: "component-field";
111
+ name: string;
112
+ valueType: "string" | "number" | "boolean";
113
+ isOptional: boolean;
114
+ tags?: readonly string[] | undefined;
115
+ }>[];
116
+ tags?: readonly string[] | undefined;
117
+ }>]>, undefined>, v.ReadonlyAction<Readonly<{
118
+ fields: Readonly<{
119
+ type: "parameter";
120
+ id: string;
121
+ name: string;
122
+ }> | Readonly<{
123
+ type: "ref";
124
+ id: string;
125
+ }> | readonly Readonly<{
126
+ type: "component-field";
127
+ name: string;
128
+ valueType: "string" | "number" | "boolean";
129
+ isOptional: boolean;
130
+ tags?: readonly string[] | undefined;
131
+ }>[];
132
+ tags?: readonly string[] | undefined;
133
+ }>[]>]>;
134
+ export type BuilderComponentConfigsSerialised = v.InferOutput<typeof BuilderComponentConfigsSerialisedSchema>;
135
+ export declare function componentConfig<const Fields extends BuilderComponentFields>(...fields: Fields): BuilderComponentConfig<Fields>;
@@ -3,7 +3,7 @@ import { paramable } from '../../references.js';
3
3
  import { serialisable } from '../../serialisable.js';
4
4
  import { BuilderTagsSchema } from '../tags.js';
5
5
  import { BuilderComponentFieldsSerialisedSchema } from './field.js';
6
- export class BuilderComponentDetails {
6
+ export class BuilderComponentConfig {
7
7
  fields;
8
8
  tags;
9
9
  constructor(fields, tags) {
@@ -11,14 +11,15 @@ export class BuilderComponentDetails {
11
11
  this.tags = tags;
12
12
  }
13
13
  tag(...tags) {
14
- return new BuilderComponentDetails(this.fields, tags);
14
+ return new BuilderComponentConfig(this.fields, tags);
15
15
  }
16
16
  }
17
- export const BuilderComponentDetailsSchema = v.instance(BuilderComponentDetails);
18
- export const BuilderComponentDetailsSerialisedSchema = serialisable(v.object({
17
+ export const BuilderComponentConfigSchema = v.instance(BuilderComponentConfig);
18
+ export const BuilderComponentConfigSerialisedSchema = serialisable(v.object({
19
19
  fields: paramable(BuilderComponentFieldsSerialisedSchema),
20
20
  tags: v.optional(BuilderTagsSchema)
21
21
  }));
22
- export function componentDetails(...fields) {
23
- return new BuilderComponentDetails(fields);
22
+ export const BuilderComponentConfigsSerialisedSchema = v.pipe(v.array(BuilderComponentConfigSerialisedSchema), v.readonly());
23
+ export function componentConfig(...fields) {
24
+ return new BuilderComponentConfig(fields);
24
25
  }
@@ -1,10 +1,10 @@
1
1
  export type { BuilderComponentPayload, BuilderComponents, BuilderComponentSerialised, BuilderComponentsSerialised, BuilderComponentWhenSerialised } from './component';
2
- export type { BuilderComponentDetailsSerialised } from './details';
2
+ export type { BuilderComponentConfigSerialised, BuilderComponentConfigsSerialised } from './config';
3
3
  export type { ComponentAsserted } from './expectation';
4
4
  export type { BuilderComponentFields, BuilderComponentFieldsSerialised, BuilderComponentFieldSerialised, BuilderComponentFieldValueType } from './field';
5
5
  export type { BuilderComponentWhen } from './when';
6
6
  export { BuilderComponent, BuilderComponentSchema, BuilderComponentSelectMapSerialisedSchema, BuilderComponentSerialisedSchema, BuilderComponentsSerialisedSchema, BuilderComponentWhenSerialisedSchema } from './component.js';
7
- export { BuilderComponentDetails, BuilderComponentDetailsSchema, BuilderComponentDetailsSerialisedSchema, componentDetails } from './details.js';
7
+ export { BuilderComponentConfig, BuilderComponentConfigSchema, BuilderComponentConfigSerialisedSchema, BuilderComponentConfigsSerialisedSchema, componentConfig } from './config.js';
8
8
  export { componentExpectation } from './expectation.js';
9
9
  export { BuilderComponentField, BuilderComponentFieldSchema, BuilderComponentFieldSerialisedSchema, BuilderComponentFieldsSchema, BuilderComponentFieldsSerialisedSchema, BuilderComponentFieldValueTypeSchema, detailBoolean, detailNumber, detailString, detailValueSchema } from './field.js';
10
10
  export { componentWhen } from './when.js';
@@ -1,5 +1,5 @@
1
1
  export { BuilderComponent, BuilderComponentSchema, BuilderComponentSelectMapSerialisedSchema, BuilderComponentSerialisedSchema, BuilderComponentsSerialisedSchema, BuilderComponentWhenSerialisedSchema } from './component.js';
2
- export { BuilderComponentDetails, BuilderComponentDetailsSchema, BuilderComponentDetailsSerialisedSchema, componentDetails } from './details.js';
2
+ export { BuilderComponentConfig, BuilderComponentConfigSchema, BuilderComponentConfigSerialisedSchema, BuilderComponentConfigsSerialisedSchema, componentConfig } from './config.js';
3
3
  export { componentExpectation } from './expectation.js';
4
4
  export { BuilderComponentField, BuilderComponentFieldSchema, BuilderComponentFieldSerialisedSchema, BuilderComponentFieldsSchema, BuilderComponentFieldsSerialisedSchema, BuilderComponentFieldValueTypeSchema, detailBoolean, detailNumber, detailString, detailValueSchema } from './field.js';
5
5
  export { componentWhen } from './when.js';
@@ -2,10 +2,10 @@ import type { BuilderPath } from '../../paths';
2
2
  import type { BuilderPrimitives } from '../../primitive';
3
3
  import type { Paramable } from '../../references';
4
4
  import type { BuilderEnableConfig, BuilderMatchConfig, BuilderMatchSelectMap, BuilderUnlessConfig, BuilderWhen } from '../when';
5
- import type { BuilderComponentDetails } from './details';
6
- export type BuilderComponentWhen = BuilderWhen<Paramable<BuilderComponentDetails>, Paramable<BuilderPath>, Paramable<Record<string, Paramable<BuilderComponentDetails> | null>>, Paramable<BuilderPath>>;
5
+ import type { BuilderComponentConfig } from './config';
6
+ export type BuilderComponentWhen = BuilderWhen<Paramable<BuilderComponentConfig>, Paramable<BuilderPath>, Paramable<Record<string, Paramable<BuilderComponentConfig> | null>>, Paramable<BuilderPath>>;
7
7
  export declare const componentWhen: {
8
- enable: <const Payload extends Paramable<BuilderComponentDetails>>(payload?: Payload) => BuilderEnableConfig<Payload>;
9
- match: <const Payload extends Paramable<BuilderComponentDetails>, const MatchPath extends Paramable<BuilderPath>, const SelectMap extends Paramable<BuilderMatchSelectMap<Paramable<BuilderComponentDetails>>>>(matchPath: MatchPath, selectMap: SelectMap) => BuilderMatchConfig<Payload, MatchPath, SelectMap>;
10
- unless: <const UnlessPath extends Paramable<BuilderPath>, const Payload extends Paramable<BuilderComponentDetails>>(unlessPath: UnlessPath, disabledValues: BuilderPrimitives, payload?: Payload) => BuilderUnlessConfig<Payload, UnlessPath>;
8
+ enable: <const Payload extends Paramable<BuilderComponentConfig>>(payload?: Payload) => BuilderEnableConfig<Payload>;
9
+ match: <const Payload extends Paramable<BuilderComponentConfig>, const MatchPath extends Paramable<BuilderPath>, const SelectMap extends Paramable<BuilderMatchSelectMap<Paramable<BuilderComponentConfig>>>>(matchPath: MatchPath, selectMap: SelectMap) => BuilderMatchConfig<Payload, MatchPath, SelectMap>;
10
+ unless: <const UnlessPath extends Paramable<BuilderPath>, const Payload extends Paramable<BuilderComponentConfig>>(unlessPath: UnlessPath, disabledValues: BuilderPrimitives, payload?: Payload) => BuilderUnlessConfig<Payload, UnlessPath>;
11
11
  };
@@ -1,11 +1,11 @@
1
1
  import { createWhenFactories } from '../when.js';
2
- import { componentDetails } from './details.js';
2
+ import { componentConfig } from './config.js';
3
3
  const baseFactories = createWhenFactories();
4
4
  export const componentWhen = {
5
5
  enable: (payload) => {
6
6
  return {
7
7
  type: 'enable',
8
- payload: (payload ?? componentDetails())
8
+ payload: (payload ?? componentConfig())
9
9
  };
10
10
  },
11
11
  match: baseFactories.match,
@@ -14,7 +14,7 @@ export const componentWhen = {
14
14
  type: 'unless',
15
15
  unlessPath,
16
16
  disabledValues,
17
- payload: (payload ?? componentDetails())
17
+ payload: (payload ?? componentConfig())
18
18
  };
19
19
  }
20
20
  };
@@ -1,27 +1,26 @@
1
1
  export type { BuilderBindings, BuilderBindingsSerialised, BuilderSerialised } from './builder/index';
2
- export type { BuilderCollectionConfigSerialised, BuilderCollectionPayload, BuilderCollections, BuilderCollectionSerialised, BuilderCollectionsSerialised, BuilderCollectionWhen, BuilderCollectionWhenSerialised, CollectionNamesOf, CollectionShape } from './collection/index';
3
- export type { BuilderComponentDetailsSerialised, BuilderComponentFields, BuilderComponentFieldSerialised, BuilderComponentFieldsSerialised, BuilderComponentFieldValueType, BuilderComponentPayload, BuilderComponents, BuilderComponentSerialised, BuilderComponentsSerialised, BuilderComponentWhen, BuilderComponentWhenSerialised } from './component/index';
2
+ export type { BuilderCollectionConfigSerialised, BuilderCollectionConfigsSerialised, BuilderCollectionPayload, BuilderCollections, BuilderCollectionSerialised, BuilderCollectionsSerialised, BuilderCollectionWhen, BuilderCollectionWhenSerialised, CollectionNamesOf, CollectionShape } from './collection/index';
3
+ export type { BuilderComponentConfigSerialised, BuilderComponentConfigsSerialised, BuilderComponentFields, BuilderComponentFieldSerialised, BuilderComponentFieldsSerialised, BuilderComponentFieldValueType, BuilderComponentPayload, BuilderComponents, BuilderComponentSerialised, BuilderComponentsSerialised, BuilderComponentWhen, BuilderComponentWhenSerialised } from './component/index';
4
4
  export type { BuilderExpectationKind, BuilderExpectations, BuilderExpectationSerialised, BuilderExpectationsSerialised } from './expectation';
5
5
  export type { BuilderEntityKind, BuilderEntitySerialised } from './kind.js';
6
- export type { BuilderModelEntrySerialised } from './entry';
7
6
  export type { BuilderInstanceOf, BuilderModelGeneric, BuilderModels, BuilderModelSerialised, BuilderModelState, BuilderModelStateEmpty, BuilderModelStateOf } from './model/index';
8
7
  export { BuilderModel, BuilderModelSchema, BuilderModelSerialisedSchema, model, modelsMerge } from './model/index.js';
9
- export type { BuilderOptionPayload, BuilderOptions, BuilderOptionSerialised, BuilderOptionsSerialised, BuilderOptionValues, BuilderOptionValuesSerialised, BuilderOptionWhen, BuilderOptionWhenSerialised, BuilderSelectTypeLabels, BuilderSelectTypeSerialised, BuilderSelectTypeValues, BuilderToggleTypeSerialised, BuilderToggleValueType } from './option/index';
8
+ export type { BuilderOptionPayload, BuilderOptions, BuilderOptionSerialised, BuilderOptionsSerialised, BuilderOptionConfig, BuilderOptionConfigSerialised, BuilderOptionConfigsSerialised, BuilderOptionWhen, BuilderOptionWhenSerialised, BuilderSelectConfigLabels, BuilderSelectConfigSerialised, BuilderSelectConfigValues, BuilderToggleConfigSerialised, BuilderToggleValueType } from './option/index';
10
9
  export type { BuilderPricingExpression, BuilderPricingLookupKey, BuilderPricingReduce, BuilderPricingSerialised, BuilderRates } from './pricing/index';
11
- export type { BuilderRefEntities, BuilderRefEntity } from './refs.js';
10
+ export type { BuilderReference, BuilderReferences } from './references.js';
12
11
  export type { BuilderTags } from './tags';
13
12
  export type { BuilderDescription, BuilderDescriptionItem, BuilderUIDescribeSerialised, BuilderUIInputMetadata, BuilderUIInputMetadataSerialised, BuilderUIInputs, BuilderUIInputsSerialised, BuilderUIInputSerialised, BuilderUIItem, BuilderUIItems, BuilderUIItemSerialised, BuilderUIItemsSerialised, BuilderUIPageSerialised, BuilderUIPagesSerialised, BuilderUIs, BuilderUIsSerialised, BuilderUISerialised } from './ui/index';
14
- export type { BuilderCollectionConfigValidated, BuilderCollectionsValidated, BuilderCollectionValidated, BuilderComponentDetailsValidated, BuilderComponentsValidated, BuilderComponentValidated, BuilderComponentVariantsValidated, BuilderInstancesValidated, BuilderInstanceValidated, BuilderModelValidated, BuilderOptionsValidated, BuilderOptionValidated, BuilderOptionValuesValidated, BuilderPricingValidated, BuilderUIDescribeValidated, BuilderUIItemsValidated, BuilderUIPageValidated, BuilderUIValidated, BuilderValidated } from './validated';
13
+ export type { BuilderCollectionConfigValidated, BuilderCollectionsValidated, BuilderCollectionValidated, BuilderComponentConfigValidated, BuilderComponentsValidated, BuilderComponentValidated, BuilderComponentVariantsValidated, BuilderInstancesValidated, BuilderInstanceValidated, BuilderModelValidated, BuilderOptionsValidated, BuilderOptionValidated, BuilderOptionConfigValidated, BuilderPricingValidated, BuilderUIDescribeValidated, BuilderUIItemsValidated, BuilderUIPageValidated, BuilderUIValidated, BuilderValidated } from './validated';
15
14
  export type { BuilderEnableConfig, BuilderMatchConfig, BuilderMatchSelectMap, BuilderUnlessConfig, BuilderWhen, BuilderWhenConfig, BuilderWhenSerialised } from './when';
16
15
  export { Builder, builder, BuilderSchema, BuilderSerialisedSchema } from './builder/index.js';
17
- export { BuilderCollection, BuilderCollectionConfig, BuilderCollectionConfigSchema, BuilderCollectionConfigSerialisedSchema, BuilderCollectionSchema, BuilderCollectionSelectMapSerialisedSchema, BuilderCollectionSerialisedSchema, BuilderCollectionsSerialisedSchema, BuilderCollectionWhenSerialisedSchema, collectionConfig, collectionExpectation, collectionWhen } from './collection/index.js';
18
- export { BuilderComponent, BuilderComponentDetails, BuilderComponentDetailsSchema, BuilderComponentDetailsSerialisedSchema, BuilderComponentField, BuilderComponentFieldSchema, BuilderComponentFieldSerialisedSchema, BuilderComponentFieldsSchema, BuilderComponentFieldsSerialisedSchema, BuilderComponentFieldValueTypeSchema, BuilderComponentSchema, BuilderComponentSelectMapSerialisedSchema, BuilderComponentSerialisedSchema, BuilderComponentsSerialisedSchema, BuilderComponentWhenSerialisedSchema, componentDetails, componentExpectation, componentWhen, detailBoolean, detailNumber, detailString, detailValueSchema } from './component/index.js';
16
+ export { BuilderCollection, BuilderCollectionConfig, BuilderCollectionConfigSchema, BuilderCollectionConfigSerialisedSchema, BuilderCollectionConfigsSerialisedSchema, BuilderCollectionSchema, BuilderCollectionSelectMapSerialisedSchema, BuilderCollectionSerialisedSchema, BuilderCollectionsSerialisedSchema, BuilderCollectionWhenSerialisedSchema, collectionConfig, collectionExpectation, collectionWhen } from './collection/index.js';
17
+ export { BuilderComponent, BuilderComponentConfig, BuilderComponentConfigSchema, BuilderComponentConfigSerialisedSchema, BuilderComponentConfigsSerialisedSchema, BuilderComponentField, BuilderComponentFieldSchema, BuilderComponentFieldSerialisedSchema, BuilderComponentFieldsSchema, BuilderComponentFieldsSerialisedSchema, BuilderComponentFieldValueTypeSchema, BuilderComponentSchema, BuilderComponentSelectMapSerialisedSchema, BuilderComponentSerialisedSchema, BuilderComponentsSerialisedSchema, BuilderComponentWhenSerialisedSchema, componentConfig, componentExpectation, componentWhen, detailBoolean, detailNumber, detailString, detailValueSchema } from './component/index.js';
19
18
  export { parameter, ref } from '../references.js';
20
19
  export { BuilderPricing, BuilderPricingExpressionSchema, BuilderPricingLookupKeySchema, BuilderPricingReduceSchema, BuilderPricingSchema, BuilderPricingSerialisedSchema, BuilderRatesSchema, pricing } from './pricing/index.js';
21
20
  export { BuilderTagsSchema } from './tags.js';
22
21
  export { BuilderExpectation, BuilderExpectationKindSchema, BuilderExpectationSchema, BuilderExpectationSerialisedSchema, BuilderExpectationsSchema, BuilderExpectationsSerialisedSchema } from './expectation.js';
23
22
  export { BuilderEntityKindSchema, BuilderEntitySerialisedSchema } from './kind.js';
24
- export { BuilderOption, BuilderOptionSchema, BuilderOptionSelectMapSerialisedSchema, BuilderOptionSerialisedSchema, BuilderOptionsSerialisedSchema, BuilderOptionValuesSchema, BuilderOptionValuesSerialisedSchema, BuilderOptionWhenSerialisedSchema, BuilderSelectType, BuilderSelectTypeSchema, BuilderSelectTypeSerialisedSchema, BuilderToggleType, BuilderToggleTypeSchema, BuilderToggleTypeSerialisedSchema, optionExpectation, optionValueSchema, optionWhen, select, toggleBoolean, toggleNumber, toggleString } from './option/index.js';
23
+ export { BuilderOption, BuilderOptionSchema, BuilderOptionSelectMapSerialisedSchema, BuilderOptionSerialisedSchema, BuilderOptionsSerialisedSchema, BuilderOptionConfigSchema, BuilderOptionConfigSerialisedSchema, BuilderOptionConfigsSerialisedSchema, BuilderOptionWhenSerialisedSchema, BuilderSelectConfig, BuilderSelectConfigSchema, BuilderSelectConfigSerialisedSchema, BuilderToggleConfig, BuilderToggleConfigSchema, BuilderToggleConfigSerialisedSchema, optionExpectation, optionValueSchema, optionWhen, select, toggleBoolean, toggleNumber, toggleString } from './option/index.js';
25
24
  export { serialise } from './serialise.js';
26
25
  export { BuilderDescriptionItemSchema, BuilderDescriptionSchema, BuilderUI, BuilderUIDescribe, BuilderUIDescribeSchema, BuilderUIDescribeSerialisedSchema, BuilderUIInput, BuilderUIInputMetadataSchema, BuilderUIInputSchema, BuilderUIInputSerialisedSchema, BuilderUIInputsSerialisedSchema, BuilderUIItemSerialisedSchema, BuilderUIItemsSerialisedSchema, BuilderUIPage, BuilderUIPages, BuilderUIPageSchema, BuilderUIPageSerialisedSchema, BuilderUIPagesSchema, BuilderUIPagesSerialisedSchema, BuilderUISchema, BuilderUISerialisedSchema, input, uis } from './ui/index.js';
27
26
  export { BuilderWhenConfigSchema, BuilderWhenEnableSchema, BuilderWhenMatchSchema, BuilderWhenSerialisedSchema, BuilderWhenUnlessSchema, createWhenFactories, createWhenSerialisedSchema } from './when.js';
@@ -1,13 +1,13 @@
1
1
  export { BuilderModel, BuilderModelSchema, BuilderModelSerialisedSchema, model, modelsMerge } from './model/index.js';
2
2
  export { Builder, builder, BuilderSchema, BuilderSerialisedSchema } from './builder/index.js';
3
- export { BuilderCollection, BuilderCollectionConfig, BuilderCollectionConfigSchema, BuilderCollectionConfigSerialisedSchema, BuilderCollectionSchema, BuilderCollectionSelectMapSerialisedSchema, BuilderCollectionSerialisedSchema, BuilderCollectionsSerialisedSchema, BuilderCollectionWhenSerialisedSchema, collectionConfig, collectionExpectation, collectionWhen } from './collection/index.js';
4
- export { BuilderComponent, BuilderComponentDetails, BuilderComponentDetailsSchema, BuilderComponentDetailsSerialisedSchema, BuilderComponentField, BuilderComponentFieldSchema, BuilderComponentFieldSerialisedSchema, BuilderComponentFieldsSchema, BuilderComponentFieldsSerialisedSchema, BuilderComponentFieldValueTypeSchema, BuilderComponentSchema, BuilderComponentSelectMapSerialisedSchema, BuilderComponentSerialisedSchema, BuilderComponentsSerialisedSchema, BuilderComponentWhenSerialisedSchema, componentDetails, componentExpectation, componentWhen, detailBoolean, detailNumber, detailString, detailValueSchema } from './component/index.js';
3
+ export { BuilderCollection, BuilderCollectionConfig, BuilderCollectionConfigSchema, BuilderCollectionConfigSerialisedSchema, BuilderCollectionConfigsSerialisedSchema, BuilderCollectionSchema, BuilderCollectionSelectMapSerialisedSchema, BuilderCollectionSerialisedSchema, BuilderCollectionsSerialisedSchema, BuilderCollectionWhenSerialisedSchema, collectionConfig, collectionExpectation, collectionWhen } from './collection/index.js';
4
+ export { BuilderComponent, BuilderComponentConfig, BuilderComponentConfigSchema, BuilderComponentConfigSerialisedSchema, BuilderComponentConfigsSerialisedSchema, BuilderComponentField, BuilderComponentFieldSchema, BuilderComponentFieldSerialisedSchema, BuilderComponentFieldsSchema, BuilderComponentFieldsSerialisedSchema, BuilderComponentFieldValueTypeSchema, BuilderComponentSchema, BuilderComponentSelectMapSerialisedSchema, BuilderComponentSerialisedSchema, BuilderComponentsSerialisedSchema, BuilderComponentWhenSerialisedSchema, componentConfig, componentExpectation, componentWhen, detailBoolean, detailNumber, detailString, detailValueSchema } from './component/index.js';
5
5
  export { parameter, ref } from '../references.js';
6
6
  export { BuilderPricing, BuilderPricingExpressionSchema, BuilderPricingLookupKeySchema, BuilderPricingReduceSchema, BuilderPricingSchema, BuilderPricingSerialisedSchema, BuilderRatesSchema, pricing } from './pricing/index.js';
7
7
  export { BuilderTagsSchema } from './tags.js';
8
8
  export { BuilderExpectation, BuilderExpectationKindSchema, BuilderExpectationSchema, BuilderExpectationSerialisedSchema, BuilderExpectationsSchema, BuilderExpectationsSerialisedSchema } from './expectation.js';
9
9
  export { BuilderEntityKindSchema, BuilderEntitySerialisedSchema } from './kind.js';
10
- export { BuilderOption, BuilderOptionSchema, BuilderOptionSelectMapSerialisedSchema, BuilderOptionSerialisedSchema, BuilderOptionsSerialisedSchema, BuilderOptionValuesSchema, BuilderOptionValuesSerialisedSchema, BuilderOptionWhenSerialisedSchema, BuilderSelectType, BuilderSelectTypeSchema, BuilderSelectTypeSerialisedSchema, BuilderToggleType, BuilderToggleTypeSchema, BuilderToggleTypeSerialisedSchema, optionExpectation, optionValueSchema, optionWhen, select, toggleBoolean, toggleNumber, toggleString } from './option/index.js';
10
+ export { BuilderOption, BuilderOptionSchema, BuilderOptionSelectMapSerialisedSchema, BuilderOptionSerialisedSchema, BuilderOptionsSerialisedSchema, BuilderOptionConfigSchema, BuilderOptionConfigSerialisedSchema, BuilderOptionConfigsSerialisedSchema, BuilderOptionWhenSerialisedSchema, BuilderSelectConfig, BuilderSelectConfigSchema, BuilderSelectConfigSerialisedSchema, BuilderToggleConfig, BuilderToggleConfigSchema, BuilderToggleConfigSerialisedSchema, optionExpectation, optionValueSchema, optionWhen, select, toggleBoolean, toggleNumber, toggleString } from './option/index.js';
11
11
  export { serialise } from './serialise.js';
12
12
  export { BuilderDescriptionItemSchema, BuilderDescriptionSchema, BuilderUI, BuilderUIDescribe, BuilderUIDescribeSchema, BuilderUIDescribeSerialisedSchema, BuilderUIInput, BuilderUIInputMetadataSchema, BuilderUIInputSchema, BuilderUIInputSerialisedSchema, BuilderUIInputsSerialisedSchema, BuilderUIItemSerialisedSchema, BuilderUIItemsSerialisedSchema, BuilderUIPage, BuilderUIPages, BuilderUIPageSchema, BuilderUIPageSerialisedSchema, BuilderUIPagesSchema, BuilderUIPagesSerialisedSchema, BuilderUISchema, BuilderUISerialisedSchema, input, uis } from './ui/index.js';
13
13
  export { BuilderWhenConfigSchema, BuilderWhenEnableSchema, BuilderWhenMatchSchema, BuilderWhenSerialisedSchema, BuilderWhenUnlessSchema, createWhenFactories, createWhenSerialisedSchema } from './when.js';
@@ -2,7 +2,7 @@ import type { EntitiesMap } from './serialise';
2
2
  import * as v from 'valibot';
3
3
  import { entitiesMap } from './serialise.js';
4
4
  export type BuilderEntityKind = keyof typeof entitiesMap;
5
- export declare const BuilderEntityKindSchema: v.PicklistSchema<readonly ("string" | "number" | "boolean" | "builder" | "model" | "pricing" | "ui" | "select" | "toggle" | "path" | "optionSelectMap" | "optionWhen" | "componentDetails" | "componentSelectMap" | "componentWhen" | "collectionConfig" | "collectionSelectMap" | "collectionWhen" | "uiDescribe" | "uiItems" | "uiPage" | "uiPages" | "uiInput" | "pricingRates" | "expectations" | "paths")[], undefined>;
5
+ export declare const BuilderEntityKindSchema: v.PicklistSchema<readonly ("string" | "number" | "boolean" | "builder" | "model" | "pricing" | "ui" | "select" | "toggle" | "path" | "optionSelectMap" | "optionWhen" | "componentConfig" | "componentSelectMap" | "componentWhen" | "collectionConfig" | "collectionSelectMap" | "collectionWhen" | "uiDescribe" | "uiItems" | "uiPage" | "uiPages" | "uiInput" | "pricingRates" | "expectations" | "paths")[], undefined>;
6
6
  export type BuilderEntitySerialised = {
7
7
  [Kind in keyof EntitiesMap]: v.InferOutput<EntitiesMap[Kind]['serialised']>;
8
8
  }[keyof EntitiesMap];
@@ -1,7 +1,7 @@
1
1
  export type { BuilderModelGeneric, BuilderInstanceOf, BuilderModelSerialised, BuilderModelStateOf } from './model';
2
2
  export type { BuilderModels } from './models';
3
3
  export type { BuilderModelStateAsserted } from './expectation';
4
- export type { BuilderModelBindings } from './bind';
4
+ export type { BuilderModelBindings, BuilderModelBoundState } from './bind';
5
5
  export type { BuilderModelState, BuilderModelStateEmpty } from './state';
6
6
  export { BuilderModel, BuilderModelSchema, BuilderModelSerialisedSchema, model } from './model.js';
7
7
  export { modelsMerge } from './models.js';