/** * Property lookup resolution through type hierarchies, binding registries, and type-member indices. * * Core property type resolution: * - getPropertyType: Public entry point for property type lookup * - resolveLocalTypeInfo: Resolve reference type to local type info * - resolveLocalTypeInfoWithoutBindings: Direct local type resolution * - resolveBindingBackedReferenceType: Resolve via bindings registry * - resolvePropertyType: Internal recursive property resolution * - findPropertyInMembers / findPropertyInClassMembers: Member lookup * - withOptionalUndefined: Optional property type wrapping */ import type { IrType, IrInterfaceMember, IrClassMember, IrPropertySignature } from "@tsonic/frontend"; import type { EmitterContext } from "../../types.js"; import type { LocalTypeInfo } from "../../emitter-types/core.js"; export declare const getPropertyType: (contextualType: IrType | undefined, propertyName: string, context: EmitterContext) => IrType | undefined; export declare const resolveLocalTypeInfo: (ref: Extract, context: EmitterContext) => { readonly info: LocalTypeInfo; readonly namespace: string; readonly name: string; } | undefined; export declare const resolveLocalTypeInfoWithoutBindings: (ref: Extract, context: EmitterContext) => { readonly info: LocalTypeInfo; readonly namespace: string; readonly name: string; } | undefined; export declare const resolveBindingBackedReferenceType: (ref: Extract, context: EmitterContext) => Extract | undefined; export declare const resolveBindingBackedPropertySignatures: (ref: Extract, context: EmitterContext) => readonly IrPropertySignature[] | undefined; /** * Internal helper for property type resolution with cycle detection */ export declare const resolvePropertyType: (type: IrType, propertyName: string, context: EmitterContext, visitedTypes: readonly string[]) => IrType | undefined; /** * Find property type in interface members */ export declare const findPropertyInMembers: (members: readonly IrInterfaceMember[], propertyName: string) => IrType | undefined; export declare const withOptionalUndefined: (type: IrType, isOptional: boolean) => IrType; /** * Find property type in class members */ export declare const findPropertyInClassMembers: (members: readonly IrClassMember[], propertyName: string) => IrType | undefined; //# sourceMappingURL=property-lookup-resolution.d.ts.map