Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deps: update lnd to v0.17.0-beta #30

Merged
merged 1 commit into from
Oct 30, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
125 changes: 112 additions & 13 deletions lib/types/proto/lnd/lightning.ts
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@ export enum CommitmentType {
* channel before its maturity date.
*/
SCRIPT_ENFORCED_LEASE = 'SCRIPT_ENFORCED_LEASE',
/** SIMPLE_TAPROOT - TODO(roasbeef): need script enforce mirror type for the above as well? */
SIMPLE_TAPROOT = 'SIMPLE_TAPROOT',
UNRECOGNIZED = 'UNRECOGNIZED'
}

Expand Down Expand Up @@ -995,6 +997,12 @@ export interface Channel {
peerAlias: string;
/** This is the peer SCID alias. */
peerScidAlias: string;
/**
* An optional note-to-self to go along with the channel containing some
* useful information. This is only ever stored locally and in no way impacts
* the channel's operation.
*/
memo: string;
}

export interface ListChannelsRequest {
Expand Down Expand Up @@ -1460,6 +1468,61 @@ export interface BatchOpenChannel {
* the remote peer supports explicit channel negotiation.
*/
commitmentType: CommitmentType;
/**
* The maximum amount of coins in millisatoshi that can be pending within
* the channel. It only applies to the remote party.
*/
remoteMaxValueInFlightMsat: string;
/**
* The maximum number of concurrent HTLCs we will allow the remote party to add
* to the commitment transaction.
*/
remoteMaxHtlcs: number;
/**
* Max local csv is the maximum csv delay we will allow for our own commitment
* transaction.
*/
maxLocalCsv: number;
/** If this is true, then a zero-conf channel open will be attempted. */
zeroConf: boolean;
/**
* If this is true, then an option-scid-alias channel-type open will be
* attempted.
*/
scidAlias: boolean;
/** The base fee charged regardless of the number of milli-satoshis sent. */
baseFee: string;
/**
* The fee rate in ppm (parts per million) that will be charged in
* proportion of the value of each forwarded HTLC.
*/
feeRate: string;
/**
* If use_base_fee is true the open channel announcement will update the
* channel base fee with the value specified in base_fee. In the case of
* a base_fee of 0 use_base_fee is needed downstream to distinguish whether
* to use the default base fee value specified in the config or 0.
*/
useBaseFee: boolean;
/**
* If use_fee_rate is true the open channel announcement will update the
* channel fee rate with the value specified in fee_rate. In the case of
* a fee_rate of 0 use_fee_rate is needed downstream to distinguish whether
* to use the default fee rate value specified in the config or 0.
*/
useFeeRate: boolean;
/**
* The number of satoshis we require the remote peer to reserve. This value,
* if specified, must be above the dust limit and below 20% of the channel
* capacity.
*/
remoteChanReserveSat: string;
/**
* An optional note-to-self to go along with the channel containing some
* useful information. This is only ever stored locally and in no way impacts
* the channel's operation.
*/
memo: string;
}

export interface BatchOpenChannelResponse {
Expand Down Expand Up @@ -1608,6 +1671,14 @@ export interface OpenChannelRequest {
* be zero and is ignored.
*/
fundMax: boolean;
/**
* An optional note-to-self to go along with the channel containing some
* useful information. This is only ever stored locally and in no way impacts
* the channel's operation.
*/
memo: string;
/** A list of selected outpoints that are allocated for channel funding. */
outpoints: OutPoint[];
}

export interface OpenStatusUpdate {
Expand Down Expand Up @@ -1674,6 +1745,8 @@ export interface ChanPointShim {
* the value is less than 500,000, or as an absolute height otherwise.
*/
thawHeight: number;
/** Indicates that the funding output is using a MuSig2 multi-sig output. */
musig2: boolean;
}

export interface PsbtShim {
Expand Down Expand Up @@ -1850,6 +1923,12 @@ export interface PendingChannelsResponse_PendingChannel {
chanStatusFlags: string;
/** Whether this channel is advertised to the network or not. */
private: boolean;
/**
* An optional note-to-self to go along with the channel containing some
* useful information. This is only ever stored locally and in no way
* impacts the channel's operation.
*/
memo: string;
}

export interface PendingChannelsResponse_PendingOpenChannel {
Expand All @@ -1871,6 +1950,18 @@ export interface PendingChannelsResponse_PendingOpenChannel {
* transaction. This value can later be updated once the channel is open.
*/
feePerKw: string;
/**
* The number of blocks until the funding transaction is considered
* expired. If this value gets close to zero, there is a risk that the
* channel funding will be canceled by the channel responder. The
* channel should be fee bumped using CPFP (see walletrpc.BumpFee) to
* ensure that the channel confirms in time. Otherwise a force-close
* will be necessary if the channel confirms after the funding
* transaction expires. A negative value means the channel responder has
* very likely canceled the funding and the channel will never become
* fully operational.
*/
fundingExpiryBlocks: number;
}

export interface PendingChannelsResponse_WaitingCloseChannel {
Expand Down Expand Up @@ -1983,7 +2074,13 @@ export interface WalletAccountBalance {
unconfirmedBalance: string;
}

export interface WalletBalanceRequest {}
export interface WalletBalanceRequest {
/**
* The wallet account the balance is shown for.
* If this is not specified, the balance of the "default" account is shown.
*/
account: string;
}

export interface WalletBalanceResponse {
/** The balance of the wallet */
Expand Down Expand Up @@ -2691,21 +2788,21 @@ export interface Invoice {
amtPaid: string;
/**
* The amount that was accepted for this invoice, in satoshis. This will ONLY
* be set if this invoice has been settled. We provide this field as if the
* invoice was created with a zero value, then we need to record what amount
* was ultimately accepted. Additionally, it's possible that the sender paid
* MORE that was specified in the original invoice. So we'll record that here
* as well.
* be set if this invoice has been settled or accepted. We provide this field
* as if the invoice was created with a zero value, then we need to record what
* amount was ultimately accepted. Additionally, it's possible that the sender
* paid MORE that was specified in the original invoice. So we'll record that
* here as well.
* Note: Output only, don't specify for creating an invoice.
*/
amtPaidSat: string;
/**
* The amount that was accepted for this invoice, in millisatoshis. This will
* ONLY be set if this invoice has been settled. We provide this field as if
* the invoice was created with a zero value, then we need to record what
* amount was ultimately accepted. Additionally, it's possible that the sender
* paid MORE that was specified in the original invoice. So we'll record that
* here as well.
* ONLY be set if this invoice has been settled or accepted. We provide this
* field as if the invoice was created with a zero value, then we need to
* record what amount was ultimately accepted. Additionally, it's possible that
* the sender paid MORE that was specified in the original invoice. So we'll
* record that here as well.
* Note: Output only, don't specify for creating an invoice.
*/
amtPaidMsat: string;
Expand Down Expand Up @@ -3878,8 +3975,10 @@ export interface Lightning {
): Promise<SignMessageResponse>;
/**
* lncli: `verifymessage`
* VerifyMessage verifies a signature over a msg. The signature must be
* zbase32 encoded and signed by an active node in the resident node's
* VerifyMessage verifies a signature over a message and recovers the signer's
* public key. The signature is only deemed valid if the recovered public key
* corresponds to a node key in the public Lightning network. The signature
* must be zbase32 encoded and signed by an active node in the resident node's
* channel database. In addition to returning the validity of the signature,
* VerifyMessage also returns the recovered pubkey from the signature.
*/
Expand Down
9 changes: 9 additions & 0 deletions lib/types/proto/lnd/signrpc/signer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -364,6 +364,15 @@ export interface MuSig2SessionRequest {
* combined key and nonces are created.
*/
version: MuSig2Version;
/**
* A set of pre generated secret local nonces to use in the musig2 session.
* This field is optional. This can be useful for protocols that need to send
* nonces ahead of time before the set of signer keys are known. This value
* MUST be 97 bytes and be the concatenation of two CSPRNG generated 32 byte
* values and local public key used for signing as specified in the key_loc
* field.
*/
pregeneratedLocalNonce: Uint8Array | string;
}

export interface MuSig2SessionResponse {
Expand Down
6 changes: 5 additions & 1 deletion lib/types/proto/lnd/walletrpc/walletkit.ts
Original file line number Diff line number Diff line change
Expand Up @@ -531,7 +531,11 @@ export interface ImportTapscriptResponse {
}

export interface Transaction {
/** The raw serialized transaction. */
/**
* The raw serialized transaction. Despite the field name, this does need to be
* specified in raw bytes (or base64 encoded when using REST) and not in hex.
* To not break existing software, the field can't simply be renamed.
*/
txHex: Uint8Array | string;
/** An optional label to save with the transaction. Limited to 500 characters. */
label: string;
Expand Down
14 changes: 14 additions & 0 deletions lib/types/proto/tapd/assetwalletrpc/assetwallet.ts
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,13 @@ export interface VerifyAssetOwnershipResponse {
validProof: boolean;
}

export interface RemoveUTXOLeaseRequest {
/** The outpoint of the UTXO to remove the lease for. */
outpoint: OutPoint | undefined;
}

export interface RemoveUTXOLeaseResponse {}

export interface AssetWallet {
/**
* FundVirtualPsbt selects inputs from the available asset commitments to fund
Expand Down Expand Up @@ -183,6 +190,13 @@ export interface AssetWallet {
verifyAssetOwnership(
request?: DeepPartial<VerifyAssetOwnershipRequest>
): Promise<VerifyAssetOwnershipResponse>;
/**
* RemoveUTXOLease removes the lease/lock/reservation of the given managed
* UTXO.
*/
removeUTXOLease(
request?: DeepPartial<RemoveUTXOLeaseRequest>
): Promise<RemoveUTXOLeaseResponse>;
}

type Builtin =
Expand Down
40 changes: 30 additions & 10 deletions lib/types/proto/tapd/mintrpc/mint.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/* eslint-disable */
import type { AssetType, AssetMeta } from '../taprootassets';
import type { AssetType, AssetVersion, AssetMeta } from '../taprootassets';

export enum BatchState {
BATCH_STATE_UNKNOWN = 'BATCH_STATE_UNKNOWN',
Expand Down Expand Up @@ -36,6 +36,8 @@ export interface MintAsset {
* This asset will be minted with the same group key as the anchor asset.
*/
groupAnchor: string;
/** The version of asset to mint. */
assetVersion: AssetVersion;
}

export interface MintAssetRequest {
Expand All @@ -46,31 +48,46 @@ export interface MintAssetRequest {
* future asset issuance.
*/
enableEmission: boolean;
/**
* If true, then the assets currently in the batch won't be returned in the
* response. This is mainly to avoid a lot of data being transmitted and
* possibly printed on the command line in the case of a very large batch.
*/
shortResponse: boolean;
}

export interface MintAssetResponse {
/** The pending batch the asset was added to. */
pendingBatch: MintingBatch | undefined;
}

export interface MintingBatch {
/**
* A public key serialized in compressed format that can be used to uniquely
* identify a pending minting batch. Responses that share the same key will be
* batched into the same minting transaction.
*/
batchKey: Uint8Array | string;
}

export interface MintingBatch {
/** The internal public key of the batch. */
batchKey: Uint8Array | string;
/** The assets that are part of the batch. */
assets: MintAsset[];
/** The state of the batch. */
state: BatchState;
}

export interface FinalizeBatchRequest {}
export interface FinalizeBatchRequest {
/**
* If true, then the assets currently in the batch won't be returned in the
* response. This is mainly to avoid a lot of data being transmitted and
* possibly printed on the command line in the case of a very large batch.
*/
shortResponse: boolean;
/** The optional fee rate to use for the minting transaction, in sat/kw. */
feeRate: number;
}

export interface FinalizeBatchResponse {
/** The internal public key of the batch. */
batchKey: Uint8Array | string;
/** The finalized batch. */
batch: MintingBatch | undefined;
}

export interface CancelBatchRequest {}
Expand Down Expand Up @@ -101,7 +118,10 @@ export interface Mint {
/**
* tapcli: `assets mint`
* MintAsset will attempt to mint the set of assets (async by default to
* ensure proper batching) specified in the request.
* ensure proper batching) specified in the request. The pending batch is
* returned that shows the other pending assets that are part of the next
* batch. This call will block until the operation succeeds (asset is staged
* in the batch) or fails.
*/
mintAsset(
request?: DeepPartial<MintAssetRequest>
Expand Down
Loading