@grapecity/gcpdfviewer
Version:
GcDocs PDF Viewer
63 lines (62 loc) • 1.73 kB
TypeScript
/// <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";
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 = {};
export type SignToolModel = {
penColor?: string;
penWidth?: number;
};
export type BaseToolProps = {
enabled: boolean;
settings?: SignToolSettings;
in17n: i18n;
signToolStorage: SignToolStorage;
canvasSize: {
width: number;
height: number;
};
onChanged: (isDirty: boolean) => void;
};
export type TypeToolModel = {
textColor?: string;
text?: string;
fontSize?: number;
fontName?: string;
italic?: boolean;
bold?: boolean;
};
export type ImageToolModel = {
hasImage?: boolean;
};
export interface ISignTool {
toDataURL(): string;
toImageData(): Promise<Uint8Array | null>;
}