/** * Lexicon JSON generator — produces lexicon-aws.json with metadata for all resources. * * Output is a Record keyed by generated class name. */ import type { SchemaParseResult } from "../spec/parse.js"; import type { NamingStrategy } from "./naming.js"; import type { ExtensionConstraint } from "./extensions.js"; import type { PropertyConstraints } from "@intentius/chant/codegen/json-schema"; export interface LexiconEntry { resourceType: string; kind: "resource" | "property"; lexicon: "aws"; attrs?: Record; constraints?: ExtensionConstraint[]; propertyConstraints?: Record; createOnly?: string[]; writeOnly?: string[]; primaryIdentifier?: string[]; deprecatedProperties?: string[]; conditionalCreateOnly?: string[]; replacementStrategy?: "delete_then_create" | "create_then_delete"; tagging?: { taggable: boolean; tagOnCreate: boolean; tagUpdatable: boolean; }; runtimeDeprecations?: Record; } /** * Generate the lexicon-aws.json content. */ export declare function generateLexiconJSON(results: SchemaParseResult[], naming: NamingStrategy, constraints: Map, runtimeDeprecations: Record | null): string; /** * Lambda runtime deprecation fallback data. */ export declare function lambdaRuntimeDeprecations(): Record; //# sourceMappingURL=generate-lexicon.d.ts.map