import * as em from "../../Enums"; import * as tp from "../../Types"; import { ObjectBase } from "../../ObjectBase"; import { type PdfDocument } from "../PdfDocument"; import { type SecurityHandlerBase } from "./SecurityHandlerBase"; /** * Provides security and encryption services and manages permissions for * {@link PdfDocument} objects. **/ export declare class Security extends ObjectBase { /** * Gets the {@link PdfDocument} object owning this object. **/ get doc(): PdfDocument; /** * Gets the decryption status of the loaded document. * This property has meaning only if a document has been loaded. */ get decryptionStatus(): em.DecryptionStatus; /** * Gets the {@link SecurityHandlerBase} used to decrypt PDF document during loading. */ get decryptHandler(): SecurityHandlerBase | null; /** * Gets or sets the {@link SecurityHandlerBase} used to encrypt PDF document during saving. * Same {@link SecurityHandlerBase} can not be used for {@link Security#decryptHandler} and * {@link Security#encryptHandler}, use {@link SecurityHandlerBase#clone}. */ get encryptHandler(): SecurityHandlerBase | null; /** * Gets or sets the {@link SecurityHandlerBase} used to encrypt PDF document during saving. * Same {@link SecurityHandlerBase} can not be used for {@link Security#decryptHandler} and * {@link Security#encryptHandler}, use {@link SecurityHandlerBase#clone}. */ set encryptHandler(value: SecurityHandlerBase); /** * Creates the {@link StandardSecurityHandler} object and assigns it to the * {@link encryptHandler} property. * The type and properties of the {@link StandardSecurityHandler} object * is determined by the {@link Security#setEncryptOptions.options} object. * @param options The {@link tp.EncryptOptions} object. */ setEncryptOptions(options: tp.EncryptOptions): void; }