Nutrient Web SDK
    Preparing search index...

    Widget annotations are part of PDF forms and used to position form elements, linked to NutrientViewer.FormFields.FormFields, on a page. To know how a widget is rendered also depends on the linked form field. Widget annotations may only be created or modified if the Form Creator component is present in the license.

    Hierarchy

    • NutrientViewer.Annotations.Annotation<
          {
              action: NutrientViewer.Actions.Action
              | null;
              additionalActions:
                  | {
                      onBlur?: NutrientViewer.Actions.JavaScriptAction;
                      onChange?: NutrientViewer.Actions.JavaScriptAction;
                      onFocus?: NutrientViewer.Actions.JavaScriptAction;
                      onFormat?: NutrientViewer.Actions.JavaScriptAction;
                      onInput?: NutrientViewer.Actions.JavaScriptAction;
                      onPointerDown?: NutrientViewer.Actions.Action;
                      onPointerEnter?: NutrientViewer.Actions.Action;
                      onPointerLeave?: NutrientViewer.Actions.Action;
                      onPointerUp?: NutrientViewer.Actions.Action;
                  }
                  | null;
              APStreamCache: { cache: string }
              | { attach: string }
              | undefined;
              backgroundColor: NutrientViewer.Color | null;
              blendMode:
                  | "normal"
                  | "multiply"
                  | "screen"
                  | "overlay"
                  | "darken"
                  | "lighten"
                  | "colorDodge"
                  | "colorBurn"
                  | "hardLight"
                  | "softLight"
                  | "difference"
                  | "exclusion";
              borderColor: NutrientViewer.Color
              | null;
              borderDashArray: number[] | null;
              borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
              borderWidth: number | null;
              boundingBox: NutrientViewer.Geometry.Rect | null;
              buttonIconUpdatedAt: number | null;
              canReply: boolean | undefined;
              canSetGroup: boolean | undefined;
              contentType: string | null;
              createdAt: Date | null;
              creatorName: string | null;
              customData: Record<string, unknown> | null;
              font: string | null;
              fontColor: NutrientViewer.Color | null;
              fontSize: FontSize | null;
              formFieldName: string | null;
              group: string | null | undefined;
              hidden: boolean | null;
              horizontalAlign: "left" | "center" | "right" | null;
              id: string | null;
              isAnonymous: boolean;
              isBold: boolean | null;
              isCommentThreadRoot: boolean;
              isDeletable: boolean | undefined;
              isEditable: boolean | undefined;
              isItalic: boolean | null;
              lineHeightFactor: number | null;
              locked: boolean | null;
              lockedContents: boolean | null;
              name: string | null;
              noPrint: boolean | null;
              noRotate: boolean;
              note: string | null;
              noView: boolean | null;
              noZoom: boolean;
              opacity: number | null;
              pageIndex: number | null;
              pdfObjectId: number | null;
              readOnly: boolean | null;
              rotation: number;
              subject: string | null;
              updatedAt: Date | null;
              verticalAlign: "center" | "top" | "bottom" | null;
              widgetAttachmentId: string | null;
              [key: string]: unknown;
          },
      >
      • WidgetAnnotation
    Index

    Constructors

    • Parameters

      • Optionaloptions: Partial<
            {
                action: NutrientViewer.Actions.Action
                | null;
                additionalActions:
                    | {
                        onBlur?: NutrientViewer.Actions.JavaScriptAction;
                        onChange?: NutrientViewer.Actions.JavaScriptAction;
                        onFocus?: NutrientViewer.Actions.JavaScriptAction;
                        onFormat?: NutrientViewer.Actions.JavaScriptAction;
                        onInput?: NutrientViewer.Actions.JavaScriptAction;
                        onPointerDown?: NutrientViewer.Actions.Action;
                        onPointerEnter?: NutrientViewer.Actions.Action;
                        onPointerLeave?: NutrientViewer.Actions.Action;
                        onPointerUp?: NutrientViewer.Actions.Action;
                    }
                    | null;
                APStreamCache: { cache: string }
                | { attach: string }
                | undefined;
                backgroundColor: NutrientViewer.Color | null;
                blendMode:
                    | "normal"
                    | "multiply"
                    | "screen"
                    | "overlay"
                    | "darken"
                    | "lighten"
                    | "colorDodge"
                    | "colorBurn"
                    | "hardLight"
                    | "softLight"
                    | "difference"
                    | "exclusion";
                borderColor: NutrientViewer.Color
                | null;
                borderDashArray: number[] | null;
                borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
                borderWidth: number | null;
                boundingBox: NutrientViewer.Geometry.Rect | null;
                buttonIconUpdatedAt: number | null;
                canReply: boolean | undefined;
                canSetGroup: boolean | undefined;
                contentType: string | null;
                createdAt: Date | null;
                creatorName: string | null;
                customData: Record<string, unknown> | null;
                font: string | null;
                fontColor: NutrientViewer.Color | null;
                fontSize: FontSize | null;
                formFieldName: string | null;
                group: string | null | undefined;
                hidden: boolean | null;
                horizontalAlign: "left" | "center" | "right" | null;
                id: string | null;
                isAnonymous: boolean;
                isBold: boolean | null;
                isCommentThreadRoot: boolean;
                isDeletable: boolean | undefined;
                isEditable: boolean | undefined;
                isItalic: boolean | null;
                lineHeightFactor: number | null;
                locked: boolean | null;
                lockedContents: boolean | null;
                name: string | null;
                noPrint: boolean | null;
                noRotate: boolean;
                note: string | null;
                noView: boolean | null;
                noZoom: boolean;
                opacity: number | null;
                pageIndex: number | null;
                pdfObjectId: number | null;
                readOnly: boolean | null;
                rotation: number;
                subject: string | null;
                updatedAt: Date | null;
                verticalAlign: "center" | "top" | "bottom" | null;
                widgetAttachmentId: string | null;
                [key: string]: unknown;
            },
        >

      Returns NutrientViewer.Annotations.WidgetAnnotation

    Properties

    additionalActions:
        | {
            onBlur?: NutrientViewer.Actions.JavaScriptAction;
            onChange?: NutrientViewer.Actions.JavaScriptAction;
            onFocus?: NutrientViewer.Actions.JavaScriptAction;
            onFormat?: NutrientViewer.Actions.JavaScriptAction;
            onInput?: NutrientViewer.Actions.JavaScriptAction;
            onPointerDown?: NutrientViewer.Actions.Action;
            onPointerEnter?: NutrientViewer.Actions.Action;
            onPointerLeave?: NutrientViewer.Actions.Action;
            onPointerUp?: NutrientViewer.Actions.Action;
        }
        | null

    Optional actions to execute when an event is triggered.

    Type Declaration

    const widget = new NutrientViewer.Annotations.WidgetAnnotation({
    id: NutrientViewer.generateInstantId(),
    pageIndex: 0,
    formFieldName: "MyFormField",
    boundingBox: new NutrientViewer.Geometry.Rect({
    left: 100,
    top: 75,
    width: 200,
    height: 80
    }),
    additionalActions: {
    onFocus: new NutrientViewer.Actions.JavaScriptAction({
    script: "alert('onFocus')"
    })
    }
    });

    const form = new NutrientViewer.FormFields.TextFormField({
    name: "MyFormField",
    annotationIds: new NutrientViewer.Immutable.List([annotation.id]),
    value: "Text shown in the form field"
    });

    instance.create([widget, form])
    null
    
    APStreamCache?: { cache: string } | { attach: string }
    backgroundColor: NutrientViewer.Color | null

    Optional background color that will fill the bounding box.

    null
    
    blendMode:
        | "normal"
        | "multiply"
        | "screen"
        | "overlay"
        | "darken"
        | "lighten"
        | "colorDodge"
        | "colorBurn"
        | "hardLight"
        | "softLight"
        | "difference"
        | "exclusion"

    The blend mode defines how the color of the annotation will be applied to its background.

    "normal"
    
    borderColor: NutrientViewer.Color | null

    Optional border color that will be drawn at the border of the bounding box.

    null
    
    borderDashArray: number[] | null

    Optional dash pattern used to draw the border for dashed border style.

    borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null

    Optional border style used for the border of the bounding box. Valid options are:

    • solid
    • dashed
    • beveled
    • inset
    • underline
    null
    
    borderWidth: number | null

    Optional border width in PDF pixels, that will be used for the border of the bounding box.

    null
    

    Position of this annotation on the page. It's necessary that this spans all visible points of the annotation, otherwise hit testing and other features may not work.

    canReply?: boolean
    canSetGroup?: boolean

    This property defines whether the user has permission to edit the group of this annotation.

    It is only available when collaboration permissions is enabled on Server-Backed deployments.

    createdAt: Date

    The date of the annotation creation.

    creatorName: string | null

    The name of the creator of the annotation. This is a general purpose string which can easily be spoofed and might not reflect the actual creator of the annotation.

    customData: Record<string, unknown> | null

    Annotations can store additional user-specified data.

    NutrientViewer will not use or evaluate customData in the UI directly. You have full control over this property. For new annotations, this defaults to null.

    customData will be stored as JSON through JSON.serialize() and JSON.parse(), and so must be a plain JSON-serializable object.

    Adding a new EllipseAnnotation with custom data attached:

    const annotation = new NutrientViewer.Annotations.EllipseAnnotation({
    pageIndex: 0,
    boundingBox: new NutrientViewer.Geometry.Rect({
    top: 10,
    left: 10,
    width: 100,
    height: 100
    }),
    customData: {
    circleId: "my-circle"
    }
    });
    font: string | null

    The name of the font family that should be used.

    Fonts are client specific and determined during runtime. If a font is not found, we will automatically fall back to 'sans-serif'.

    We test the following list at runtime. The first available font will be used as the default for all new widget annotations: Helvetica, Arial, Calibri, Century Gothic, Consolas, Courier, Dejavu Sans, Dejavu Serif, Georgia, Gill Sans, Impact, Lucida Sans, Myriad Pro, Open Sans, Palatino, Tahoma, Times New Roman, Trebuchet, Verdana, Zapfino, Comic Sans.

    If the browser does not natively support the font, it's still possible to support it by providing the required font data using a custom stylesheet.

    null
    
    fontColor: NutrientViewer.Color | null

    Optional font color.

    null
    
    fontSize: FontSize | null

    Optional font size in page size pixels.

    null
    
    formFieldName: string

    The NutrientViewer.FormFields.FormField#name of the linked form field. Based on the type of the field, a different element will be rendered

    group: string

    This property is used to define the permission scope for this widget annotation. If you want to change the group, you should update the group property of the corresponding form field.

    It is only available when collaboration permissions is enabled on Server-Backed deployments.

    hidden: boolean

    If set, do not display or print the annotation or allow it to interact with the user.

    false
    
    horizontalAlign: "left" | "center" | "right" | null

    Optional horizontal text alignment.

    left
    
    id: string

    A unique identifier to describe the annotation. When an annotation is created in the UI, the viewer has to generate a unique ID.

    When changes are saved to the underlying annotation provider, we call Instance#ensureChangesSaved to make sure the annotation has been persisted from the provider.

    isAnonymous: boolean
    isBold: boolean

    If true, the font will be bold if the font family supports this.

    false
    
    isCommentThreadRoot: boolean
    isDeletable?: boolean

    This property defines whether this annotation can be deleted or not. The value of this field depends on the set of collaboration permissions defined in the JWT token.

    It is only available when collaboration permissions is enabled on Server-Backed deployments.

    isEditable?: boolean

    This property defines whether this annotation can be edited or not. The value of this field depends on the set of collaboration permissions defined in the JWT token.

    It is only available when collaboration permissions is enabled on Server-Backed deployments.

    isItalic: boolean

    If true, the font will be italic if the font family supports this.

    false
    
    locked: boolean

    The annotation flag that prevents the annotation from being modified.

    false
    
    lockedContents: boolean

    The annotation flag that prevents the annotation content from being modified.

    false
    
    name: string | null

    An optional field that may be used to identify the annotation.

    By default, we'll set that to the same value as the automatically generated Annotation#id.

    noPrint: boolean

    The annotation flag that prevents the annotation from being printed.

    false
    
    noRotate: boolean
    note: string | null

    An optional note that can be set on any annotation.

    This value is displayed in the Nutrient Web SDK UI for all annotations except NoteAnnotation, TextAnnotation, WidgetAnnotation and CommentMarkerAnnotation.

    noView: boolean

    The annotation flag that prevents the annotation from being rendered in the UI.

    The annotation may still be part of the printed page, depending of the value of the Annotations.Annotation#noPrint flag.

    false
    
    noZoom: boolean
    opacity: number

    A transparency value that is applied to the complete annotation. The value is capped between 0 and 1 inclusive.

    1
    
    pageIndex: number

    The page index on which the annotation is placed. It's important to notice that an annotation can only ever be on one page. If you create for example an ink annotation with lines on two pages, two annotation records will be created.

    pageIndex is zero-based and has a maximum value of totalPageCount - 1.

    pdfObjectId: number | null

    When the annotation is extracted directly from a PDF file, the pdfObjectId refers to the identifier that was used in the PDF document.

    This ID is optional since newly created annotations using the SYNCProvider annotation provider won't have a pdfObjectId assigned.

    null
    
    readOnly: boolean

    The annotation flag that makes the annotation read only.

    false
    
    rotation: number

    The counter-clockwise rotation value in degree relative to the rotated PDF page. Inserting an annotation with a rotation value of 0 will make it appear in the same direction as the UI appears, when no NutrientViewer.ViewState#pagesRotation is set.

    Can either be 0°, 90°, 180°, or 270°. Multiple or negative values are normalized to this interval.

    Note: Due to browser constraints, the rotation property is currently reset once the edit mode is enabled via the user interface.

    0
    
    subject: string | null

    An optional annotation subject, representing a short description of the subject being addressed by the annotation. This property has no effect on the annotation rendering.

    updatedAt: Date

    The date of last annotation update.

    verticalAlign: "center" | "top" | "bottom" | null

    Optional vertical text alignment.

    null
    
    readableName: string = 'Widget'

    Methods

    • Type Parameters

      • K extends keyof {
            action: NutrientViewer.Actions.Action | null;
            additionalActions:
                | {
                    onBlur?: NutrientViewer.Actions.JavaScriptAction;
                    onChange?: NutrientViewer.Actions.JavaScriptAction;
                    onFocus?: NutrientViewer.Actions.JavaScriptAction;
                    onFormat?: NutrientViewer.Actions.JavaScriptAction;
                    onInput?: NutrientViewer.Actions.JavaScriptAction;
                    onPointerDown?: NutrientViewer.Actions.Action;
                    onPointerEnter?: NutrientViewer.Actions.Action;
                    onPointerLeave?: NutrientViewer.Actions.Action;
                    onPointerUp?: NutrientViewer.Actions.Action;
                }
                | null;
            APStreamCache: { cache: string }
            | { attach: string }
            | undefined;
            backgroundColor: NutrientViewer.Color | null;
            blendMode:
                | "normal"
                | "multiply"
                | "screen"
                | "overlay"
                | "darken"
                | "lighten"
                | "colorDodge"
                | "colorBurn"
                | "hardLight"
                | "softLight"
                | "difference"
                | "exclusion";
            borderColor: NutrientViewer.Color
            | null;
            borderDashArray: number[] | null;
            borderStyle: IBorderStyle | null;
            borderWidth: number | null;
            boundingBox: NutrientViewer.Geometry.Rect | null;
            buttonIconUpdatedAt: number | null;
            canReply: boolean | undefined;
            canSetGroup: boolean | undefined;
            contentType: string | null;
            createdAt: Date | null;
            creatorName: string | null;
            customData: Record<string, unknown> | null;
            font: string | null;
            fontColor: NutrientViewer.Color | null;
            fontSize: FontSize | null;
            formFieldName: string | null;
            group: string | null | undefined;
            hidden: boolean | null;
            horizontalAlign: "left" | "center" | "right" | null;
            id: string | null;
            isAnonymous: boolean;
            isBold: boolean | null;
            isCommentThreadRoot: boolean;
            isDeletable: boolean | undefined;
            isEditable: boolean | undefined;
            isItalic: boolean | null;
            lineHeightFactor: number | null;
            locked: boolean | null;
            lockedContents: boolean | null;
            name: string | null;
            noPrint: boolean | null;
            noRotate: boolean;
            note: string | null;
            noView: boolean | null;
            noZoom: boolean;
            opacity: number | null;
            pageIndex: number | null;
            pdfObjectId: number | null;
            readOnly: boolean | null;
            rotation: number;
            subject: string | null;
            updatedAt: Date | null;
            verticalAlign: "center" | "top" | "bottom" | null;
            widgetAttachmentId: string | null;
            [key: string]: unknown;
        }

      Parameters

      • key: K

      Returns this

    • Parameters

      • other: unknown

      Returns boolean

    • Type Parameters

      • K extends keyof {
            action: NutrientViewer.Actions.Action | null;
            additionalActions:
                | {
                    onBlur?: NutrientViewer.Actions.JavaScriptAction;
                    onChange?: NutrientViewer.Actions.JavaScriptAction;
                    onFocus?: NutrientViewer.Actions.JavaScriptAction;
                    onFormat?: NutrientViewer.Actions.JavaScriptAction;
                    onInput?: NutrientViewer.Actions.JavaScriptAction;
                    onPointerDown?: NutrientViewer.Actions.Action;
                    onPointerEnter?: NutrientViewer.Actions.Action;
                    onPointerLeave?: NutrientViewer.Actions.Action;
                    onPointerUp?: NutrientViewer.Actions.Action;
                }
                | null;
            APStreamCache: { cache: string }
            | { attach: string }
            | undefined;
            backgroundColor: NutrientViewer.Color | null;
            blendMode:
                | "normal"
                | "multiply"
                | "screen"
                | "overlay"
                | "darken"
                | "lighten"
                | "colorDodge"
                | "colorBurn"
                | "hardLight"
                | "softLight"
                | "difference"
                | "exclusion";
            borderColor: NutrientViewer.Color
            | null;
            borderDashArray: number[] | null;
            borderStyle: IBorderStyle | null;
            borderWidth: number | null;
            boundingBox: NutrientViewer.Geometry.Rect | null;
            buttonIconUpdatedAt: number | null;
            canReply: boolean | undefined;
            canSetGroup: boolean | undefined;
            contentType: string | null;
            createdAt: Date | null;
            creatorName: string | null;
            customData: Record<string, unknown> | null;
            font: string | null;
            fontColor: NutrientViewer.Color | null;
            fontSize: FontSize | null;
            formFieldName: string | null;
            group: string | null | undefined;
            hidden: boolean | null;
            horizontalAlign: "left" | "center" | "right" | null;
            id: string | null;
            isAnonymous: boolean;
            isBold: boolean | null;
            isCommentThreadRoot: boolean;
            isDeletable: boolean | undefined;
            isEditable: boolean | undefined;
            isItalic: boolean | null;
            lineHeightFactor: number | null;
            locked: boolean | null;
            lockedContents: boolean | null;
            name: string | null;
            noPrint: boolean | null;
            noRotate: boolean;
            note: string | null;
            noView: boolean | null;
            noZoom: boolean;
            opacity: number | null;
            pageIndex: number | null;
            pdfObjectId: number | null;
            readOnly: boolean | null;
            rotation: number;
            subject: string | null;
            updatedAt: Date | null;
            verticalAlign: "center" | "top" | "bottom" | null;
            widgetAttachmentId: string | null;
            [key: string]: unknown;
        }

      Parameters

      • key: K

      Returns {
          action: NutrientViewer.Actions.Action | null;
          additionalActions:
              | {
                  onBlur?: NutrientViewer.Actions.JavaScriptAction;
                  onChange?: NutrientViewer.Actions.JavaScriptAction;
                  onFocus?: NutrientViewer.Actions.JavaScriptAction;
                  onFormat?: NutrientViewer.Actions.JavaScriptAction;
                  onInput?: NutrientViewer.Actions.JavaScriptAction;
                  onPointerDown?: NutrientViewer.Actions.Action;
                  onPointerEnter?: NutrientViewer.Actions.Action;
                  onPointerLeave?: NutrientViewer.Actions.Action;
                  onPointerUp?: NutrientViewer.Actions.Action;
              }
              | null;
          APStreamCache: { cache: string }
          | { attach: string }
          | undefined;
          backgroundColor: NutrientViewer.Color | null;
          blendMode:
              | "normal"
              | "multiply"
              | "screen"
              | "overlay"
              | "darken"
              | "lighten"
              | "colorDodge"
              | "colorBurn"
              | "hardLight"
              | "softLight"
              | "difference"
              | "exclusion";
          borderColor: NutrientViewer.Color
          | null;
          borderDashArray: number[] | null;
          borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
          borderWidth: number | null;
          boundingBox: NutrientViewer.Geometry.Rect | null;
          buttonIconUpdatedAt: number | null;
          canReply: boolean | undefined;
          canSetGroup: boolean | undefined;
          contentType: string | null;
          createdAt: Date | null;
          creatorName: string | null;
          customData: Record<string, unknown> | null;
          font: string | null;
          fontColor: NutrientViewer.Color | null;
          fontSize: FontSize | null;
          formFieldName: string | null;
          group: string | null | undefined;
          hidden: boolean | null;
          horizontalAlign: "left" | "center" | "right" | null;
          id: string | null;
          isAnonymous: boolean;
          isBold: boolean | null;
          isCommentThreadRoot: boolean;
          isDeletable: boolean | undefined;
          isEditable: boolean | undefined;
          isItalic: boolean | null;
          lineHeightFactor: number | null;
          locked: boolean | null;
          lockedContents: boolean | null;
          name: string | null;
          noPrint: boolean | null;
          noRotate: boolean;
          note: string | null;
          noView: boolean | null;
          noZoom: boolean;
          opacity: number | null;
          pageIndex: number | null;
          pdfObjectId: number | null;
          readOnly: boolean | null;
          rotation: number;
          subject: string | null;
          updatedAt: Date | null;
          verticalAlign: "center" | "top" | "bottom" | null;
          widgetAttachmentId: string | null;
          [key: string]: unknown;
      }[K]

    • Parameters

      • keyPath: Iterable<unknown>
      • OptionalnotSetValue: unknown

      Returns unknown

    • Parameters

      • key: unknown

      Returns boolean

    • Parameters

      • ...collections: Partial<
            {
                action: NutrientViewer.Actions.Action
                | null;
                additionalActions:
                    | {
                        onBlur?: NutrientViewer.Actions.JavaScriptAction;
                        onChange?: NutrientViewer.Actions.JavaScriptAction;
                        onFocus?: NutrientViewer.Actions.JavaScriptAction;
                        onFormat?: NutrientViewer.Actions.JavaScriptAction;
                        onInput?: NutrientViewer.Actions.JavaScriptAction;
                        onPointerDown?: NutrientViewer.Actions.Action;
                        onPointerEnter?: NutrientViewer.Actions.Action;
                        onPointerLeave?: NutrientViewer.Actions.Action;
                        onPointerUp?: NutrientViewer.Actions.Action;
                    }
                    | null;
                APStreamCache: { cache: string }
                | { attach: string }
                | undefined;
                backgroundColor: NutrientViewer.Color | null;
                blendMode:
                    | "normal"
                    | "multiply"
                    | "screen"
                    | "overlay"
                    | "darken"
                    | "lighten"
                    | "colorDodge"
                    | "colorBurn"
                    | "hardLight"
                    | "softLight"
                    | "difference"
                    | "exclusion";
                borderColor: NutrientViewer.Color
                | null;
                borderDashArray: number[] | null;
                borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
                borderWidth: number | null;
                boundingBox: NutrientViewer.Geometry.Rect | null;
                buttonIconUpdatedAt: number | null;
                canReply: boolean | undefined;
                canSetGroup: boolean | undefined;
                contentType: string | null;
                createdAt: Date | null;
                creatorName: string | null;
                customData: Record<string, unknown> | null;
                font: string | null;
                fontColor: NutrientViewer.Color | null;
                fontSize: FontSize | null;
                formFieldName: string | null;
                group: string | null | undefined;
                hidden: boolean | null;
                horizontalAlign: "left" | "center" | "right" | null;
                id: string | null;
                isAnonymous: boolean;
                isBold: boolean | null;
                isCommentThreadRoot: boolean;
                isDeletable: boolean | undefined;
                isEditable: boolean | undefined;
                isItalic: boolean | null;
                lineHeightFactor: number | null;
                locked: boolean | null;
                lockedContents: boolean | null;
                name: string | null;
                noPrint: boolean | null;
                noRotate: boolean;
                note: string | null;
                noView: boolean | null;
                noZoom: boolean;
                opacity: number | null;
                pageIndex: number | null;
                pdfObjectId: number | null;
                readOnly: boolean | null;
                rotation: number;
                subject: string | null;
                updatedAt: Date | null;
                verticalAlign: "center" | "top" | "bottom" | null;
                widgetAttachmentId: string | null;
                [key: string]: unknown;
            },
        >[]

      Returns this

    • Parameters

      • ...collections: (
            | Iterable<[string, unknown], any, any>
            | Partial<
                {
                    action: NutrientViewer.Actions.Action
                    | null;
                    additionalActions:
                        | {
                            onBlur?: NutrientViewer.Actions.JavaScriptAction;
                            onChange?: NutrientViewer.Actions.JavaScriptAction;
                            onFocus?: NutrientViewer.Actions.JavaScriptAction;
                            onFormat?: NutrientViewer.Actions.JavaScriptAction;
                            onInput?: NutrientViewer.Actions.JavaScriptAction;
                            onPointerDown?: NutrientViewer.Actions.Action;
                            onPointerEnter?: NutrientViewer.Actions.Action;
                            onPointerLeave?: NutrientViewer.Actions.Action;
                            onPointerUp?: NutrientViewer.Actions.Action;
                        }
                        | null;
                    APStreamCache: { cache: string }
                    | { attach: string }
                    | undefined;
                    backgroundColor: NutrientViewer.Color | null;
                    blendMode:
                        | "normal"
                        | "multiply"
                        | "screen"
                        | "overlay"
                        | "darken"
                        | "lighten"
                        | "colorDodge"
                        | "colorBurn"
                        | "hardLight"
                        | "softLight"
                        | "difference"
                        | "exclusion";
                    borderColor: NutrientViewer.Color
                    | null;
                    borderDashArray: number[] | null;
                    borderStyle:
                        | "solid"
                        | "dashed"
                        | "beveled"
                        | "inset"
                        | "underline"
                        | null;
                    borderWidth: number | null;
                    boundingBox: NutrientViewer.Geometry.Rect | null;
                    buttonIconUpdatedAt: number | null;
                    canReply: boolean | undefined;
                    canSetGroup: boolean | undefined;
                    contentType: string | null;
                    createdAt: Date | null;
                    creatorName: string | null;
                    customData: Record<string, unknown> | null;
                    font: string | null;
                    fontColor: NutrientViewer.Color | null;
                    fontSize: FontSize | null;
                    formFieldName: string | null;
                    group: string | null | undefined;
                    hidden: boolean | null;
                    horizontalAlign: "left" | "center" | "right" | null;
                    id: string | null;
                    isAnonymous: boolean;
                    isBold: boolean | null;
                    isCommentThreadRoot: boolean;
                    isDeletable: boolean | undefined;
                    isEditable: boolean | undefined;
                    isItalic: boolean | null;
                    lineHeightFactor: number | null;
                    locked: boolean | null;
                    lockedContents: boolean | null;
                    name: string | null;
                    noPrint: boolean | null;
                    noRotate: boolean;
                    note: string | null;
                    noView: boolean | null;
                    noZoom: boolean;
                    opacity: number | null;
                    pageIndex: number | null;
                    pdfObjectId: number | null;
                    readOnly: boolean | null;
                    rotation: number;
                    subject: string | null;
                    updatedAt: Date | null;
                    verticalAlign: "center" | "top" | "bottom" | null;
                    widgetAttachmentId: string | null;
                    [key: string]: unknown;
                },
            >
        )[]

      Returns this

    • Parameters

      • keyPath: Iterable<unknown>
      • ...collections: (
            | Iterable<[string, unknown], any, any>
            | Partial<
                {
                    action: NutrientViewer.Actions.Action
                    | null;
                    additionalActions:
                        | {
                            onBlur?: NutrientViewer.Actions.JavaScriptAction;
                            onChange?: NutrientViewer.Actions.JavaScriptAction;
                            onFocus?: NutrientViewer.Actions.JavaScriptAction;
                            onFormat?: NutrientViewer.Actions.JavaScriptAction;
                            onInput?: NutrientViewer.Actions.JavaScriptAction;
                            onPointerDown?: NutrientViewer.Actions.Action;
                            onPointerEnter?: NutrientViewer.Actions.Action;
                            onPointerLeave?: NutrientViewer.Actions.Action;
                            onPointerUp?: NutrientViewer.Actions.Action;
                        }
                        | null;
                    APStreamCache: { cache: string }
                    | { attach: string }
                    | undefined;
                    backgroundColor: NutrientViewer.Color | null;
                    blendMode:
                        | "normal"
                        | "multiply"
                        | "screen"
                        | "overlay"
                        | "darken"
                        | "lighten"
                        | "colorDodge"
                        | "colorBurn"
                        | "hardLight"
                        | "softLight"
                        | "difference"
                        | "exclusion";
                    borderColor: NutrientViewer.Color
                    | null;
                    borderDashArray: number[] | null;
                    borderStyle:
                        | "solid"
                        | "dashed"
                        | "beveled"
                        | "inset"
                        | "underline"
                        | null;
                    borderWidth: number | null;
                    boundingBox: NutrientViewer.Geometry.Rect | null;
                    buttonIconUpdatedAt: number | null;
                    canReply: boolean | undefined;
                    canSetGroup: boolean | undefined;
                    contentType: string | null;
                    createdAt: Date | null;
                    creatorName: string | null;
                    customData: Record<string, unknown> | null;
                    font: string | null;
                    fontColor: NutrientViewer.Color | null;
                    fontSize: FontSize | null;
                    formFieldName: string | null;
                    group: string | null | undefined;
                    hidden: boolean | null;
                    horizontalAlign: "left" | "center" | "right" | null;
                    id: string | null;
                    isAnonymous: boolean;
                    isBold: boolean | null;
                    isCommentThreadRoot: boolean;
                    isDeletable: boolean | undefined;
                    isEditable: boolean | undefined;
                    isItalic: boolean | null;
                    lineHeightFactor: number | null;
                    locked: boolean | null;
                    lockedContents: boolean | null;
                    name: string | null;
                    noPrint: boolean | null;
                    noRotate: boolean;
                    note: string | null;
                    noView: boolean | null;
                    noZoom: boolean;
                    opacity: number | null;
                    pageIndex: number | null;
                    pdfObjectId: number | null;
                    readOnly: boolean | null;
                    rotation: number;
                    subject: string | null;
                    updatedAt: Date | null;
                    verticalAlign: "center" | "top" | "bottom" | null;
                    widgetAttachmentId: string | null;
                    [key: string]: unknown;
                },
            >
        )[]

      Returns this

    • Parameters

      • merger: (previous?: unknown, next?: unknown, key?: string) => unknown
      • ...collections: (
            | Iterable<[string, unknown], any, any>
            | Partial<
                {
                    action: NutrientViewer.Actions.Action
                    | null;
                    additionalActions:
                        | {
                            onBlur?: NutrientViewer.Actions.JavaScriptAction;
                            onChange?: NutrientViewer.Actions.JavaScriptAction;
                            onFocus?: NutrientViewer.Actions.JavaScriptAction;
                            onFormat?: NutrientViewer.Actions.JavaScriptAction;
                            onInput?: NutrientViewer.Actions.JavaScriptAction;
                            onPointerDown?: NutrientViewer.Actions.Action;
                            onPointerEnter?: NutrientViewer.Actions.Action;
                            onPointerLeave?: NutrientViewer.Actions.Action;
                            onPointerUp?: NutrientViewer.Actions.Action;
                        }
                        | null;
                    APStreamCache: { cache: string }
                    | { attach: string }
                    | undefined;
                    backgroundColor: NutrientViewer.Color | null;
                    blendMode:
                        | "normal"
                        | "multiply"
                        | "screen"
                        | "overlay"
                        | "darken"
                        | "lighten"
                        | "colorDodge"
                        | "colorBurn"
                        | "hardLight"
                        | "softLight"
                        | "difference"
                        | "exclusion";
                    borderColor: NutrientViewer.Color
                    | null;
                    borderDashArray: number[] | null;
                    borderStyle:
                        | "solid"
                        | "dashed"
                        | "beveled"
                        | "inset"
                        | "underline"
                        | null;
                    borderWidth: number | null;
                    boundingBox: NutrientViewer.Geometry.Rect | null;
                    buttonIconUpdatedAt: number | null;
                    canReply: boolean | undefined;
                    canSetGroup: boolean | undefined;
                    contentType: string | null;
                    createdAt: Date | null;
                    creatorName: string | null;
                    customData: Record<string, unknown> | null;
                    font: string | null;
                    fontColor: NutrientViewer.Color | null;
                    fontSize: FontSize | null;
                    formFieldName: string | null;
                    group: string | null | undefined;
                    hidden: boolean | null;
                    horizontalAlign: "left" | "center" | "right" | null;
                    id: string | null;
                    isAnonymous: boolean;
                    isBold: boolean | null;
                    isCommentThreadRoot: boolean;
                    isDeletable: boolean | undefined;
                    isEditable: boolean | undefined;
                    isItalic: boolean | null;
                    lineHeightFactor: number | null;
                    locked: boolean | null;
                    lockedContents: boolean | null;
                    name: string | null;
                    noPrint: boolean | null;
                    noRotate: boolean;
                    note: string | null;
                    noView: boolean | null;
                    noZoom: boolean;
                    opacity: number | null;
                    pageIndex: number | null;
                    pdfObjectId: number | null;
                    readOnly: boolean | null;
                    rotation: number;
                    subject: string | null;
                    updatedAt: Date | null;
                    verticalAlign: "center" | "top" | "bottom" | null;
                    widgetAttachmentId: string | null;
                    [key: string]: unknown;
                },
            >
        )[]

      Returns this

    • Parameters

      • keyPath: Iterable<unknown>
      • ...collections: (
            | Iterable<[string, unknown], any, any>
            | Partial<
                {
                    action: NutrientViewer.Actions.Action
                    | null;
                    additionalActions:
                        | {
                            onBlur?: NutrientViewer.Actions.JavaScriptAction;
                            onChange?: NutrientViewer.Actions.JavaScriptAction;
                            onFocus?: NutrientViewer.Actions.JavaScriptAction;
                            onFormat?: NutrientViewer.Actions.JavaScriptAction;
                            onInput?: NutrientViewer.Actions.JavaScriptAction;
                            onPointerDown?: NutrientViewer.Actions.Action;
                            onPointerEnter?: NutrientViewer.Actions.Action;
                            onPointerLeave?: NutrientViewer.Actions.Action;
                            onPointerUp?: NutrientViewer.Actions.Action;
                        }
                        | null;
                    APStreamCache: { cache: string }
                    | { attach: string }
                    | undefined;
                    backgroundColor: NutrientViewer.Color | null;
                    blendMode:
                        | "normal"
                        | "multiply"
                        | "screen"
                        | "overlay"
                        | "darken"
                        | "lighten"
                        | "colorDodge"
                        | "colorBurn"
                        | "hardLight"
                        | "softLight"
                        | "difference"
                        | "exclusion";
                    borderColor: NutrientViewer.Color
                    | null;
                    borderDashArray: number[] | null;
                    borderStyle:
                        | "solid"
                        | "dashed"
                        | "beveled"
                        | "inset"
                        | "underline"
                        | null;
                    borderWidth: number | null;
                    boundingBox: NutrientViewer.Geometry.Rect | null;
                    buttonIconUpdatedAt: number | null;
                    canReply: boolean | undefined;
                    canSetGroup: boolean | undefined;
                    contentType: string | null;
                    createdAt: Date | null;
                    creatorName: string | null;
                    customData: Record<string, unknown> | null;
                    font: string | null;
                    fontColor: NutrientViewer.Color | null;
                    fontSize: FontSize | null;
                    formFieldName: string | null;
                    group: string | null | undefined;
                    hidden: boolean | null;
                    horizontalAlign: "left" | "center" | "right" | null;
                    id: string | null;
                    isAnonymous: boolean;
                    isBold: boolean | null;
                    isCommentThreadRoot: boolean;
                    isDeletable: boolean | undefined;
                    isEditable: boolean | undefined;
                    isItalic: boolean | null;
                    lineHeightFactor: number | null;
                    locked: boolean | null;
                    lockedContents: boolean | null;
                    name: string | null;
                    noPrint: boolean | null;
                    noRotate: boolean;
                    note: string | null;
                    noView: boolean | null;
                    noZoom: boolean;
                    opacity: number | null;
                    pageIndex: number | null;
                    pdfObjectId: number | null;
                    readOnly: boolean | null;
                    rotation: number;
                    subject: string | null;
                    updatedAt: Date | null;
                    verticalAlign: "center" | "top" | "bottom" | null;
                    widgetAttachmentId: string | null;
                    [key: string]: unknown;
                },
            >
        )[]

      Returns this

    • Parameters

      • merger: (previous?: unknown, next?: unknown, key?: string) => unknown
      • ...collections: (
            | Iterable<[string, unknown], any, any>
            | Partial<
                {
                    action: NutrientViewer.Actions.Action
                    | null;
                    additionalActions:
                        | {
                            onBlur?: NutrientViewer.Actions.JavaScriptAction;
                            onChange?: NutrientViewer.Actions.JavaScriptAction;
                            onFocus?: NutrientViewer.Actions.JavaScriptAction;
                            onFormat?: NutrientViewer.Actions.JavaScriptAction;
                            onInput?: NutrientViewer.Actions.JavaScriptAction;
                            onPointerDown?: NutrientViewer.Actions.Action;
                            onPointerEnter?: NutrientViewer.Actions.Action;
                            onPointerLeave?: NutrientViewer.Actions.Action;
                            onPointerUp?: NutrientViewer.Actions.Action;
                        }
                        | null;
                    APStreamCache: { cache: string }
                    | { attach: string }
                    | undefined;
                    backgroundColor: NutrientViewer.Color | null;
                    blendMode:
                        | "normal"
                        | "multiply"
                        | "screen"
                        | "overlay"
                        | "darken"
                        | "lighten"
                        | "colorDodge"
                        | "colorBurn"
                        | "hardLight"
                        | "softLight"
                        | "difference"
                        | "exclusion";
                    borderColor: NutrientViewer.Color
                    | null;
                    borderDashArray: number[] | null;
                    borderStyle:
                        | "solid"
                        | "dashed"
                        | "beveled"
                        | "inset"
                        | "underline"
                        | null;
                    borderWidth: number | null;
                    boundingBox: NutrientViewer.Geometry.Rect | null;
                    buttonIconUpdatedAt: number | null;
                    canReply: boolean | undefined;
                    canSetGroup: boolean | undefined;
                    contentType: string | null;
                    createdAt: Date | null;
                    creatorName: string | null;
                    customData: Record<string, unknown> | null;
                    font: string | null;
                    fontColor: NutrientViewer.Color | null;
                    fontSize: FontSize | null;
                    formFieldName: string | null;
                    group: string | null | undefined;
                    hidden: boolean | null;
                    horizontalAlign: "left" | "center" | "right" | null;
                    id: string | null;
                    isAnonymous: boolean;
                    isBold: boolean | null;
                    isCommentThreadRoot: boolean;
                    isDeletable: boolean | undefined;
                    isEditable: boolean | undefined;
                    isItalic: boolean | null;
                    lineHeightFactor: number | null;
                    locked: boolean | null;
                    lockedContents: boolean | null;
                    name: string | null;
                    noPrint: boolean | null;
                    noRotate: boolean;
                    note: string | null;
                    noView: boolean | null;
                    noZoom: boolean;
                    opacity: number | null;
                    pageIndex: number | null;
                    pdfObjectId: number | null;
                    readOnly: boolean | null;
                    rotation: number;
                    subject: string | null;
                    updatedAt: Date | null;
                    verticalAlign: "center" | "top" | "bottom" | null;
                    widgetAttachmentId: string | null;
                    [key: string]: unknown;
                },
            >
        )[]

      Returns this

    • Type Parameters

      • K extends keyof {
            action: NutrientViewer.Actions.Action | null;
            additionalActions:
                | {
                    onBlur?: NutrientViewer.Actions.JavaScriptAction;
                    onChange?: NutrientViewer.Actions.JavaScriptAction;
                    onFocus?: NutrientViewer.Actions.JavaScriptAction;
                    onFormat?: NutrientViewer.Actions.JavaScriptAction;
                    onInput?: NutrientViewer.Actions.JavaScriptAction;
                    onPointerDown?: NutrientViewer.Actions.Action;
                    onPointerEnter?: NutrientViewer.Actions.Action;
                    onPointerLeave?: NutrientViewer.Actions.Action;
                    onPointerUp?: NutrientViewer.Actions.Action;
                }
                | null;
            APStreamCache: { cache: string }
            | { attach: string }
            | undefined;
            backgroundColor: NutrientViewer.Color | null;
            blendMode:
                | "normal"
                | "multiply"
                | "screen"
                | "overlay"
                | "darken"
                | "lighten"
                | "colorDodge"
                | "colorBurn"
                | "hardLight"
                | "softLight"
                | "difference"
                | "exclusion";
            borderColor: NutrientViewer.Color
            | null;
            borderDashArray: number[] | null;
            borderStyle: IBorderStyle | null;
            borderWidth: number | null;
            boundingBox: NutrientViewer.Geometry.Rect | null;
            buttonIconUpdatedAt: number | null;
            canReply: boolean | undefined;
            canSetGroup: boolean | undefined;
            contentType: string | null;
            createdAt: Date | null;
            creatorName: string | null;
            customData: Record<string, unknown> | null;
            font: string | null;
            fontColor: NutrientViewer.Color | null;
            fontSize: FontSize | null;
            formFieldName: string | null;
            group: string | null | undefined;
            hidden: boolean | null;
            horizontalAlign: "left" | "center" | "right" | null;
            id: string | null;
            isAnonymous: boolean;
            isBold: boolean | null;
            isCommentThreadRoot: boolean;
            isDeletable: boolean | undefined;
            isEditable: boolean | undefined;
            isItalic: boolean | null;
            lineHeightFactor: number | null;
            locked: boolean | null;
            lockedContents: boolean | null;
            name: string | null;
            noPrint: boolean | null;
            noRotate: boolean;
            note: string | null;
            noView: boolean | null;
            noZoom: boolean;
            opacity: number | null;
            pageIndex: number | null;
            pdfObjectId: number | null;
            readOnly: boolean | null;
            rotation: number;
            subject: string | null;
            updatedAt: Date | null;
            verticalAlign: "center" | "top" | "bottom" | null;
            widgetAttachmentId: string | null;
            [key: string]: unknown;
        }

      Parameters

      • key: K
      • value: {
            action: NutrientViewer.Actions.Action | null;
            additionalActions:
                | {
                    onBlur?: NutrientViewer.Actions.JavaScriptAction;
                    onChange?: NutrientViewer.Actions.JavaScriptAction;
                    onFocus?: NutrientViewer.Actions.JavaScriptAction;
                    onFormat?: NutrientViewer.Actions.JavaScriptAction;
                    onInput?: NutrientViewer.Actions.JavaScriptAction;
                    onPointerDown?: NutrientViewer.Actions.Action;
                    onPointerEnter?: NutrientViewer.Actions.Action;
                    onPointerLeave?: NutrientViewer.Actions.Action;
                    onPointerUp?: NutrientViewer.Actions.Action;
                }
                | null;
            APStreamCache: { cache: string }
            | { attach: string }
            | undefined;
            backgroundColor: NutrientViewer.Color | null;
            blendMode:
                | "normal"
                | "multiply"
                | "screen"
                | "overlay"
                | "darken"
                | "lighten"
                | "colorDodge"
                | "colorBurn"
                | "hardLight"
                | "softLight"
                | "difference"
                | "exclusion";
            borderColor: NutrientViewer.Color
            | null;
            borderDashArray: number[] | null;
            borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
            borderWidth: number | null;
            boundingBox: NutrientViewer.Geometry.Rect | null;
            buttonIconUpdatedAt: number | null;
            canReply: boolean | undefined;
            canSetGroup: boolean | undefined;
            contentType: string | null;
            createdAt: Date | null;
            creatorName: string | null;
            customData: Record<string, unknown> | null;
            font: string | null;
            fontColor: NutrientViewer.Color | null;
            fontSize: FontSize | null;
            formFieldName: string | null;
            group: string | null | undefined;
            hidden: boolean | null;
            horizontalAlign: "left" | "center" | "right" | null;
            id: string | null;
            isAnonymous: boolean;
            isBold: boolean | null;
            isCommentThreadRoot: boolean;
            isDeletable: boolean | undefined;
            isEditable: boolean | undefined;
            isItalic: boolean | null;
            lineHeightFactor: number | null;
            locked: boolean | null;
            lockedContents: boolean | null;
            name: string | null;
            noPrint: boolean | null;
            noRotate: boolean;
            note: string | null;
            noView: boolean | null;
            noZoom: boolean;
            opacity: number | null;
            pageIndex: number | null;
            pdfObjectId: number | null;
            readOnly: boolean | null;
            rotation: number;
            subject: string | null;
            updatedAt: Date | null;
            verticalAlign: "center" | "top" | "bottom" | null;
            widgetAttachmentId: string | null;
            [key: string]: unknown;
        }[K]

      Returns this

    • Returns {
          action: NutrientViewer.Actions.Action | null;
          additionalActions:
              | {
                  onBlur?: NutrientViewer.Actions.JavaScriptAction;
                  onChange?: NutrientViewer.Actions.JavaScriptAction;
                  onFocus?: NutrientViewer.Actions.JavaScriptAction;
                  onFormat?: NutrientViewer.Actions.JavaScriptAction;
                  onInput?: NutrientViewer.Actions.JavaScriptAction;
                  onPointerDown?: NutrientViewer.Actions.Action;
                  onPointerEnter?: NutrientViewer.Actions.Action;
                  onPointerLeave?: NutrientViewer.Actions.Action;
                  onPointerUp?: NutrientViewer.Actions.Action;
              }
              | null;
          APStreamCache: { cache: string }
          | { attach: string }
          | undefined;
          backgroundColor: NutrientViewer.Color | null;
          blendMode:
              | "normal"
              | "multiply"
              | "screen"
              | "overlay"
              | "darken"
              | "lighten"
              | "colorDodge"
              | "colorBurn"
              | "hardLight"
              | "softLight"
              | "difference"
              | "exclusion";
          borderColor: NutrientViewer.Color
          | null;
          borderDashArray: number[] | null;
          borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
          borderWidth: number | null;
          boundingBox: NutrientViewer.Geometry.Rect | null;
          buttonIconUpdatedAt: number | null;
          canReply: boolean | undefined;
          canSetGroup: boolean | undefined;
          contentType: string | null;
          createdAt: Date | null;
          creatorName: string | null;
          customData: Record<string, unknown> | null;
          font: string | null;
          fontColor: NutrientViewer.Color | null;
          fontSize: FontSize | null;
          formFieldName: string | null;
          group: string | null | undefined;
          hidden: boolean | null;
          horizontalAlign: "left" | "center" | "right" | null;
          id: string | null;
          isAnonymous: boolean;
          isBold: boolean | null;
          isCommentThreadRoot: boolean;
          isDeletable: boolean | undefined;
          isEditable: boolean | undefined;
          isItalic: boolean | null;
          lineHeightFactor: number | null;
          locked: boolean | null;
          lockedContents: boolean | null;
          name: string | null;
          noPrint: boolean | null;
          noRotate: boolean;
          note: string | null;
          noView: boolean | null;
          noZoom: boolean;
          opacity: number | null;
          pageIndex: number | null;
          pdfObjectId: number | null;
          readOnly: boolean | null;
          rotation: number;
          subject: string | null;
          updatedAt: Date | null;
          verticalAlign: "center" | "top" | "bottom" | null;
          widgetAttachmentId: string | null;
          [key: string]: unknown;
      }

    • Returns {
          action: NutrientViewer.Actions.Action | null;
          additionalActions:
              | {
                  onBlur?: NutrientViewer.Actions.JavaScriptAction;
                  onChange?: NutrientViewer.Actions.JavaScriptAction;
                  onFocus?: NutrientViewer.Actions.JavaScriptAction;
                  onFormat?: NutrientViewer.Actions.JavaScriptAction;
                  onInput?: NutrientViewer.Actions.JavaScriptAction;
                  onPointerDown?: NutrientViewer.Actions.Action;
                  onPointerEnter?: NutrientViewer.Actions.Action;
                  onPointerLeave?: NutrientViewer.Actions.Action;
                  onPointerUp?: NutrientViewer.Actions.Action;
              }
              | null;
          APStreamCache: { cache: string }
          | { attach: string }
          | undefined;
          backgroundColor: NutrientViewer.Color | null;
          blendMode:
              | "normal"
              | "multiply"
              | "screen"
              | "overlay"
              | "darken"
              | "lighten"
              | "colorDodge"
              | "colorBurn"
              | "hardLight"
              | "softLight"
              | "difference"
              | "exclusion";
          borderColor: NutrientViewer.Color
          | null;
          borderDashArray: number[] | null;
          borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
          borderWidth: number | null;
          boundingBox: NutrientViewer.Geometry.Rect | null;
          buttonIconUpdatedAt: number | null;
          canReply: boolean | undefined;
          canSetGroup: boolean | undefined;
          contentType: string | null;
          createdAt: Date | null;
          creatorName: string | null;
          customData: Record<string, unknown> | null;
          font: string | null;
          fontColor: NutrientViewer.Color | null;
          fontSize: FontSize | null;
          formFieldName: string | null;
          group: string | null | undefined;
          hidden: boolean | null;
          horizontalAlign: "left" | "center" | "right" | null;
          id: string | null;
          isAnonymous: boolean;
          isBold: boolean | null;
          isCommentThreadRoot: boolean;
          isDeletable: boolean | undefined;
          isEditable: boolean | undefined;
          isItalic: boolean | null;
          lineHeightFactor: number | null;
          locked: boolean | null;
          lockedContents: boolean | null;
          name: string | null;
          noPrint: boolean | null;
          noRotate: boolean;
          note: string | null;
          noView: boolean | null;
          noZoom: boolean;
          opacity: number | null;
          pageIndex: number | null;
          pdfObjectId: number | null;
          readOnly: boolean | null;
          rotation: number;
          subject: string | null;
          updatedAt: Date | null;
          verticalAlign: "center" | "top" | "bottom" | null;
          widgetAttachmentId: string | null;
          [key: string]: unknown;
      }

    • Returns Keyed<string, unknown>

    • Type Parameters

      • K extends keyof {
            action: NutrientViewer.Actions.Action | null;
            additionalActions:
                | {
                    onBlur?: NutrientViewer.Actions.JavaScriptAction;
                    onChange?: NutrientViewer.Actions.JavaScriptAction;
                    onFocus?: NutrientViewer.Actions.JavaScriptAction;
                    onFormat?: NutrientViewer.Actions.JavaScriptAction;
                    onInput?: NutrientViewer.Actions.JavaScriptAction;
                    onPointerDown?: NutrientViewer.Actions.Action;
                    onPointerEnter?: NutrientViewer.Actions.Action;
                    onPointerLeave?: NutrientViewer.Actions.Action;
                    onPointerUp?: NutrientViewer.Actions.Action;
                }
                | null;
            APStreamCache: { cache: string }
            | { attach: string }
            | undefined;
            backgroundColor: NutrientViewer.Color | null;
            blendMode:
                | "normal"
                | "multiply"
                | "screen"
                | "overlay"
                | "darken"
                | "lighten"
                | "colorDodge"
                | "colorBurn"
                | "hardLight"
                | "softLight"
                | "difference"
                | "exclusion";
            borderColor: NutrientViewer.Color
            | null;
            borderDashArray: number[] | null;
            borderStyle: IBorderStyle | null;
            borderWidth: number | null;
            boundingBox: NutrientViewer.Geometry.Rect | null;
            buttonIconUpdatedAt: number | null;
            canReply: boolean | undefined;
            canSetGroup: boolean | undefined;
            contentType: string | null;
            createdAt: Date | null;
            creatorName: string | null;
            customData: Record<string, unknown> | null;
            font: string | null;
            fontColor: NutrientViewer.Color | null;
            fontSize: FontSize | null;
            formFieldName: string | null;
            group: string | null | undefined;
            hidden: boolean | null;
            horizontalAlign: "left" | "center" | "right" | null;
            id: string | null;
            isAnonymous: boolean;
            isBold: boolean | null;
            isCommentThreadRoot: boolean;
            isDeletable: boolean | undefined;
            isEditable: boolean | undefined;
            isItalic: boolean | null;
            lineHeightFactor: number | null;
            locked: boolean | null;
            lockedContents: boolean | null;
            name: string | null;
            noPrint: boolean | null;
            noRotate: boolean;
            note: string | null;
            noView: boolean | null;
            noZoom: boolean;
            opacity: number | null;
            pageIndex: number | null;
            pdfObjectId: number | null;
            readOnly: boolean | null;
            rotation: number;
            subject: string | null;
            updatedAt: Date | null;
            verticalAlign: "center" | "top" | "bottom" | null;
            widgetAttachmentId: string | null;
            [key: string]: unknown;
        }

      Parameters

      • key: K
      • updater: (
            value: {
                action: NutrientViewer.Actions.Action | null;
                additionalActions:
                    | {
                        onBlur?: NutrientViewer.Actions.JavaScriptAction;
                        onChange?: NutrientViewer.Actions.JavaScriptAction;
                        onFocus?: NutrientViewer.Actions.JavaScriptAction;
                        onFormat?: NutrientViewer.Actions.JavaScriptAction;
                        onInput?: NutrientViewer.Actions.JavaScriptAction;
                        onPointerDown?: NutrientViewer.Actions.Action;
                        onPointerEnter?: NutrientViewer.Actions.Action;
                        onPointerLeave?: NutrientViewer.Actions.Action;
                        onPointerUp?: NutrientViewer.Actions.Action;
                    }
                    | null;
                APStreamCache: { cache: string }
                | { attach: string }
                | undefined;
                backgroundColor: NutrientViewer.Color | null;
                blendMode:
                    | "normal"
                    | "multiply"
                    | "screen"
                    | "overlay"
                    | "darken"
                    | "lighten"
                    | "colorDodge"
                    | "colorBurn"
                    | "hardLight"
                    | "softLight"
                    | "difference"
                    | "exclusion";
                borderColor: NutrientViewer.Color
                | null;
                borderDashArray: number[] | null;
                borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
                borderWidth: number | null;
                boundingBox: NutrientViewer.Geometry.Rect | null;
                buttonIconUpdatedAt: number | null;
                canReply: boolean | undefined;
                canSetGroup: boolean | undefined;
                contentType: string | null;
                createdAt: Date | null;
                creatorName: string | null;
                customData: Record<string, unknown> | null;
                font: string | null;
                fontColor: NutrientViewer.Color | null;
                fontSize: FontSize | null;
                formFieldName: string | null;
                group: string | null | undefined;
                hidden: boolean | null;
                horizontalAlign: "left" | "center" | "right" | null;
                id: string | null;
                isAnonymous: boolean;
                isBold: boolean | null;
                isCommentThreadRoot: boolean;
                isDeletable: boolean | undefined;
                isEditable: boolean | undefined;
                isItalic: boolean | null;
                lineHeightFactor: number | null;
                locked: boolean | null;
                lockedContents: boolean | null;
                name: string | null;
                noPrint: boolean | null;
                noRotate: boolean;
                note: string | null;
                noView: boolean | null;
                noZoom: boolean;
                opacity: number | null;
                pageIndex: number | null;
                pdfObjectId: number | null;
                readOnly: boolean | null;
                rotation: number;
                subject: string | null;
                updatedAt: Date | null;
                verticalAlign: "center" | "top" | "bottom" | null;
                widgetAttachmentId: string | null;
                [key: string]: unknown;
            }[K],
        ) => {
            action: NutrientViewer.Actions.Action
            | null;
            additionalActions:
                | {
                    onBlur?: NutrientViewer.Actions.JavaScriptAction;
                    onChange?: NutrientViewer.Actions.JavaScriptAction;
                    onFocus?: NutrientViewer.Actions.JavaScriptAction;
                    onFormat?: NutrientViewer.Actions.JavaScriptAction;
                    onInput?: NutrientViewer.Actions.JavaScriptAction;
                    onPointerDown?: NutrientViewer.Actions.Action;
                    onPointerEnter?: NutrientViewer.Actions.Action;
                    onPointerLeave?: NutrientViewer.Actions.Action;
                    onPointerUp?: NutrientViewer.Actions.Action;
                }
                | null;
            APStreamCache: { cache: string }
            | { attach: string }
            | undefined;
            backgroundColor: NutrientViewer.Color | null;
            blendMode:
                | "normal"
                | "multiply"
                | "screen"
                | "overlay"
                | "darken"
                | "lighten"
                | "colorDodge"
                | "colorBurn"
                | "hardLight"
                | "softLight"
                | "difference"
                | "exclusion";
            borderColor: NutrientViewer.Color
            | null;
            borderDashArray: number[] | null;
            borderStyle: "solid" | "dashed" | "beveled" | "inset" | "underline" | null;
            borderWidth: number | null;
            boundingBox: NutrientViewer.Geometry.Rect | null;
            buttonIconUpdatedAt: number | null;
            canReply: boolean | undefined;
            canSetGroup: boolean | undefined;
            contentType: string | null;
            createdAt: Date | null;
            creatorName: string | null;
            customData: Record<string, unknown> | null;
            font: string | null;
            fontColor: NutrientViewer.Color | null;
            fontSize: FontSize | null;
            formFieldName: string | null;
            group: string | null | undefined;
            hidden: boolean | null;
            horizontalAlign: "left" | "center" | "right" | null;
            id: string | null;
            isAnonymous: boolean;
            isBold: boolean | null;
            isCommentThreadRoot: boolean;
            isDeletable: boolean | undefined;
            isEditable: boolean | undefined;
            isItalic: boolean | null;
            lineHeightFactor: number | null;
            locked: boolean | null;
            lockedContents: boolean | null;
            name: string | null;
            noPrint: boolean | null;
            noRotate: boolean;
            note: string | null;
            noView: boolean | null;
            noZoom: boolean;
            opacity: number | null;
            pageIndex: number | null;
            pdfObjectId: number | null;
            readOnly: boolean | null;
            rotation: number;
            subject: string | null;
            updatedAt: Date | null;
            verticalAlign: "center" | "top" | "bottom" | null;
            widgetAttachmentId: string | null;
            [key: string]: unknown;
        }[K]

      Returns this

    • Parameters

      • keyPath: Iterable<unknown>
      • notSetValue: unknown
      • updater: (value: unknown) => unknown

      Returns this

    • Parameters

      • keyPath: Iterable<unknown>
      • updater: (value: unknown) => unknown

      Returns this

    • Parameters

      • mutator: (mutable: this) => unknown

      Returns this