import { ObjectManager } from "../../ObjectManager"; import { AnnotationBase, type AnnotationBaseProperties } from "./AnnotationBase"; import { DestinationBase, type DestinationProperties } from "../Destination"; import type { ActionBase } from "../Action"; import type { ActionProperties } from "../Action"; import type { HighlightingMode } from "../../Enums"; import { Border, type BorderProperties } from "./Border"; /** * Defines properties of {@link LinkAnnotation}. */ export type LinkAnnotationProperties = AnnotationBaseProperties & { type: "link"; /** * The "destination" to be displayed or "action" to be performed when the annotation is activated. */ action?: DestinationProperties | DestinationBase | ActionProperties | ActionBase; /** * The annotation's highlighting mode. */ highlighting?: HighlightingMode; /** * The {@link BorderProperties} object defining annotation's border. */ border?: BorderProperties | null; }; /** * Represents a hypertext link. */ export declare class LinkAnnotation extends AnnotationBase { /** * Creates a new {@link LinkAnnotation}. * * @param om - {@link ObjectManager} that controls the lifetime of the {@link LinkAnnotation}. */ constructor(om: ObjectManager); /** * Creates a new {@link LinkAnnotation}. */ constructor(); /** * Gets or sets the "destination" object to be displayed when this {@link LinkAnnotation} is activated. * If both 'dest' and 'action' are specified, * the viewer application will determine the behavior, which may be unpredictable. * For consistent results, specify only one. */ get dest(): DestinationBase | null; /** * Gets or sets the "destination" object to be displayed when this {@link LinkAnnotation} is activated. * If both 'dest' and 'action' are specified, * the viewer application will determine the behavior, which may be unpredictable. * For consistent results, specify only one. */ set dest(value: DestinationProperties | DestinationBase | null); /** * Gets or sets the {@link ActionBase} to be performed when this {@link LinkAnnotation} is activated. * If both 'dest' and 'action' are specified, * the viewer application will determine the behavior, which may be unpredictable. * For consistent results, specify only one. */ get action(): ActionBase | null; /** * Gets or sets the {@link ActionBase} to be performed when this {@link LinkAnnotation} is activated. * If both 'dest' and 'action' are specified, * the viewer application will determine the behavior, which may be unpredictable. * For consistent results, specify only one. */ set action(value: ActionProperties | ActionBase | null); /** * Gets or sets the annotation's highlighting mode. */ get highlighting(): HighlightingMode; /** * Gets or sets the annotation's highlighting mode. */ set highlighting(value: HighlightingMode); /** * Gets or sets the annotation border. */ get border(): Border; /** * Gets or sets the annotation border. */ set border(value: Border | BorderProperties | null); }