import type { OrdinalSceneNode, OrdinalLayout } from "../ordinalTypes";
import type { OrdinalSceneContext } from "./types";
/**
 * Bar-funnel scene builder (vertical orientation).
 *
 * Renders funnel data as vertical bars — one per step on the x-axis.
 * Each bar is stacked: solid bottom = retained value, hatched top = dropoff
 * from the previous step. The first step has no dropoff (100% solid).
 *
 * Multi-category: bars are grouped side-by-side within each step,
 * each with its own retained + dropoff stack.
 *
 * The rScale (y-axis) is set by the pipeline based on the data's max value.
 * Bars are sized proportionally via scales.r so the first step fills the
 * available height and subsequent steps shrink relative to it.
 *
 * Metadata on each rect datum (used by barFunnelLabelRenderer):
 *  - __barFunnelValue: numeric value for this bar
 *  - __barFunnelPercent: percent of this category's first-step value
 *  - __barFunnelIsFirstStep: true for step index 0
 *  - __barFunnelIsDropoff: true for the dropoff portion (hatched)
 *  - __barFunnelStep: step name
 *  - __barFunnelDropoffValue: the dropoff amount
 *  - __barFunnelCategory: category key (for multi-category)
 *  - __barFunnelLabelX/Y: position for the floating label
 */
export declare function buildBarFunnelScene(ctx: OrdinalSceneContext, _layout: OrdinalLayout): OrdinalSceneNode[];
