# Functions
CraftSweepAllTx attempts to craft a WalletSweepPackage which will allow the caller to sweep ALL outputs within the wallet to a list of outputs.
DefaultNextAttemptDeltaFunc is the default calculation for next sweep attempt scheduling.
DetermineFeePerKw will determine the fee in sat/kw that should be paid given an estimator, a confirmation target, and a manual value for sat/byte.
DisableLog disables all library log output.
New returns a new Sweeper instance.
NewMockNotifier instantiates a new mock notifier.
NewMockSweeperStore returns a new instance.
NewSweeperStore returns a new store instance.
UseLogger uses a specified Logger to output package logging info.
# Constants
DefaultFeeRateBucketSize is the default size of fee rate buckets we'll use when clustering inputs into buckets with similar fee rates within the UtxoSweeper.
# Variables
DefaultBatchWindowDuration specifies duration of the sweep batch window.
DefaultMaxFeeRate is the default maximum fee rate allowed within the UtxoSweeper.
DefaultMaxInputsPerTx specifies the default maximum number of inputs allowed in a single sweep tx.
DefaultMaxSweepAttempts specifies the default maximum number of times an input is included in a publish attempt before giving up and returning an error to the caller.
ErrExclusiveGroupSpend is returned in case a different input of the same exclusive group was spent.
ErrFeePreferenceTooLow is returned when the fee preference gives a fee rate that's below the relay fee rate.
ErrNoFeePreference is returned when we attempt to satisfy a sweep request from a client whom did not specify a fee preference.
ErrRemoteSpend is returned in case an output that we try to sweep is confirmed in a tx of the remote party.
ErrSweeperShuttingDown is an error returned when a client attempts to make a request to the UtxoSweeper, but it is unable to handle it as it is/has already been stopped.
ErrTooManyAttempts is returned in case sweeping an output has failed for the configured max number of attempts.
# Structs
DeliveryAddr is a pair of (address, amount) used to craft a transaction paying to more than one specified address.
FeePreference allows callers to express their time value for inclusion of a transaction into a block via either a confirmation target, or a fee rate.
MockNotifier simulates the chain notifier for test purposes.
MockSweeperStore is a mock implementation of sweeper store.
Params contains the parameters that control the sweeping process.
ParamsUpdate contains a new set of parameters to update a pending sweep with.
PendingInput contains information about an input that is currently being swept by the UtxoSweeper.
Result is the struct that is pushed through the result channel.
UtxoSweeper is responsible for sweeping outputs back into the wallet.
UtxoSweeperConfig contains dependencies of UtxoSweeper.
WalletSweepPackage is a package that gives the caller the ability to sweep ALL funds from a wallet in a single transaction.
# Interfaces
CoinSelectionLocker is an interface that allows the caller to perform an operation, which is synchronized with all coin selection attempts.
OutputLeaser allows a caller to lease/release an output.
SweeperStore stores published txes.
UtxoSource is an interface that allows a caller to access a source of UTXOs to use when crafting sweep transactions.
Wallet contains all wallet related functionality required by sweeper.