import { ConvenienceRenderer } from "../../ConvenienceRenderer.js";
import { type Name, type Namer } from "../../Naming.js";
import type { RenderContext } from "../../Renderer.js";
import type { OptionValues } from "../../RendererOptions/index.js";
import type { TargetLanguage } from "../../TargetLanguage.js";
import { type ObjectType } from "../../Type/index.js";
import type { typeScriptEffectSchemaOptions } from "./language.js";
export declare class TypeScriptEffectSchemaRenderer extends ConvenienceRenderer {
    private readonly _options;
    private emittedObjects;
    constructor(targetLanguage: TargetLanguage, renderContext: RenderContext, _options: OptionValues<typeof typeScriptEffectSchemaOptions>);
    protected forbiddenNamesForGlobalNamespace(): string[];
    protected nameStyle(original: string, upper: boolean): string;
    protected makeNamedTypeNamer(): Namer;
    protected makeUnionMemberNamer(): Namer;
    protected namerForObjectProperty(): Namer;
    protected makeEnumCaseNamer(): Namer;
    private importStatement;
    protected emitImports(): void;
    private typeMapTypeForProperty;
    private typeMapTypeFor;
    private emitObject;
    private emitEnum;
    protected walkObjectNames(objectType: ObjectType): Name[];
    protected emitSchemas(): void;
    protected emitSourceStructure(): void;
}
