{"avoid_reuse",RPCArg::Type::BOOL,/* default */"false","Keep track of coin reuse, and treat dirty and clean coins differently with privacy considerations in mind."},
{"descriptors",RPCArg::Type::BOOL,/* default */"false","Create a native descriptor wallet. The wallet will use descriptors internally to handle address creation"},
{"load_on_startup",RPCArg::Type::BOOL,/* default */"null","Save wallet name to persistent settings and load on startup. True to add wallet to startup list, false to remove, null to leave unchanged."},
{"external_signer",RPCArg::Type::BOOL,/* default */"false","Use an external signer such as a hardware wallet. Requires -signer to be configured. Wallet creation will fail if keys cannot be fetched. Requires disable_private_keys and descriptors set to true."},
# disable_private_keys and descriptors must be true:
assert_raises_rpc_error(-4,"Private keys must be disabled when using an external signer",self.nodes[1].createwallet,wallet_name='not_hww',disable_private_keys=False,descriptors=True,external_signer=True)
ifself.is_bdb_compiled():
assert_raises_rpc_error(-4,"Descriptor support must be enabled when using an external signer",self.nodes[1].createwallet,wallet_name='not_hww',disable_private_keys=True,descriptors=False,external_signer=True)
else:
assert_raises_rpc_error(-4,"Compiled without bdb support (required for legacy wallets)",self.nodes[1].createwallet,wallet_name='not_hww',disable_private_keys=True,descriptors=False,external_signer=True)