/**
 * Anonymous Type Naming & Member Conversion
 *
 * Named type generation, object-to-class member conversion, and behavioral
 * object type name creation for anonymous type lowering.
 */
import type { IrInterfaceMember, IrObjectType, IrClassMember, IrExpression } from "../types.js";
import type { LoweringContext } from "./anon-type-ir-rewriting.js";
/**
 * Convert interface members to class property declarations
 */
export declare const interfaceMembersToClassMembers: (members: readonly IrInterfaceMember[]) => readonly IrClassMember[];
export declare const classMembersToInterfaceMembers: (members: readonly IrClassMember[]) => readonly IrInterfaceMember[];
/**
 * Get or create a generated type name for an object type shape
 */
export declare const getOrCreateTypeName: (objectType: IrObjectType, ctx: LoweringContext) => string;
export declare const isReusableStructuralCarrierName: (name: string) => boolean;
export declare const getOrCreateBehavioralObjectTypeName: (objectType: IrObjectType, behaviorMembers: readonly IrClassMember[], sourceLocation: IrExpression["sourceSpan"] | undefined, ctx: LoweringContext) => string;
//# sourceMappingURL=anon-type-naming.d.ts.map