import type { Bounds4, BoxBounds, Point } from 'ag-charts-core';
import type { PointProperties } from '../annotationProperties';
import type { AnnotationContext } from '../annotationTypes';
import { FibonacciScene } from '../scenes/fibonacciScene';
import { DivariantHandle } from '../scenes/handle';
import type { StartEndHandle } from '../scenes/startEndScene';
import type { FibonacciRetracementProperties } from './fibonacciRetracementProperties';
export declare class FibonacciRetracementScene extends FibonacciScene<FibonacciRetracementProperties> {
    static is(value: unknown): value is FibonacciRetracementScene;
    type: string;
    activeHandle?: StartEndHandle;
    protected readonly start: DivariantHandle;
    protected readonly end: DivariantHandle;
    protected readonly ignoreYBounds?: boolean;
    protected dragState?: {
        offset: Point;
        start: Point;
        end: Point;
    };
    constructor();
    containsPoint(x: number, y: number): boolean;
    getNodeAtCoords(x: number, y: number): string | undefined;
    dragStart(datum: FibonacciRetracementProperties, target: Point, context: AnnotationContext): void;
    stopDragging(): void;
    protected dragAll(datum: FibonacciRetracementProperties, target: Point, context: AnnotationContext): void;
    dragHandle(datum: FibonacciRetracementProperties, target: Point, context: AnnotationContext, snapping: boolean): void;
    snapToAngle(datum: FibonacciRetracementProperties, coords: Point, context: AnnotationContext): Pick<PointProperties, 'x' | 'y'> | undefined;
    translatePoints({ datum, start, end, translation, context, }: {
        datum: FibonacciRetracementProperties;
        start: Point;
        end: Point;
        translation: Point;
        context: AnnotationContext;
    }): void;
    translate(datum: FibonacciRetracementProperties, translation: Point, context: AnnotationContext): void;
    copy(datum: FibonacciRetracementProperties, copiedDatum: FibonacciRetracementProperties, context: AnnotationContext): FibonacciRetracementProperties | undefined;
    toggleHandles(show: boolean | Partial<Record<StartEndHandle, boolean>>): void;
    toggleActive(active: boolean): void;
    protected updateHandles(datum: FibonacciRetracementProperties, coords: Bounds4, _coords2: Bounds4, bbox?: BoxBounds): void;
    protected getHandleCoords(_datum: FibonacciRetracementProperties, coords: Bounds4, handle: StartEndHandle, _bbox?: BoxBounds): Point;
}
