crate::ix!();
pub struct ScriptPubKeyMan {
storage: Rc<RefCell<dyn WalletStorage>>,
notify_watchonly_changed: Signal<fn(have_watch_only: bool) -> ()>,
notify_can_get_addresses_changed: Signal<fn() -> ()>,
}
impl GetNewDestination for ScriptPubKeyMan {
fn get_new_destination(&mut self,
ty: OutputType,
dest: &mut TxDestination,
error: &mut BilingualStr) -> bool {
todo!();
}
}
impl IsMine for ScriptPubKeyMan {
fn is_mine(&self, script: &Script) -> IsMineType {
todo!();
}
}
impl CheckDecryptionKey for ScriptPubKeyMan {
fn check_decryption_key(&mut self,
master_key: &KeyingMaterial,
accept_no_keys: Option<bool>) -> bool {
let accept_no_keys: bool = accept_no_keys.unwrap_or(false);
todo!();
}
}
impl Encrypt for ScriptPubKeyMan {
fn encrypt(&mut self,
master_key: &KeyingMaterial,
batch: *mut WalletBatch) -> bool {
todo!();
}
}
impl GetReservedDestination for ScriptPubKeyMan {
fn get_reserved_destination(&mut self,
ty: OutputType,
internal: bool,
address: &mut TxDestination,
index: &mut i64,
keypool: &mut KeyPool,
error: &mut BilingualStr) -> bool {
todo!();
}
}
impl KeepDestination for ScriptPubKeyMan {
fn keep_destination(&mut self,
index: i64,
ty: &OutputType) {
todo!();
}
}
impl ReturnDestination for ScriptPubKeyMan {
fn return_destination(&mut self,
index: i64,
internal: bool,
addr: &TxDestination) {
todo!();
}
}
impl TopUp for ScriptPubKeyMan {
fn top_up(&mut self, size: Option<u32>) -> bool {
let size: u32 = size.unwrap_or(0);
todo!();
}
}
impl MarkUnusedAddresses for ScriptPubKeyMan {
fn mark_unused_addresses(&mut self, script: &Script) { }
}
impl SetupGeneration for ScriptPubKeyMan {
fn setup_generation(&mut self, force: Option<bool>) -> bool {
let force: bool = force.unwrap_or(false);
todo!();
}
}
impl IsHDEnabled for ScriptPubKeyMan {
fn is_hd_enabled(&self) -> bool {
todo!();
}
}
impl CanGetAddresses for ScriptPubKeyMan {
fn can_get_addresses(&self, internal: Option<bool>) -> bool {
let internal: bool = internal.unwrap_or(false);
todo!();
}
}
impl Upgrade for ScriptPubKeyMan {
fn upgrade(&mut self,
prev_version: i32,
new_version: i32,
error: &mut BilingualStr) -> bool {
todo!();
}
}
impl HavePrivateKeys for ScriptPubKeyMan {
fn have_private_keys(&self) -> bool {
todo!();
}
}
impl RewriteDB for ScriptPubKeyMan {
fn rewritedb(&mut self) {
}
}
impl GetOldestKeyPoolTime for ScriptPubKeyMan {
fn get_oldest_key_pool_time(&self) -> i64 {
todo!();
}
}
impl GetKeyPoolSize for ScriptPubKeyMan {
fn get_key_pool_size(&self) -> u32 {
todo!();
}
}
impl GetTimeFirstKey for ScriptPubKeyMan {
fn get_time_first_key(&self) -> i64 {
todo!();
}
}
impl GetMetadata for ScriptPubKeyMan {
fn get_metadata(&self, dest: &TxDestination) -> Box<KeyMetadata> {
todo!();
}
}
impl GetSolvingProvider for ScriptPubKeyMan {
fn get_solving_provider(&self, script: &Script) -> Box<SigningProvider> {
todo!();
}
}
impl CanProvide for ScriptPubKeyMan {
fn can_provide(&mut self,
script: &Script,
sigdata: &mut SignatureData) -> bool {
todo!();
}
}
impl SignTransaction for ScriptPubKeyMan {
fn sign_transaction(&self,
tx: &mut MutableTransaction,
coins: &HashMap<OutPoint,Coin>,
sighash: i32,
input_errors: &mut HashMap<i32,BilingualStr>) -> bool {
todo!();
}
}
impl SignMessage for ScriptPubKeyMan {
fn sign_message(&self,
message: &String,
pkhash: &PKHash,
str_sig: &mut String) -> SigningResult {
todo!();
}
}
impl FillPSBT for ScriptPubKeyMan {
fn fill_psbt(&self,
psbt: &mut PartiallySignedTransaction,
txdata: &PrecomputedTransactionData,
sighash_type: Option<i32>,
sign: Option<bool>,
bip_32derivs: Option<bool>,
n_signed: Option<*mut i32>) -> TransactionError {
let sighash_type: i32 = sighash_type.unwrap_or(1); let sign: bool = sign.unwrap_or(true);
let bip_32derivs: bool = bip_32derivs.unwrap_or(false);
todo!();
}
}
impl GetID for ScriptPubKeyMan {
fn getid(&self) -> u256 {
todo!();
}
}
impl ScriptPubKeyMan {
pub fn new<'a>(storage: &'a mut dyn WalletStorage) -> Self {
todo!();
}
pub fn wallet_log_printf<Params>(&self,
fmt: String,
parameters: Params) {
todo!();
}
}