/**
 * Svelte action for arrow animations. Two strategies depending on mode:
 *
 *  • 'draw' / 'undraw' / 'draw-undraw' — clip-path inset on the host <svg>.
 *    Doesn't touch stroke-dasharray, so dashed/dotted patterns are preserved
 *    while the path is progressively revealed/hidden from one side.
 *
 *  • 'flow' — marching ants. Continuously shifts stroke-dashoffset on the
 *    inner .arrow-path, so the dash pattern appears to flow along the path
 *    like a current. Forward/reverse controls flow direction. Inherently
 *    looping; the loop flag is ignored.
 */
export interface ArrowClipDrawParams {
    enabled: boolean;
    mode: 'draw' | 'undraw' | 'draw-undraw' | 'flow' | 'none' | string;
    duration: number;
    startX: number;
    startY: number;
    endX: number;
    endY: number;
    loop?: boolean;
    reverse?: boolean;
    /** Slide loop duration in ms. When provided AND loop=true (or mode='flow'),
     * the effective animation duration is rounded so an integer number fits in
     * slide_duration — guarantees seamless GIF loop. */
    slideDuration?: number;
    key?: unknown;
}
export declare function arrowClipDraw(node: SVGSVGElement, params: ArrowClipDrawParams): {
    update(p: ArrowClipDrawParams): void;
    destroy(): void;
};
