import { AnalyzedDamlTypeDefinition } from "../analysis/analyzed-daml-type-definition.js"; import { DamlInterfacePackageMetadata } from "../analysis/daml-interface-analyzer.js"; import { GeneratedNamedTypeFile } from "../emission-model/generated-named-type-file.js"; import { GeneratedTemplateBindingFile } from "../emission-model/generated-template-binding-file.js"; import { TypeScriptNameResolver } from "./type-script-name-resolver.js"; import { type DamlModuleImportStyle } from "./daml-module-import-style.js"; /** Emits TypeScript declarations for modeled named DAML records, variants, and enums. */ export declare class NamedTypeEmitter { private readonly nameResolver; constructor(nameResolver?: TypeScriptNameResolver); /** Prepares shared package/module output mappings with template emission. */ prepareProjectOrThrow(templates: readonly import("../analysis/analyzed-template.js").AnalyzedTemplate[], definitions: readonly AnalyzedDamlTypeDefinition[], packageMetadata?: ReadonlyMap): void; /** Emits one `types.ts` module for every modeled DAML package/module identity. */ emitNamedTypeFiles(definitions: readonly AnalyzedDamlTypeDefinition[], moduleImportStyle?: DamlModuleImportStyle): readonly GeneratedNamedTypeFile[]; /** Emits named type files from an already prepared shared name resolver. */ emitPreparedNamedTypeFiles(definitions: readonly AnalyzedDamlTypeDefinition[], templateFiles?: readonly GeneratedTemplateBindingFile[], moduleImportStyle?: DamlModuleImportStyle): readonly GeneratedNamedTypeFile[]; private emitDefinition; private emitImports; private resolveExternalTypeAliases; private getExternalTypeAlias; private getNamedReferences; private getTypeName; private getArrayElementTypeName; private getPrimitiveTypeName; private resolveTypeParameterNames; private getDefinitionTypeParameters; private getTypeParameterName; private getTypeParameters; private getTypeParameterKey; private resolveModulesOrThrow; private resolveDefinitionNamesOrThrow; private resolveCollisionSafeNames; private getReservedModuleExports; private getReservedRuntimeBindings; private mergeReservedNames; private resolveFieldPropertyNames; private getFieldPropertyName; private getFieldKey; private safePropertyName; private getModuleKeyFromTemplateIdentity; private relativeFilePath; private getDefinitionName; private getNamedReferenceTypeName; private getModuleKey; private getDefinitionKey; private safeTypeName; private getRuntimePrimitiveTypes; private shortHash; }