Skip to content

rune-langium / codegen/src/export / GeneratorOptions

Interface: GeneratorOptions ​

Defined in: packages/codegen/src/types.ts:76

Options for a generation run. FR-001 (target selection), FR-022 (strict mode).

Extended by ​

Properties ​

PropertyTypeDescriptionDefined in
excel?{ sheets: { conditions: boolean; enums: boolean; typeAliases: boolean; types: boolean; }; }-packages/codegen/src/types.ts:120
excel.sheets{ conditions: boolean; enums: boolean; typeAliases: boolean; types: boolean; }-packages/codegen/src/options/excel-options.ts:22
excel.sheets.conditionsboolean-packages/codegen/src/options/excel-options.ts:27
excel.sheets.enumsboolean-packages/codegen/src/options/excel-options.ts:25
excel.sheets.typeAliasesboolean-packages/codegen/src/options/excel-options.ts:26
excel.sheets.typesboolean-packages/codegen/src/options/excel-options.ts:24
headerComment?stringOptional string prepended to each emitted file's header comment. Do NOT set when requiring byte-identical output (SC-007).packages/codegen/src/types.ts:93
json-schema?{ layout?: "per-namespace" | "single-file"; }-packages/codegen/src/types.ts:114
json-schema.layout?"per-namespace" | "single-file"-packages/codegen/src/options/target-options-schema.ts:23
markdown?{ layout?: "per-namespace" | "barrel"; }-packages/codegen/src/types.ts:116
markdown.layout?"per-namespace" | "barrel"-packages/codegen/src/options/target-options-schema.ts:30
namespaces?readonly string[]Optional namespace allowlist (019 spec §5.1/§5.3). When present, only these namespaces are emitted; everything else in the parsed workspace is dropped before registry-build + walk. When absent, all namespaces are emitted (existing behavior — CLI / direct callers see no change). The caller is responsible for passing a dependency-closed set — the studio's Download modal computes the transitive closure (§5.2) so emitted code never references a dropped namespace. A non-closed set passed directly may produce output with unresolved imports.packages/codegen/src/types.ts:105
openapi?{ crud?: | boolean | { types: string[]; }; format?: "json" | "yaml"; }-packages/codegen/src/types.ts:124
openapi.crud?| boolean | { types: string[]; }-packages/codegen/src/options/openapi-options.ts:29
openapi.format?"json" | "yaml"-packages/codegen/src/options/openapi-options.ts:28
projectBindings?ReadonlyMap<RosettaFunction, { dispatch?: string; kind: string; model: string; name: string; namespace: string; }>Host-resolved native bindings. Configuration and executable callbacks never enter generated source.packages/codegen/src/types.ts:80
projectResources?Pick<{ implementationSymbols: { dispatch?: string; kind: string; model: string; name: string; namespace: string; }[]; invokeByKey: (key, args) => unknown; codeList(symbol): readonly CodeListValue[] | undefined; codeListForType(type): readonly CodeListValue[] | undefined; implementationStatus(targetId): | { available: boolean; reason: string | undefined; } | undefined; invoke(symbol, args): unknown; validateCode(symbol, value): | { message: string; path: string; } | undefined; }, "codeListForType">Prepared resource lookup from the active project, never parsed configuration.packages/codegen/src/types.ts:78
selection?ExportSelectionOptional top-level declaration roots for a dependency-closed export.packages/codegen/src/types.ts:107
sql?{ dialect?: "postgres" | "sqlserver"; enumStrategy?: "check" | "table"; inheritance?: "single-table" | "table-per-type"; layout?: "per-namespace" | "single-file"; }-packages/codegen/src/types.ts:115
sql.dialect?"postgres" | "sqlserver"-packages/codegen/src/options/target-options-schema.ts:25
sql.enumStrategy?"check" | "table"-packages/codegen/src/options/target-options-schema.ts:27
sql.inheritance?"single-table" | "table-per-type"-packages/codegen/src/options/target-options-schema.ts:26
sql.layout?"per-namespace" | "single-file"-packages/codegen/src/options/target-options-schema.ts:28
strict?booleanIf true, any GeneratorDiagnostic with severity 'error' causes generate() to throw a GeneratorError instead of returning a partial result. FR-022.packages/codegen/src/types.ts:88
target?TargetSelects the emitter pipeline. Defaults to 'zod'.packages/codegen/src/types.ts:82
typescript?{ decorators?: boolean; inlineHelpers?: boolean; inputChecks?: boolean; layout?: "per-namespace" | "barrel" | "single-file"; serialization?: "zod" | "runtime"; }-packages/codegen/src/types.ts:113
typescript.decorators?boolean-packages/codegen/src/options/target-options-schema.ts:20
typescript.inlineHelpers?boolean-packages/codegen/src/options/target-options-schema.ts:19
typescript.inputChecks?boolean-packages/codegen/src/options/target-options-schema.ts:18
typescript.layout?"per-namespace" | "barrel" | "single-file"-packages/codegen/src/options/target-options-schema.ts:16
typescript.serialization?"zod" | "runtime"-packages/codegen/src/options/target-options-schema.ts:21
zod?{ codecs?: boolean; layout?: "per-namespace" | "barrel" | "single-file"; }-packages/codegen/src/types.ts:112
zod.codecs?boolean-packages/codegen/src/options/target-options-schema.ts:16
zod.layout?"per-namespace" | "barrel" | "single-file"-packages/codegen/src/options/target-options-schema.ts:16

Core packages released under MIT. Studio app released under FSL-1.1-ALv2.