import { CompilerContext } from '../compilerContext.js';
import type { ControlFlowGraph } from '../cfg/types.js';
import type { ServiceRegistry } from '../discovery/serviceDiscovery.js';
import type { StepFunctionCallSite } from '../discovery/callSiteLocator.js';
import type { InlineBinding } from '../analysis/asyncHelperAnalyzer.js';
import type { WholeProgramAnalyzer } from '../analysis/wholeProgramAnalyzer.js';
import { type PathDialect } from './pathDialect.js';
import type { StateMachineDefinition } from '../../asl/types.js';
/**
 * Generate an ASL StateMachineDefinition from a compiled call site.
 */
export declare function generateStateMachine(context: CompilerContext, callSite: StepFunctionCallSite, cfg: ControlFlowGraph, serviceRegistry: ServiceRegistry, substitutions?: Readonly<Record<string, unknown>>, analyzer?: WholeProgramAnalyzer, inlineBindings?: readonly InlineBinding[], dialect?: PathDialect, timeoutSeconds?: number, version?: string, sourceMap?: boolean): StateMachineDefinition;
/**
 * Derive the state machine name from the call site.
 *
 * For `export const processOrder = Steps.createFunction(...)`, returns "processOrder".
 * For `@stepFunction method() { ... }`, returns the method name.
 */
export declare function deriveStateMachineName(callSite: StepFunctionCallSite): string;
export { buildStateMachine } from './stateBuilder.js';
export { buildParameters, buildChoiceRule } from './expressionMapper.js';
export { type PathDialect, JsonPathDialect, JSON_PATH_DIALECT, JsonataDialect, JSONATA_DIALECT } from './pathDialect.js';
//# sourceMappingURL=index.d.ts.map