import { type Editor } from '@tiptap/core'; import { type WorkDocumentImageWrapContour, type WorkDocumentImageWrapSide } from './work-document-image-wrap-contour'; export type WorkDocumentImageLayout = 'inline' | 'square' | 'tight' | 'through' | 'topBottom' | 'none'; export type WorkDocumentImageAlignment = 'left' | 'center' | 'right'; export type WorkDocumentImageHorizontalReference = 'column' | 'margin' | 'page'; export type WorkDocumentImageVerticalReference = 'paragraph' | 'margin' | 'page'; export interface WorkDocumentImagePosition { horizontalOffset: number | null; verticalOffset: number | null; horizontalReference: WorkDocumentImageHorizontalReference; verticalReference: WorkDocumentImageVerticalReference; } export interface WorkDocumentImageCrop { top: number; right: number; bottom: number; left: number; } export type WorkDocumentImageRotation = 0 | 90 | 180 | 270; export interface WorkDocumentImageTransform { rotation: WorkDocumentImageRotation; flipHorizontal: boolean; flipVertical: boolean; } export interface WorkDocumentImageLayer { relativeHeight: number; behindDocument: boolean; allowOverlap: boolean; layoutInCell: boolean; lockAnchor: boolean; } export interface WorkDocumentImageLayoutOptions { layout: WorkDocumentImageLayout; alignment: WorkDocumentImageAlignment; wrapDistance: number; wrapSide: WorkDocumentImageWrapSide; } export interface WorkDocumentImageProperties extends WorkDocumentImageLayoutOptions { width: number | null; height: number | null; lockAspectRatio: boolean; alternativeText: string; position?: WorkDocumentImagePosition | null; crop?: WorkDocumentImageCrop | null; transform?: WorkDocumentImageTransform | null; contour?: WorkDocumentImageWrapContour | null; layer?: WorkDocumentImageLayer | null; } export type { WorkDocumentImageWrapContour, WorkDocumentImageWrapPoint, WorkDocumentImageWrapSide, } from './work-document-image-wrap-contour'; export interface DocumentImageCommandOptions { restoreFocus?: boolean; } declare module '@tiptap/core' { interface Commands { documentImage: { setDocumentImageProperties: (value: Partial, options?: DocumentImageCommandOptions) => ReturnType; setDocumentImageAlternativeText: (alternativeText: string, options?: DocumentImageCommandOptions) => ReturnType; setDocumentImageLayoutOptions: (value: Partial, options?: DocumentImageCommandOptions) => ReturnType; }; } } export declare const MAX_DOCUMENT_IMAGE_RELATIVE_HEIGHT = 4294967295; export declare const DocumentImage: import("@tiptap/core").Node; export declare function documentImageLayoutOptions(editor: Editor): WorkDocumentImageLayoutOptions; export declare function documentImageProperties(editor: Editor): WorkDocumentImageProperties; export declare function setDocumentImageProperties(editor: Editor, value: Partial, options?: DocumentImageCommandOptions): boolean; export declare function setDocumentImageLayoutOptions(editor: Editor, value: Partial, options?: DocumentImageCommandOptions): boolean; export declare function setDocumentImageAlternativeText(editor: Editor, alternativeText: string, options?: DocumentImageCommandOptions): boolean; export declare function documentImageAlternativeText(editor: Editor): string; export declare function documentImageLayoutFromElement(element: Element): WorkDocumentImageLayoutOptions; export declare function documentImagePositionFromElement(element: Element): WorkDocumentImagePosition | null; export declare function documentImageCropFromElement(element: Element): WorkDocumentImageCrop | null; export declare function documentImageTransformFromElement(element: Element): WorkDocumentImageTransform | null; export declare function documentImageLayerFromElement(element: Element): WorkDocumentImageLayer; export declare function normalizeDocumentImageLayoutOptions(value: Partial>): WorkDocumentImageLayoutOptions; export declare function normalizeDocumentImageLayout(value: unknown): WorkDocumentImageLayout; export declare function normalizeDocumentImageAlignment(value: unknown): WorkDocumentImageAlignment; export declare function normalizeDocumentImageWrapDistance(value: unknown): number; export declare function normalizeDocumentImageDimension(value: unknown): number | null; export declare function normalizeDocumentImageLockAspectRatio(value: unknown): boolean; export declare function normalizeDocumentImagePosition(value: Partial>): WorkDocumentImagePosition | null; export declare function normalizeDocumentImageOffset(value: unknown): number | null; export declare function normalizeDocumentImageHorizontalReference(value: unknown): WorkDocumentImageHorizontalReference; export declare function normalizeDocumentImageVerticalReference(value: unknown): WorkDocumentImageVerticalReference; export declare function normalizeDocumentImageCrop(value: Partial>): WorkDocumentImageCrop | null; export declare function normalizeDocumentImageCropEdge(value: unknown): number; export declare function defaultDocumentImageTransform(): WorkDocumentImageTransform; export declare function normalizeDocumentImageTransform(value: Partial>): WorkDocumentImageTransform; export declare function normalizeDocumentImageRotation(value: unknown): WorkDocumentImageRotation; export declare function documentImageTransformIsDefault(transform: WorkDocumentImageTransform): boolean; export declare function documentImageTransformCss(transform: WorkDocumentImageTransform): string; export declare function applyDocumentImageTransformToElement(element: HTMLElement, transform: WorkDocumentImageTransform | null): void; export declare function normalizeDocumentImageLayer(value: Partial>): WorkDocumentImageLayer; export declare function normalizeDocumentImageRelativeHeight(value: unknown): number; export declare function documentImageLayerCssZIndex(layer: WorkDocumentImageLayer): number; export declare function isContourImageLayout(layout: WorkDocumentImageLayout): layout is 'through' | 'tight'; export declare function wrapsBesideImage(layout: WorkDocumentImageLayout): boolean; export declare function applyDocumentImageCropToElement(element: HTMLElement, crop: WorkDocumentImageCrop | null): void; export declare function applyDocumentImageLayerToElement(element: HTMLElement, layer: WorkDocumentImageLayer): void;