export type BusinessAccountMemberRole = 'owner' | 'admin' | 'viewer'; export type CreateBusinessAccountInput = { name?: string; externalRef?: string; metadata?: Record; }; export type ListBusinessAccountsInput = { externalRefs?: string[]; }; export type AddBusinessAccountMemberInput = { businessAccountId: string; userId?: string; identifier?: string; identifierType?: BusinessAccountSignerIdentifierType; role?: BusinessAccountMemberRole; }; export type CreateWalletForBusinessAccountInput = { businessAccountId: string; chainName?: string; thresholdSignatureScheme?: string; password?: string; }; export type AddWalletToBusinessAccountInput = { businessAccountId?: string; walletId: string; }; export type RemoveBusinessAccountMemberInput = { businessAccountId: string; userId: string; }; export type UpdateBusinessAccountMemberRoleInput = { businessAccountId: string; userId: string; role: 'admin' | 'viewer'; }; export type TransferBusinessAccountOwnershipInput = { businessAccountId: string; newOwnerUserId: string; }; export type RemoveBusinessAccountWalletInput = { businessAccountId: string; walletId: string; }; export type RemoveBusinessAccountSignerInput = { businessAccountId: string; walletId: string; signerId: string; }; export type UpdateBusinessAccountInput = { businessAccountId: string; name: string; }; export type BusinessAccountSignerIdentifierType = 'email' | 'phoneNumber' | 'externalUserId' | 'socialUsername' | 'socialAccountId' | 'id'; export type BusinessAccountSignerType = 'endUser' | 'server'; export type TargetSignerIdentity = { userId?: string; identifier?: string; identifierType?: BusinessAccountSignerIdentifierType; }; export type AddBusinessAccountSignerInput = { businessAccountId?: string; walletId?: string; accountAddress: string; chainName: string; targetSignerIdentity: TargetSignerIdentity; signerType?: BusinessAccountSignerType; password?: string; targetSignerPassword?: string; }; export declare const useBusinessAccounts: () => { addBusinessAccountMember: ({ businessAccountId, userId, identifier, identifierType, role, }: AddBusinessAccountMemberInput) => Promise; addBusinessAccountSigner: ({ accountAddress, walletId, chainName, businessAccountId, targetSignerIdentity, signerType, password, targetSignerPassword, }: AddBusinessAccountSignerInput) => Promise<{ shareSetId: string; } | import("@dynamic-labs-wallet/core").BusinessAccountActionRequired>; addWalletToBusinessAccount: (input: AddWalletToBusinessAccountInput) => Promise; createBusinessAccount: (input?: CreateBusinessAccountInput) => Promise; createWalletForBusinessAccount: ({ businessAccountId, chainName, thresholdSignatureScheme, password, }: CreateWalletForBusinessAccountInput) => Promise<{ accountAddress: string; publicKeyHex: string; rawPublicKey: string | Uint8Array | undefined; }>; defaultChainName: string | undefined; enabledChainNames: string[]; getBusinessAccount: (businessAccountId: string) => Promise; listBusinessAccounts: (input?: ListBusinessAccountsInput) => Promise; listMyWalletAccounts: () => Promise; removeBusinessAccountMember: ({ businessAccountId, userId }: RemoveBusinessAccountMemberInput) => Promise; removeBusinessAccountSigner: (input: RemoveBusinessAccountSignerInput) => Promise; removeBusinessAccountWallet: (input: RemoveBusinessAccountWalletInput) => Promise; transferBusinessAccountOwnership: (input: TransferBusinessAccountOwnershipInput) => Promise; updateBusinessAccount: (input: UpdateBusinessAccountInput) => Promise; updateBusinessAccountMemberRole: (input: UpdateBusinessAccountMemberRoleInput) => Promise; };