import type { PagePlacement, PagePlacementOperation } from '@pdfrx/viewer-core'; /** * Creates an absolute rotation command from a relative clockwise delta. * * @param page - The page to process. * @param delta - The amount of change to apply. * @returns The resulting PagePlacementOperation. * */ export declare function rotatePlacement(page: PagePlacement, delta: 90 | 180 | 270): PagePlacementOperation; /** * Inserts an independently addressable copy immediately after the source placement. * * @param page - The page to process. * @param placementId - The stable placement identifier. * @returns The resulting PagePlacementOperation. * */ export declare function duplicatePlacement(page: PagePlacement, placementId: string): PagePlacementOperation; /** * Converts the thumbnail list's `(fromPageNumber, toIndex)` drop coordinates * into a stable placement-ID move. Returns `null` for an unchanged position. * @param pages - The pages to process, in document order. * @param fromPageNumber - The from page number. * @param toIndex - The 0-based to index. * @returns The resulting page operation, or `null` when no move is needed. * */ export declare function movePlacementToIndex(pages: readonly PagePlacement[], fromPageNumber: number, toIndex: number): PagePlacementOperation | null; /** * Returns a compact human-readable operation label for an activity log. * * @param operation - The operation to apply. * @returns The resulting string. * */ export declare function describePageOperation(operation: PagePlacementOperation): string; //# sourceMappingURL=ui-operations.d.ts.map