/**
 * Layout algorithm for the Al-Jazari state machine visualization.
 * Pure TypeScript — zero React/DOM dependencies.
 *
 * 1. BFS from initial state to order states by graph distance.
 * 2. Horizontal distribution of gears along the golden axis.
 * 3. Transition arm routing: forward arcs above, backward arcs below, self-loops above.
 * 4. Guard icons at 30% along arm, effect icons at 70%.
 */
import type { JazariLayout } from './types.js';
export interface LayoutState {
    name: string;
    isInitial?: boolean;
    isTerminal?: boolean;
    isFinal?: boolean;
}
export interface LayoutTransition {
    from: string;
    to: string;
    event: string;
    guard?: unknown;
    effects?: unknown[];
}
export interface LayoutInput {
    states: LayoutState[];
    transitions: LayoutTransition[];
    entityFields?: string[];
    direction?: 'ltr' | 'rtl';
}
export declare function computeJazariLayout(input: LayoutInput): JazariLayout;
