import { Overlay } from '@blocksuite/affine-block-surface'; import { Bound, type IVec } from '@blocksuite/global/gfx'; import type { GfxModel } from '@blocksuite/std/gfx'; export declare class SnapOverlay extends Overlay { static overlayName: string; private _skippedElements; private _referenceBounds; /** * This variable contains reference lines that are * generated by the 'Distribute Alignment' function. This alignment is achieved * by evenly distributing elements based on specified alignment rules. * These lines serve as a guide for achieving equal spacing or distribution * among multiple graphics or design elements. */ private _distributedAlignLines; /** * This variable holds reference lines that are calculated * based on the self-alignment of the graphics. This alignment is determined * according to various aspects of the graphic itself, such as the center, edges, * corners, etc. It essentially represents the guidelines for the positioning * and alignment within the individual graphic elements. */ private _intraGraphicAlignLines; clear(): void; private _alignDistributeHorizontally; private _alignDistributeVertically; private _calculateClosestDistances; /** * Update horizontal moving distance `rst.dx` to align with other bound. * Also, update the align points to draw. * @param rst * @param bound * @param other * @param distance */ private _updateXAlignPoint; /** * Update vertical moving distance `rst.dy` to align with other bound. * Also, update the align points to draw. * @param rst * @param bound * @param other * @param distance */ private _updateYAlignPoint; alignResize(position: IVec, direction: ('vertical' | 'horizontal')[]): { dx: number; dy: number; }; align(bound: Bound): { dx: number; dy: number; }; render(ctx: CanvasRenderingContext2D): void; private _isSkippedElement; private _updateAlignCandidates; setMovingElements(movingElements: GfxModel[], excludes?: GfxModel[]): Bound; } //# sourceMappingURL=snap-overlay.d.ts.map