import { type FilenSDK, type FileEncryptionVersion, type MetadataEncryptionVersion } from ".."; /** * Encrypt * @date 2/1/2024 - 2:44:28 AM * * @export * @class Encrypt * @typedef {Encrypt} */ export declare class Encrypt { private readonly sdk; /** * Creates an instance of Encrypt. * * @constructor * @public * @param {FilenSDK} sdk */ constructor(sdk: FilenSDK); /** * Encrypt metadata using the user's DEK or a provided key. * * @public * @async * @param {{ * metadata: string * key?: string * version?: MetadataEncryptionVersion * }} param0 * @param {string} param0.metadata * @param {string} param0.key * @param {MetadataEncryptionVersion} [param0.version=METADATA_ENCRYPTION_VERSION] * @returns {Promise} */ metadata({ metadata, key, version }: { metadata: string; key?: string; version?: MetadataEncryptionVersion; }): Promise; /** * Encrypts metadata using a public key. * * @public * @async * @param {{ metadata: string; publicKey: string }} param0 * @param {string} param0.metadata * @param {string} param0.publicKey * @returns {Promise} */ metadataPublic({ metadata, publicKey }: { metadata: string; publicKey: string; }): Promise; /** * Encrypt a chat message using the conversation encryption key. * @date 2/6/2024 - 3:01:09 AM * * @public * @async * @param {{ message: string; key: string }} param0 * @param {string} param0.message * @param {string} param0.key * @returns {Promise} */ chatMessage({ message, key }: { message: string; key: string; }): Promise; /** * Encrypt note content using the note's encryption key. * @date 2/6/2024 - 3:02:23 AM * * @public * @async * @param {{ content: string; key: string }} param0 * @param {string} param0.content * @param {string} param0.key * @returns {Promise} */ noteContent({ content, key }: { content: string; key: string; }): Promise; /** * Encrypt the note's title using the note's encryption key. * @date 2/6/2024 - 3:02:44 AM * * @public * @async * @param {{ title: string; key: string }} param0 * @param {string} param0.title * @param {string} param0.key * @returns {Promise} */ noteTitle({ title, key }: { title: string; key: string; }): Promise; /** * Encrypt the note's preview using the note's encryption key. * @date 2/6/2024 - 3:02:56 AM * * @public * @async * @param {{ preview: string; key: string }} param0 * @param {string} param0.preview * @param {string} param0.key * @returns {Promise} */ notePreview({ preview, key }: { preview: string; key: string; }): Promise; /** * Encrypt a tag's name using the given key. * @date 2/20/2024 - 3:21:12 AM * * @public * @async * @param {{ name: string; key?: string }} param0 * @param {string} param0.name * @param {string} param0.key * @returns {Promise} */ noteTagName({ name, key }: { name: string; key?: string; }): Promise; /** * Encrypt the conversation name using the conversation encryption key. * @date 2/6/2024 - 3:03:45 AM * * @public * @async * @param {{ name: string; key: string }} param0 * @param {string} param0.name * @param {string} param0.key * @returns {Promise} */ chatConversationName({ name, key }: { name: string; key: string; }): Promise; data({ data, key, version }: { data: Buffer; key: string; version?: FileEncryptionVersion; }): Promise; dataStream({ inputFile, key, outputFile, version }: { inputFile: string; key: string; outputFile?: string; version?: FileEncryptionVersion; }): Promise; } export default Encrypt;