import { IFormatSettings } from './lib'; export interface ISerializableState { /** * Serialize the state of the object in a base64 string, * depending on formating settings this could be an encrypted state */ serializeState(settings: IFormatSettings): Promise; } /** * * @param {unknown} obj * @param {string} methodName * @return {boolean} */ export declare function hasMethod(obj: unknown, methodName: string): boolean; /** * Check if a object implements IDisposableAsync interface * @param {unknown} obj * @return {boolean} */ export declare function isDisposableAsync(obj: unknown): boolean; /** * Checks if an object implements the IDisposable interface * @param {unknown} obj * @return {boolean} */ export declare function isDisposable(obj: unknown): boolean; /** * * @param {string} json * @param {IFormatSettings} settings */ export declare function encrypt(json: string, settings: IFormatSettings): Promise; /** * * @param {string} base64CipherText * @param {IFormatSettings} settings * @return {Promise} */ export declare function decrypt(base64CipherText: string, settings: IFormatSettings): Promise;