Skip to content

Commit 3783f69

Browse files
committed
interface: add StaticAddressLoopInRequest interface
1 parent 38990c8 commit 3783f69

File tree

1 file changed

+42
-0
lines changed

1 file changed

+42
-0
lines changed

interface.go

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,48 @@ type LoopInRequest struct {
234234
RouteHints [][]zpay32.HopHint
235235
}
236236

237+
// StaticAddressLoopInRequest contains the required parameters for the swap.
238+
type StaticAddressLoopInRequest struct {
239+
// DepositOutpoints contain the outpoints in format txid:idx of the
240+
// static address deposits that are being looped in. The sum of output
241+
// values constitute the swap amount.
242+
DepositOutpoints []string
243+
244+
// MaxSwapFee is the maximum we are willing to pay the server for the
245+
// swap. This value is not disclosed in the swap initiation call, but if
246+
// the server asks for a higher fee, we abort the swap. Typically, this
247+
// value is taken from the response of the LoopInQuote call. It
248+
// includes the pre-pay amount.
249+
MaxSwapFee btcutil.Amount
250+
251+
// LastHop optionally specifies the last hop to use for the loop in
252+
// payment.
253+
LastHop *route.Vertex
254+
255+
// Label contains an optional text label for the swap.
256+
Label string
257+
258+
// Initiator is an optional string that identifies what software
259+
// initiated the swap (loop CLI, autolooper, LiT UI and so on) and is
260+
// appended to the user agent string.
261+
Initiator string
262+
263+
// Private indicates whether the destination node should be considered
264+
// private. In which case, loop will generate hophints to assist with
265+
// probing and payment.
266+
Private bool
267+
268+
// RouteHints are optional route hints to reach the destination through
269+
// private channels.
270+
RouteHints [][]zpay32.HopHint
271+
272+
// PaymentTimeoutSeconds allows the user to specify an upper limit for
273+
// the amount of time the server is allowed to fulfill the off-chain
274+
// swap payment. If the timeout is reached the swap will be aborted and
275+
// the client can retry the swap if desired with different parameters.
276+
PaymentTimeoutSeconds uint32
277+
}
278+
237279
// LoopInTerms are the server terms on which it executes loop in swaps.
238280
type LoopInTerms struct {
239281
// MinSwapAmount is the minimum amount that the server requires for a

0 commit comments

Comments
 (0)