import type { WalletAccount } from '../../../wallets/walletAccount';
import type { BusinessAccountSignerType, TargetSignerIdentity } from '../businessAccounts.types';
type AddSignerParams = {
    businessAccountId?: string;
    password?: string;
    signerType?: BusinessAccountSignerType;
    targetSignerIdentity: TargetSignerIdentity;
    walletAccount: WalletAccount;
    walletId?: string;
};
/**
 * Adds a signer to a business-account wallet via the reshare ceremony, minting
 * the new signer's share set. Identify the target by `userId`, or `identifier`
 * + `identifierType` (the user is created if absent).
 *
 * Omit `businessAccountId` to add a signer to a wallet that isn't in a business
 * account yet: the wallet's per-account is found-or-created first (idempotent —
 * converts the personal wallet, seating its owner as the first signer), then
 * the new signer is reshared in.
 *
 * @param params.walletAccount - The wallet account to add the signer to.
 * @param [params.businessAccountId] - The business account; found-or-created when omitted.
 * @param [params.walletId] - The wallet UUID to link when finding-or-creating; defaults to `walletAccount.verifiedCredentialId`.
 * @param params.targetSignerIdentity - The signer to add (userId, or identifier + identifierType).
 * @param [params.signerType] - `endUser` (default) or `server`.
 * @param [params.password] - Password for the reshare, if the wallet is password-encrypted.
 * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
 * @returns The new signer's share set id.
 * @notInstrumented
 */
export declare const addBusinessAccountSigner: ({ walletAccount, businessAccountId, walletId, targetSignerIdentity, signerType, password, }: AddSignerParams, client?: import("../../../../exports").DynamicClient) => Promise<{
    shareSetId: string;
}>;
export {};
//# sourceMappingURL=addBusinessAccountSigner.d.ts.map