lightningdevkit
Version:
Lightning Development Kit
29 lines (28 loc) • 1.28 kB
text/typescript
import { Result_CVec_u8ZNoneZ } from '../structs/Result_CVec_u8ZNoneZ.mjs';
import { CommonBase } from './CommonBase.mjs';
/** An implementation of ChangeDestinationSource */
export interface ChangeDestinationSourceInterface {
/**Returns a script pubkey which can be used as a change destination for
* [`OutputSpender::spend_spendable_outputs`].
*
* This method should return a different value each time it is called, to avoid linking
* on-chain funds controlled to the same user.
*/
get_change_destination_script(): Result_CVec_u8ZNoneZ;
}
/**
* A helper trait that describes an on-chain wallet capable of returning a (change) destination
* script.
*/
export declare class ChangeDestinationSource extends CommonBase {
/** Creates a new instance of ChangeDestinationSource from a given implementation */
static new_impl(arg: ChangeDestinationSourceInterface): ChangeDestinationSource;
/**
* Returns a script pubkey which can be used as a change destination for
* [`OutputSpender::spend_spendable_outputs`].
*
* This method should return a different value each time it is called, to avoid linking
* on-chain funds controlled to the same user.
*/
get_change_destination_script(): Result_CVec_u8ZNoneZ;
}