import { Policy } from "./interfaces/policy"; export declare class CoverCryptMasterKey { private _secretKey; private _publicKey; get secretKey(): Uint8Array; set secretKey(value: Uint8Array); get publicKey(): Uint8Array; set publicKey(value: Uint8Array); constructor(secretKey: Uint8Array, publicKey: Uint8Array); } /** * Generate the keys using the local web assembly */ export declare class CoverCryptKeyGeneration { /** * Generate the Master Key Par * @param {Policy} policy the policy to use * @returns {CoverCryptMasterKey} the master keys */ generateMasterKeys(policy: Policy): CoverCryptMasterKey; /** * Generate a User Decryption Key * @param {Uint8Array} masterSecretKeyBytes The Master Private Key Bytes * @param {string} accessPolicy the access policy as a boolean expression * e.g. (Department::MKG || Department::FIN) && Security Level::Medium Secret * @param {Policy} policy the policy of the master key * @returns {Uint8Array} the user decryption key bytes */ generateUserSecretKey(masterSecretKeyBytes: Uint8Array, accessPolicy: string, policy: Policy): Uint8Array; } /** * Generate the Master Key Par * @param {Policy} policy the policy to use * @returns {CoverCryptMasterKey} the master keys */ export declare function generateMasterKeys(policy: Policy): CoverCryptMasterKey; /** * Generate a User Decryption Key * @param {Uint8Array} masterSecretKeyBytes The Master Private Key Bytes * @param {string} accessPolicy the access policy as a boolean expression * e.g. (Department::MKG || Department::FIN) && Security Level::Medium Secret * @param {Policy} policy the policy of the master key * @returns {Uint8Array} the user decryption key bytes */ export declare function generateUserSecretKey(masterSecretKeyBytes: Uint8Array, accessPolicy: string, policy: Policy): Uint8Array; //# sourceMappingURL=key_generation.d.ts.map