pub fn issue_invoice_tx(
		&self,
		keychain_mask: Option<&SecretKey>,
		args: IssueInvoiceTxArgs,
	) -> Result<Slate, Error> {
		let mut w_lock = self.wallet_inst.lock();
		let w = w_lock.lc_provider()?.wallet_inst()?;
		owner::issue_invoice_tx(&mut **w, keychain_mask, args, self.doctest_mode, 1)
	}
/// Issues a new invoice transaction slate, essentially a `request for payment`.
/// The slate created by this function will contain the amount, an output for the amount,
/// as well as round 1 of singature creation complete. The slate should then be send
/// to the payer, who should add their inputs and signature data and return the slate
/// via the [Foreign API's `finalize_invoice_tx`](struct.Foreign.html#method.finalize_invoice_tx) method.
///
/// # Arguments
/// * `keychain_mask` - Wallet secret mask to XOR against the stored wallet seed before using, if
/// being used.
/// * `args` - [`IssueInvoiceTxArgs`](../mimble_wallet_libwallet/types/struct.IssueInvoiceTxArgs.html),
/// invoice transaction initialization arguments. See struct documentation for further detail.
///
/// # Returns
/// * ``Ok([`slate`](../mimble_wallet_libwallet/slate/struct.Slate.html))` if successful,
/// containing the updated slate.
/// * or [`libwallet::Error`](../mimble_wallet_libwallet/struct.Error.html) if an error is encountered.
///
/// # Example
/// Set up as in [`new`](struct.Owner.html#method.new) method above.
/// ```
/// # mimble_wallet_api::doctest_helper_setup_doc_env!(wallet, wallet_config);
///
/// let mut api_owner = Owner::new(wallet.clone(), None, None);
///
/// let args = IssueInvoiceTxArgs {
///     amount: 60_000_000_000,
///     ..Default::default()
/// };
/// let result = api_owner.issue_invoice_tx(None, args);
///
/// if let Ok(slate) = result {
///     // if okay, send to the payer to add their inputs
///     // . . .
/// }
/// ```
Issues a new invoice transaction slate, essentially a `request for payment`.
The slate created by this function will contain the amount, an output for the amount,
as well as round 1 of singature creation complete. The slate should then be send
to the payer, who should add their inputs and signature data and return the slate
via the [Foreign API's `finalize_invoice_tx`](struct.Foreign.html#method.finalize_invoice_tx) method.
Issues a new invoice transaction slate essentially a ` request for payment ` . The slate created by this function will contain the amount an output for the amount as well as round 1 of singature creation complete . The slate should then be send to the payer who should add their inputs and signature data and return the slate via the [ Foreign API ' s ` finalize_invoice_tx ` ] ( struct . Foreign . html#method . finalize_invoice_tx ) method .
pub fn issue_invoice_tx(
		&self,
		keychain_mask: Option<&SecretKey>,
		args: IssueInvoiceTxArgs,
	) -> Result<Slate, Error> {
		let mut w_lock = self.wallet_inst.lock();
		let w = w_lock.lc_provider()?.wallet_inst()?;
		owner::issue_invoice_tx(&mut **w, keychain_mask, args, self.doctest_mode, 1)
	}
pub fn issue_invoice_tx ( & self , keychain_mask : Option < & SecretKey > , args : IssueInvoiceTxArgs , ) -> Result < Slate , Error > { let mut w_lock = self . wallet_inst . lock ( ) ; let w = w_lock . lc_provider ( ) ? . wallet_inst ( ) ? ; owner :: issue_invoice_tx ( & mut * * w , keychain_mask , args , self . doctest_mode , 1 ) }
Issues a new invoice transaction slate, essentially a `request for payment`.
Issues a new invoice transaction slate essentially a ` request for payment ` .
&self
keychain_mask
Option<&SecretKey>
args
IssueInvoiceTxArgs
``Ok([`slate`](../mimble_wallet_libwallet/slate/struct.Slate.html))` if successful,
containing the updated slate.
or [`libwallet::Error`](../mimble_wallet_libwallet/struct.Error.html) if an error is encountered.
` ` Ok ( [ ` slate ` ] ( .. / mimble_wallet_libwallet / slate / struct . Slate . html )) ` if successful containing the updated slate . or [ ` libwallet :: Error ` ] ( .. / mimble_wallet_libwallet / struct . Error . html ) if an error is encountered .
&self
keychain_mask
Option<&SecretKey>
args
IssueInvoiceTxArgs
example
Set up as in [`new`](struct.Owner.html#method.new) method above.
Set up as in [ ` new ` ] ( struct . Owner . html#method . new ) method above .
mimble_wallet_api::doctest_helper_setup_doc_env!(wallet, wallet_config);
let mut api_owner = Owner::new(wallet.clone(), None, None).

let args = IssueInvoiceTxArgs {
amount: 60_000_000_000,
Default::default()
};
let result = api_owner.issue_invoice_tx(None, args).

if let Ok(slate) = result {
if okay, send to the payer to add their inputs
. .
let mut api_owner = Owner :: new ( wallet . clone () None None ) . let args = IssueInvoiceTxArgs { amount : 60_000_000_000 Default :: default () } ; let result = api_owner . issue_invoice_tx ( None args ) . if let Ok ( slate ) = result { if okay send to the payer to add their inputs . .