import { NameType, PrivateKey, PublicKeyType, Checksum256 } from '@wharfkit/antelope';
import { Signer } from '../../sdk/services/blockchain';
/**
 * creates a key based on secure (hashing) key generation algorithm Argon2
 */
export declare function generatePrivateKeyFromPassword(password: string, salt?: Checksum256): Promise<{
    privateKey: PrivateKey;
    salt: Checksum256;
}>;
export declare function getSigner(): Signer;
export declare function getDefaultAntelopePrivateKey(): PrivateKey;
export declare function getDefaultAntelopePublicKey(): import("@wharfkit/antelope").PublicKey;
export declare function updateAccountKey(account: NameType, newPublicKey: PublicKeyType, addCodePermission?: boolean): Promise<void>;
/**
 * Updates the control by account, modifying the active and owner authorities.
 *
 * @param {NameType} account - The account name to update.
 * @param {string} controllerAccount - The account name(s) with controller permissions.
 * @param {boolean} [options.addCodePermission=false] - Whether to add code permission to the authorities. To add the eosio.code authority for smart contracts change this to [true]
 * @param {boolean} [options.replaceActive=true] - Whether to replace the active authority with the owner authority.
 * @param {boolean} [options.useTonomyContract=false] - Whether to use the tonomy eosio proxy contract instead of the eosio contract.
 * @returns {Promise<void>} A Promise that resolves when the update is complete.
 */
export declare function updateControlByAccount(account: NameType, controllerAccount: string | string[], signer: Signer, options?: {
    addCodePermission?: boolean;
    replaceActive?: boolean;
    useTonomyContract?: boolean;
}): Promise<void>;
//# sourceMappingURL=keys.d.ts.map