import { BooleanOption, getOptionValues } from "../../RendererOptions/index.js";
import { TargetLanguage } from "../../TargetLanguage.js";
import { TypeScriptEffectSchemaRenderer } from "./TypeScriptEffectSchemaRenderer.js";
export const typeScriptEffectSchemaOptions = {
    justSchema: new BooleanOption("just-schema", "Schema only", false),
};
export const typeScriptEffectSchemaLanguageConfig = {
    displayName: "TypeScript Effect Schema",
    names: ["typescript-effect-schema"],
    extension: "ts",
};
export class TypeScriptEffectSchemaTargetLanguage extends TargetLanguage {
    constructor() {
        super(typeScriptEffectSchemaLanguageConfig);
    }
    getOptions() {
        return {};
    }
    makeRenderer(renderContext, untypedOptionValues) {
        return new TypeScriptEffectSchemaRenderer(this, renderContext, getOptionValues(typeScriptEffectSchemaOptions, untypedOptionValues));
    }
}
