@adobe/pdfservices-node-sdk
Version:
The Adobe PDF Services Node.js SDK provides APIs for creating, combining, exporting and manipulating PDFs.
70 lines (69 loc) • 3.1 kB
TypeScript
import { PDFServicesJobParams } from "../PDFServicesJobParams";
import { EncryptionAlgorithm } from "./EncryptionAlgorithm";
import { ContentEncryption } from "./ContentEncryption";
import { Permissions } from "./Permissions";
/**
* Parameters for securing PDF file with passwords and document permissions using {@link ProtectPDFJob}.
*/
export declare class ProtectPDFParams implements PDFServicesJobParams {
private readonly _userPassword?;
private readonly _ownerPassword?;
private readonly _encryptionAlgorithm;
private readonly _contentEncryption?;
private readonly _permissions?;
/**
* Constructs a new `ProtectPDFParams` instance.
*
* @param params - The parameters for constructing a `ProtectPDFParams` instance.
* @param [params.userPassword] - The user password required for opening the encrypted PDF file.
* Allowed maximum length for the user password is 128 characters.
* @param [params.ownerPassword] - The owner password required to control access permissions in the
* encrypted PDF file. This password can also be used to open/view the encrypted PDF file. Allowed maximum length
* for the user password is 128 characters.
* @param params.encryptionAlgorithm The encryption algorithm required for encrypting the PDF file.
* For AES-128 encryption, the password supports LATIN-I characters only. For AES-256 encryption, passwords
* supports Unicode character set. Cannot be undefined.
* @param [params.contentEncryption] The type of content to encrypt in the PDF file. Default value is
* {@link ContentEncryption#ALL_CONTENT ALL_CONTENT}.
* @param [params.permissions] The permissions for the encrypted PDF file. This includes permissions to
* allow printing, editing and content copying in the PDF document. Permissions can only be used in case the
* owner password is set.
*/
constructor(params: {
userPassword?: string;
ownerPassword?: string;
encryptionAlgorithm: EncryptionAlgorithm;
contentEncryption?: ContentEncryption;
permissions?: Permissions;
});
/**
* Returns the user password of the resulting encrypted PDF file.
*
* @returns the user password
*/
get userPassword(): string | undefined;
/**
* Returns the owner password of the resulting encrypted PDF file.
*
* @returns the owner password.
*/
get ownerPassword(): string | undefined;
/**
* Returns the {@link EncryptionAlgorithm} of the resulting encrypted PDF file.
*
* @returns the encryption algorithm.
*/
get encryptionAlgorithm(): EncryptionAlgorithm;
/**
* Returns the type of {@link ContentEncryption} for the resulting encrypted PDF file.
*
* @returns the type of content to encrypt.
*/
get contentEncryption(): ContentEncryption | undefined;
/**
* Returns the document {@link Permissions} for the resulting encrypted PDF file.
*
* @returns the document permissions.
*/
get permissions(): Permissions | undefined;
}