import ts from 'typescript';
import { CompilerContext } from '../compilerContext.js';
import { type VariableResolution } from '../analysis/variableResolver.js';
import type { ChoiceRule } from '../../asl/types.js';
import { type PathDialect } from './pathDialect.js';
/**
 * Convert a TS object literal expression to ASL Parameters/Arguments.
 *
 * JSONPath: { id: input.id, name: "fixed" } → { "id.$": "$.id", "name": "fixed" }
 * JSONata: { id: input.id, name: "fixed" } → { "id": "{% $states.input.id %}", "name": "fixed" }
 */
export declare function buildParameters(context: CompilerContext, expr: ts.ObjectLiteralExpression, variables: VariableResolution, dialect?: PathDialect): Record<string, unknown>;
/**
 * Convert a TS condition expression to an ASL ChoiceRule.
 *
 * JSONPath: input.mode === 'fast' → { Variable: "$.mode", StringEquals: "fast", Next }
 * JSONata: input.mode === 'fast' → { Condition: "{% $states.input.mode = 'fast' %}", Next }
 */
export declare function buildChoiceRule(context: CompilerContext, expr: ts.Expression, nextState: string, variables: VariableResolution, dialect?: PathDialect): ChoiceRule;
//# sourceMappingURL=expressionMapper.d.ts.map