export type { KeyPair, KeyType, StringKeyPair, StringOutputFormat, Uint8ArrayOutputFormat, } from 'libsodium-wrappers';
export { base64_variants, to_string } from './libsodium-js-utils';
import type { KeyPair, StringKeyPair, StringOutputFormat, Uint8ArrayOutputFormat } from 'libsodium-wrappers';
import { base64_variants } from './libsodium-js-utils';
declare global {
    var jsi_crypto_secretbox_KEYBYTES: number;
    var jsi_crypto_secretbox_NONCEBYTES: number;
    var jsi_crypto_pwhash_SALTBYTES: number;
    var jsi_crypto_pwhash_ALG_DEFAULT: number;
    var jsi_crypto_pwhash_OPSLIMIT_INTERACTIVE: number;
    var jsi_crypto_pwhash_MEMLIMIT_INTERACTIVE: number;
    var jsi_crypto_box_PUBLICKEYBYTES: number;
    var jsi_crypto_box_SECRETKEYBYTES: number;
    var jsi_crypto_box_NONCEBYTES: number;
    var jsi_crypto_aead_xchacha20poly1305_ietf_KEYBYTES: number;
    var jsi_crypto_aead_xchacha20poly1305_ietf_NPUBBYTES: number;
    var jsi_crypto_kdf_KEYBYTES: number;
    var jsi_crypto_pwhash_BYTES_MIN: number;
    var jsi_crypto_pwhash_BYTES_MAX: number;
    var jsi_crypto_kdf_CONTEXTBYTES: number;
    function jsi_from_base64_to_arraybuffer(input: string, variant?: base64_variants): ArrayBuffer;
    function jsi_to_base64_from_string(input: string, variant: base64_variants): string;
    function jsi_to_base64_from_arraybuffer(input: ArrayBuffer, variant: base64_variants): string;
    function jsi_to_hex_from_string(input: string): string;
    function jsi_to_hex_from_arraybuffer(input: ArrayBuffer): string;
    function jsi_randombytes_buf(length: number): ArrayBuffer;
    function jsi_randombytes_uniform(upper_bound: number): number;
    function jsi_crypto_secretbox_keygen(): ArrayBuffer;
    function jsi_crypto_aead_xchacha20poly1305_ietf_keygen(): ArrayBuffer;
    function jsi_crypto_kdf_keygen(): ArrayBuffer;
    function jsi_crypto_box_keypair(): {
        publicKey: ArrayBuffer;
        secretKey: ArrayBuffer;
    };
    function jsi_crypto_sign_keypair(): {
        publicKey: ArrayBuffer;
        secretKey: ArrayBuffer;
    };
    function jsi_crypto_sign_keypair_from_string(message: string, privateKey: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_sign_keypair_from_arraybuffer(message: ArrayBuffer, privateKey: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_sign_verify_detached_from_string(signature: ArrayBuffer, message: string, publicKey: ArrayBuffer): boolean;
    function jsi_crypto_sign_verify_detached_from_arraybuffer(signature: ArrayBuffer, message: ArrayBuffer, publicKey: ArrayBuffer): boolean;
    function jsi_crypto_secretbox_easy_from_string(message: string, nonce: ArrayBuffer, key: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_secretbox_easy_from_arraybuffer(message: ArrayBuffer, nonce: ArrayBuffer, key: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_secretbox_open_easy_from_string(ciphertext: string, nonce: ArrayBuffer, key: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_secretbox_open_easy_from_arraybuffer(ciphertext: ArrayBuffer, nonce: ArrayBuffer, key: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_box_easy_from_string(message: string, nonce: ArrayBuffer, publicKey: ArrayBuffer, secretKey: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_box_easy_from_arraybuffer(message: ArrayBuffer, nonce: ArrayBuffer, publicKey: ArrayBuffer, secretKey: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_box_open_easy_from_string(ciphertext: string, nonce: ArrayBuffer, publicKey: ArrayBuffer, secretKey: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_box_open_easy_from_arraybuffer(ciphertext: ArrayBuffer, nonce: ArrayBuffer, publicKey: ArrayBuffer, secretKey: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_pwhash_from_string(keyLength: number, password: string, salt: ArrayBuffer, opsLimit: number, memLimit: number, algorithm: number): ArrayBuffer;
    function jsi_crypto_pwhash_from_arraybuffer(keyLength: number, password: ArrayBuffer, salt: ArrayBuffer, opsLimit: number, memLimit: number, algorithm: number): ArrayBuffer;
    function jsi_crypto_kdf_derive_from_key(subkeyLength: number, subkeyId: number, context: string, key: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_aead_xchacha20poly1305_ietf_encrypt_from_string(message: string, additionalData: string, nonce: ArrayBuffer, key: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_aead_xchacha20poly1305_ietf_encrypt_from_arraybuffer(message: ArrayBuffer, additionalData: string, nonce: ArrayBuffer, key: ArrayBuffer): ArrayBuffer;
    function jsi_crypto_aead_xchacha20poly1305_ietf_decrypt_from_arraybuffer(ciphertext: ArrayBuffer, additionalData: string, nonce: ArrayBuffer, key: ArrayBuffer): ArrayBuffer;
}
export declare const crypto_secretbox_KEYBYTES: number;
export declare const crypto_secretbox_NONCEBYTES: number;
export declare const crypto_pwhash_SALTBYTES: number;
export declare const crypto_pwhash_ALG_DEFAULT: number;
export declare const crypto_pwhash_OPSLIMIT_INTERACTIVE: number;
export declare const crypto_pwhash_MEMLIMIT_INTERACTIVE: number;
export declare const crypto_box_PUBLICKEYBYTES: number;
export declare const crypto_box_SECRETKEYBYTES: number;
export declare const crypto_box_NONCEBYTES: number;
export declare const crypto_aead_xchacha20poly1305_ietf_KEYBYTES: number;
export declare const crypto_aead_xchacha20poly1305_ietf_NPUBBYTES: number;
export declare const crypto_kdf_KEYBYTES: number;
export declare const crypto_pwhash_BYTES_MIN: number;
export declare const crypto_pwhash_BYTES_MAX: number;
export declare const crypto_kdf_CONTEXTBYTES: number;
export declare const from_base64: (input: string, variant?: base64_variants) => Uint8Array;
export declare const to_base64: (input: string | Uint8Array, variant?: base64_variants) => string;
export declare function to_hex(input: string | Uint8Array): string;
export declare function randombytes_buf(length: number, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function randombytes_buf(length: number, outputFormat: StringOutputFormat): string;
export declare function randombytes_uniform(upper_bound: number): number;
export declare function crypto_secretbox_keygen(outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_secretbox_keygen(outputFormat: StringOutputFormat): string;
export declare function crypto_aead_xchacha20poly1305_ietf_keygen(outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_aead_xchacha20poly1305_ietf_keygen(outputFormat: StringOutputFormat): string;
export declare function crypto_kdf_keygen(outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_kdf_keygen(outputFormat: StringOutputFormat): string;
export declare function crypto_box_keypair(outputFormat?: Uint8ArrayOutputFormat | null): KeyPair;
export declare function crypto_box_keypair(outputFormat: StringOutputFormat): StringKeyPair;
export declare function crypto_sign_keypair(outputFormat?: Uint8ArrayOutputFormat | null): KeyPair;
export declare function crypto_sign_keypair(outputFormat: StringOutputFormat): StringKeyPair;
export declare function crypto_sign_detached(message: string | Uint8Array, privateKey: Uint8Array, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_sign_detached(message: string | Uint8Array, privateKey: Uint8Array, outputFormat: StringOutputFormat): string;
export declare function crypto_sign_verify_detached(signature: Uint8Array, message: string | Uint8Array, publicKey: Uint8Array): boolean;
export declare function crypto_secretbox_easy(message: string | Uint8Array, nonce: Uint8Array, key: Uint8Array, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_secretbox_easy(message: string | Uint8Array, nonce: Uint8Array, key: Uint8Array, outputFormat: StringOutputFormat): string;
export declare function crypto_secretbox_open_easy(ciphertext: string | Uint8Array, nonce: Uint8Array, key: Uint8Array, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_secretbox_open_easy(ciphertext: string | Uint8Array, nonce: Uint8Array, key: Uint8Array, outputFormat: StringOutputFormat): string;
export declare function crypto_box_easy(message: string | Uint8Array, nonce: Uint8Array, publicKey: Uint8Array, privateKey: Uint8Array, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_box_easy(message: string | Uint8Array, nonce: Uint8Array, publicKey: Uint8Array, privateKey: Uint8Array, outputFormat: StringOutputFormat): string;
export declare function crypto_box_open_easy(ciphertext: string | Uint8Array, nonce: Uint8Array, publicKey: Uint8Array, privateKey: Uint8Array, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_box_open_easy(ciphertext: string | Uint8Array, nonce: Uint8Array, publicKey: Uint8Array, privateKey: Uint8Array, outputFormat: StringOutputFormat): string;
export declare function crypto_pwhash(keyLength: number, password: string | Uint8Array, salt: Uint8Array, opsLimit: number, memLimit: number, algorithm: number, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_pwhash(keyLength: number, password: string | Uint8Array, salt: Uint8Array, opsLimit: number, memLimit: number, algorithm: number, outputFormat: StringOutputFormat): string;
export declare function crypto_kdf_derive_from_key(subkey_len: number, subkey_id: number, ctx: string, key: Uint8Array, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_kdf_derive_from_key(subkey_len: number, subkey_id: number, ctx: string, key: Uint8Array, outputFormat: StringOutputFormat): string;
export declare function crypto_aead_xchacha20poly1305_ietf_encrypt(message: string | Uint8Array, additional_data: string | Uint8Array | null, secret_nonce: string | Uint8Array | null, public_nonce: Uint8Array, key: Uint8Array, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_aead_xchacha20poly1305_ietf_encrypt(message: string | Uint8Array, additional_data: string | Uint8Array | null, secret_nonce: string | Uint8Array | null, public_nonce: Uint8Array, key: Uint8Array, outputFormat: StringOutputFormat): string;
export declare function crypto_aead_xchacha20poly1305_ietf_decrypt(secret_nonce: string | Uint8Array | null, ciphertext: string | Uint8Array, additional_data: string | Uint8Array | null, public_nonce: Uint8Array, key: Uint8Array, outputFormat?: Uint8ArrayOutputFormat | null): Uint8Array;
export declare function crypto_aead_xchacha20poly1305_ietf_decrypt(secret_nonce: string | Uint8Array | null, ciphertext: string | Uint8Array, additional_data: string | Uint8Array | null, public_nonce: Uint8Array, key: Uint8Array, outputFormat: StringOutputFormat): string;
export declare const ready: Promise<void>;
declare const _default: {
    crypto_aead_xchacha20poly1305_ietf_decrypt: typeof crypto_aead_xchacha20poly1305_ietf_decrypt;
    crypto_aead_xchacha20poly1305_ietf_encrypt: typeof crypto_aead_xchacha20poly1305_ietf_encrypt;
    crypto_aead_xchacha20poly1305_ietf_KEYBYTES: number;
    crypto_aead_xchacha20poly1305_ietf_keygen: typeof crypto_aead_xchacha20poly1305_ietf_keygen;
    crypto_aead_xchacha20poly1305_ietf_NPUBBYTES: number;
    crypto_box_easy: typeof crypto_box_easy;
    crypto_box_keypair: typeof crypto_box_keypair;
    crypto_box_NONCEBYTES: number;
    crypto_box_open_easy: typeof crypto_box_open_easy;
    crypto_box_PUBLICKEYBYTES: number;
    crypto_box_SECRETKEYBYTES: number;
    crypto_kdf_derive_from_key: typeof crypto_kdf_derive_from_key;
    crypto_kdf_CONTEXTBYTES: number;
    crypto_kdf_KEYBYTES: number;
    crypto_kdf_keygen: typeof crypto_kdf_keygen;
    crypto_pwhash: typeof crypto_pwhash;
    crypto_pwhash_ALG_DEFAULT: number;
    crypto_pwhash_BYTES_MAX: number;
    crypto_pwhash_BYTES_MIN: number;
    crypto_pwhash_MEMLIMIT_INTERACTIVE: number;
    crypto_pwhash_OPSLIMIT_INTERACTIVE: number;
    crypto_pwhash_SALTBYTES: number;
    crypto_secretbox_easy: typeof crypto_secretbox_easy;
    crypto_secretbox_KEYBYTES: number;
    crypto_secretbox_keygen: typeof crypto_secretbox_keygen;
    crypto_secretbox_NONCEBYTES: number;
    crypto_secretbox_open_easy: typeof crypto_secretbox_open_easy;
    crypto_sign_detached: typeof crypto_sign_detached;
    crypto_sign_keypair: typeof crypto_sign_keypair;
    crypto_sign_verify_detached: typeof crypto_sign_verify_detached;
    from_base64: (input: string, variant?: base64_variants | undefined) => Uint8Array;
    randombytes_buf: typeof randombytes_buf;
    randombytes_uniform: typeof randombytes_uniform;
    ready: Promise<void>;
    to_base64: (input: string | Uint8Array, variant?: base64_variants | undefined) => string;
    to_hex: typeof to_hex;
    to_string: (bytes: Uint8Array) => string;
};
export default _default;
//# sourceMappingURL=index.d.ts.map