UNPKG

@mescius/dspdfviewer

Version:
87 lines (86 loc) 2.09 kB
/// <reference path="../vendor/i18next.d.ts" /> //@ts-ignore import { i18n } from "i18next"; //@ts-ignore import { ModalPosition } from "@grapecity/core-ui"; import { SignToolSettings } from "../ViewerOptions"; import { SignToolStorage } from "./SignToolStorage"; /** * Signature tool type. * */ export type SignToolType = 'Type' | 'Draw' | 'Image'; /** * **/ export type SignToolDialogModel = { autoResizeCanvas?: boolean; canvasSize?: { width: number; height: number; }; enabled: boolean; hideSaveSignature?: boolean; isChanged: boolean; location?: 'Center' | 'Top' | 'Right' | 'Bottom' | 'Left' | 'TopLeft' | 'TopRight' | 'BottomRight' | 'BottomLeft' | { x: number; y: number; }; pageIndex?: number; tabs?: ('Type' | 'Draw' | 'Image'); title?: string; selectedTab?: SignToolType; saveSignature?: boolean; subject?: string; convertToContent?: boolean; showModal: boolean; modalPosition?: ModalPosition; }; export type SignToolDialogProps = {}; /** * Sign tool component state model. **/ export type SignToolModel = { penColor?: string; penWidth?: number; }; /** * Sign tool component properties. **/ export type BaseToolProps = { enabled: boolean; settings?: SignToolSettings; in17n: i18n; signToolStorage: SignToolStorage; canvasSize: { width: number; height: number; }; onChanged: (isDirty: boolean) => void; }; /** * Type tool component state model. **/ export type TypeToolModel = { textColor?: string; text?: string; fontSize?: number; fontName?: string; italic?: boolean; bold?: boolean; }; /** * Image tool component state model. **/ export type ImageToolModel = { hasImage?: boolean; }; export interface ISignTool { /** * Returns result image as data url. **/ toDataURL(): string; /** * Returns result image blob data. **/ toImageData(): Promise<Uint8Array | null>; }