/**
 * Yield Main Expression Lowering
 *
 * Lowers yield expressions that appear inside larger expression trees
 * (binary, call, member-access, conditional, etc.) into leading
 * IrYieldStatement nodes plus a rewritten expression that references
 * temporary identifiers.
 */
import { IrExpression, IrType } from "../types.js";
import { type LoweringContext, type LoweredExpressionWithYields } from "./yield-lowering-helpers.js";
/**
 * Lower yield expressions that appear inside larger expression trees into
 * leading IrYieldStatement nodes plus a rewritten expression that references
 * temp identifiers.
 *
 * This preserves left-to-right evaluation order for supported expression forms.
 * Unsupported forms emit TSN6101 and return undefined.
 */
export declare const lowerExpressionWithYields: (expression: IrExpression, ctx: LoweringContext, position: string, expectedType?: IrType) => LoweredExpressionWithYields | undefined;
//# sourceMappingURL=yield-main-expression-lowering.d.ts.map