/**
 * Almadar Visual Language (AVL) shared types.
 *
 * Every AVL atom renders a `<g>` element (not `<svg>`) and accepts
 * AvlBaseProps for positioning and styling within a parent SVG.
 */
export interface AvlBaseProps {
    x?: number;
    y?: number;
    color?: string;
    opacity?: number;
    className?: string;
}
export type AvlEffectType = 'render-ui' | 'set' | 'persist' | 'fetch' | 'emit' | 'navigate' | 'notify' | 'call-service' | 'spawn' | 'despawn' | 'do' | 'if' | 'log';
export type AvlFieldTypeKind = 'string' | 'number' | 'boolean' | 'date' | 'enum' | 'object' | 'array';
export type AvlPersistenceKind = 'persistent' | 'runtime' | 'singleton' | 'instance';
export type AvlOperatorNamespace = 'arithmetic' | 'comparison' | 'logic' | 'string' | 'collection' | 'time' | 'control' | 'async';
export declare const AVL_OPERATOR_COLORS: Record<AvlOperatorNamespace, string>;
export declare const AVL_FIELD_TYPE_SHAPES: Record<AvlFieldTypeKind, string>;
export type StateRole = 'initial' | 'terminal' | 'hub' | 'error' | 'default';
export declare const STATE_COLORS: Record<StateRole, {
    fill: string;
    border: string;
}>;
export type EffectCategory = 'ui' | 'data' | 'communication' | 'lifecycle' | 'control';
export declare const EFFECT_CATEGORY_COLORS: Record<EffectCategory, {
    color: string;
    bg: string;
}>;
export declare const EFFECT_TYPE_TO_CATEGORY: Record<AvlEffectType, EffectCategory>;
export declare const CONNECTION_COLORS: {
    readonly forward: {
        readonly color: "#1E293B";
        readonly width: 2;
        readonly dash: "none";
    };
    readonly backward: {
        readonly color: "#94A3B8";
        readonly width: 1.5;
        readonly dash: "6 3";
    };
    readonly selfLoop: {
        readonly color: "#CBD5E1";
        readonly width: 1;
        readonly dash: "3 2";
    };
    readonly emitListen: {
        readonly color: "#F97316";
        readonly width: 1.5;
        readonly dash: "4 3";
    };
};
export declare function getStateRole(name: string, isInitial?: boolean, isTerminal?: boolean, transitionCount?: number, maxTransitionCount?: number): StateRole;
