app+proto: run make and make protos

This commit is contained in:
Elle Mouton 2022-09-14 14:45:22 +02:00
parent 9ddc74276a
commit 35083a1833
No known key found for this signature in database
GPG key ID: D7D916376026F177
14 changed files with 2321 additions and 31 deletions

157
app/src/types/generated/lnd_pb.d.ts generated vendored
View file

@ -219,6 +219,11 @@ export class Transaction extends jspb.Message {
getLabel(): string;
setLabel(value: string): void;
clearPreviousOutpointsList(): void;
getPreviousOutpointsList(): Array<PreviousOutPoint>;
setPreviousOutpointsList(value: Array<PreviousOutPoint>): void;
addPreviousOutpoints(value?: PreviousOutPoint, index?: number): PreviousOutPoint;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Transaction.AsObject;
static toObject(includeInstance: boolean, msg: Transaction): Transaction.AsObject;
@ -242,6 +247,7 @@ export namespace Transaction {
outputDetailsList: Array<OutputDetail.AsObject>,
rawTxHex: string,
label: string,
previousOutpointsList: Array<PreviousOutPoint.AsObject>,
}
}
@ -547,6 +553,12 @@ export class ChannelAcceptRequest extends jspb.Message {
getCommitmentType(): CommitmentTypeMap[keyof CommitmentTypeMap];
setCommitmentType(value: CommitmentTypeMap[keyof CommitmentTypeMap]): void;
getWantsZeroConf(): boolean;
setWantsZeroConf(value: boolean): void;
getWantsScidAlias(): boolean;
setWantsScidAlias(value: boolean): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ChannelAcceptRequest.AsObject;
static toObject(includeInstance: boolean, msg: ChannelAcceptRequest): ChannelAcceptRequest.AsObject;
@ -573,6 +585,8 @@ export namespace ChannelAcceptRequest {
maxAcceptedHtlcs: number,
channelFlags: number,
commitmentType: CommitmentTypeMap[keyof CommitmentTypeMap],
wantsZeroConf: boolean,
wantsScidAlias: boolean,
}
}
@ -609,6 +623,9 @@ export class ChannelAcceptResponse extends jspb.Message {
getMinAcceptDepth(): number;
setMinAcceptDepth(value: number): void;
getZeroConf(): boolean;
setZeroConf(value: boolean): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ChannelAcceptResponse.AsObject;
static toObject(includeInstance: boolean, msg: ChannelAcceptResponse): ChannelAcceptResponse.AsObject;
@ -631,6 +648,7 @@ export namespace ChannelAcceptResponse {
maxHtlcCount: number,
minHtlcIn: string,
minAcceptDepth: number,
zeroConf: boolean,
}
}
@ -705,6 +723,30 @@ export namespace OutPoint {
}
}
export class PreviousOutPoint extends jspb.Message {
getOutpoint(): string;
setOutpoint(value: string): void;
getIsOurOutput(): boolean;
setIsOurOutput(value: boolean): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): PreviousOutPoint.AsObject;
static toObject(includeInstance: boolean, msg: PreviousOutPoint): PreviousOutPoint.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: PreviousOutPoint, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): PreviousOutPoint;
static deserializeBinaryFromReader(message: PreviousOutPoint, reader: jspb.BinaryReader): PreviousOutPoint;
}
export namespace PreviousOutPoint {
export type AsObject = {
outpoint: string,
isOurOutput: boolean,
}
}
export class LightningAddress extends jspb.Message {
getPubkey(): string;
setPubkey(value: string): void;
@ -1378,6 +1420,17 @@ export class Channel extends jspb.Message {
getRemoteConstraints(): ChannelConstraints | undefined;
setRemoteConstraints(value?: ChannelConstraints): void;
clearAliasScidsList(): void;
getAliasScidsList(): Array<string>;
setAliasScidsList(value: Array<string>): void;
addAliasScids(value: string, index?: number): string;
getZeroConf(): boolean;
setZeroConf(value: boolean): void;
getZeroConfConfirmedScid(): string;
setZeroConfConfirmedScid(value: string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Channel.AsObject;
static toObject(includeInstance: boolean, msg: Channel): Channel.AsObject;
@ -1420,6 +1473,9 @@ export namespace Channel {
thawHeight: number,
localConstraints?: ChannelConstraints.AsObject,
remoteConstraints?: ChannelConstraints.AsObject,
aliasScidsList: Array<string>,
zeroConf: boolean,
zeroConfConfirmedScid: string,
}
}
@ -1483,6 +1539,70 @@ export namespace ListChannelsResponse {
}
}
export class AliasMap extends jspb.Message {
getBaseScid(): string;
setBaseScid(value: string): void;
clearAliasesList(): void;
getAliasesList(): Array<string>;
setAliasesList(value: Array<string>): void;
addAliases(value: string, index?: number): string;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): AliasMap.AsObject;
static toObject(includeInstance: boolean, msg: AliasMap): AliasMap.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: AliasMap, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): AliasMap;
static deserializeBinaryFromReader(message: AliasMap, reader: jspb.BinaryReader): AliasMap;
}
export namespace AliasMap {
export type AsObject = {
baseScid: string,
aliasesList: Array<string>,
}
}
export class ListAliasesRequest extends jspb.Message {
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ListAliasesRequest.AsObject;
static toObject(includeInstance: boolean, msg: ListAliasesRequest): ListAliasesRequest.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: ListAliasesRequest, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): ListAliasesRequest;
static deserializeBinaryFromReader(message: ListAliasesRequest, reader: jspb.BinaryReader): ListAliasesRequest;
}
export namespace ListAliasesRequest {
export type AsObject = {
}
}
export class ListAliasesResponse extends jspb.Message {
clearAliasMapsList(): void;
getAliasMapsList(): Array<AliasMap>;
setAliasMapsList(value: Array<AliasMap>): void;
addAliasMaps(value?: AliasMap, index?: number): AliasMap;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ListAliasesResponse.AsObject;
static toObject(includeInstance: boolean, msg: ListAliasesResponse): ListAliasesResponse.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: ListAliasesResponse, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): ListAliasesResponse;
static deserializeBinaryFromReader(message: ListAliasesResponse, reader: jspb.BinaryReader): ListAliasesResponse;
}
export namespace ListAliasesResponse {
export type AsObject = {
aliasMapsList: Array<AliasMap.AsObject>,
}
}
export class ChannelCloseSummary extends jspb.Message {
getChannelPoint(): string;
setChannelPoint(value: string): void;
@ -1525,6 +1645,14 @@ export class ChannelCloseSummary extends jspb.Message {
setResolutionsList(value: Array<Resolution>): void;
addResolutions(value?: Resolution, index?: number): Resolution;
clearAliasScidsList(): void;
getAliasScidsList(): Array<string>;
setAliasScidsList(value: Array<string>): void;
addAliasScids(value: string, index?: number): string;
getZeroConfConfirmedScid(): string;
setZeroConfConfirmedScid(value: string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): ChannelCloseSummary.AsObject;
static toObject(includeInstance: boolean, msg: ChannelCloseSummary): ChannelCloseSummary.AsObject;
@ -1550,6 +1678,8 @@ export namespace ChannelCloseSummary {
openInitiator: InitiatorMap[keyof InitiatorMap],
closeInitiator: InitiatorMap[keyof InitiatorMap],
resolutionsList: Array<Resolution.AsObject>,
aliasScidsList: Array<string>,
zeroConfConfirmedScid: string,
}
export interface ClosureTypeMap {
@ -2139,6 +2269,9 @@ export class CloseChannelRequest extends jspb.Message {
getSatPerVbyte(): string;
setSatPerVbyte(value: string): void;
getMaxFeePerVbyte(): string;
setMaxFeePerVbyte(value: string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): CloseChannelRequest.AsObject;
static toObject(includeInstance: boolean, msg: CloseChannelRequest): CloseChannelRequest.AsObject;
@ -2157,6 +2290,7 @@ export namespace CloseChannelRequest {
satPerByte: string,
deliveryAddress: string,
satPerVbyte: string,
maxFeePerVbyte: string,
}
}
@ -2430,6 +2564,12 @@ export class OpenChannelRequest extends jspb.Message {
getCommitmentType(): CommitmentTypeMap[keyof CommitmentTypeMap];
setCommitmentType(value: CommitmentTypeMap[keyof CommitmentTypeMap]): void;
getZeroConf(): boolean;
setZeroConf(value: boolean): void;
getScidAlias(): boolean;
setScidAlias(value: boolean): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): OpenChannelRequest.AsObject;
static toObject(includeInstance: boolean, msg: OpenChannelRequest): OpenChannelRequest.AsObject;
@ -2460,6 +2600,8 @@ export namespace OpenChannelRequest {
remoteMaxHtlcs: number,
maxLocalCsv: number,
commitmentType: CommitmentTypeMap[keyof CommitmentTypeMap],
zeroConf: boolean,
scidAlias: boolean,
}
}
@ -3338,6 +3480,9 @@ export class WalletBalanceResponse extends jspb.Message {
getLockedBalance(): string;
setLockedBalance(value: string): void;
getReservedBalanceAnchorChan(): string;
setReservedBalanceAnchorChan(value: string): void;
getAccountBalanceMap(): jspb.Map<string, WalletAccountBalance>;
clearAccountBalanceMap(): void;
serializeBinary(): Uint8Array;
@ -3356,6 +3501,7 @@ export namespace WalletBalanceResponse {
confirmedBalance: string,
unconfirmedBalance: string,
lockedBalance: string,
reservedBalanceAnchorChan: string,
accountBalanceMap: Array<[string, WalletAccountBalance.AsObject]>,
}
}
@ -6510,6 +6656,11 @@ export class RPCMiddlewareRequest extends jspb.Message {
getResponse(): RPCMessage | undefined;
setResponse(value?: RPCMessage): void;
hasRegComplete(): boolean;
clearRegComplete(): void;
getRegComplete(): boolean;
setRegComplete(value: boolean): void;
getMsgId(): string;
setMsgId(value: string): void;
@ -6532,6 +6683,7 @@ export namespace RPCMiddlewareRequest {
streamAuth?: StreamAuth.AsObject,
request?: RPCMessage.AsObject,
response?: RPCMessage.AsObject,
regComplete: boolean,
msgId: string,
}
@ -6540,6 +6692,7 @@ export namespace RPCMiddlewareRequest {
STREAM_AUTH = 4,
REQUEST = 5,
RESPONSE = 6,
REG_COMPLETE = 8,
}
}
@ -6578,6 +6731,9 @@ export class RPCMessage extends jspb.Message {
getSerialized_asB64(): string;
setSerialized(value: Uint8Array | string): void;
getIsError(): boolean;
setIsError(value: boolean): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): RPCMessage.AsObject;
static toObject(includeInstance: boolean, msg: RPCMessage): RPCMessage.AsObject;
@ -6594,6 +6750,7 @@ export namespace RPCMessage {
streamRpc: boolean,
typeName: string,
serialized: Uint8Array | string,
isError: boolean,
}
}

File diff suppressed because it is too large Load diff

View file

@ -589,6 +589,15 @@ type LightningSubscribeCustomMessages = {
readonly responseType: typeof lnd_pb.CustomMessage;
};
type LightningListAliases = {
readonly methodName: string;
readonly service: typeof Lightning;
readonly requestStream: false;
readonly responseStream: false;
readonly requestType: typeof lnd_pb.ListAliasesRequest;
readonly responseType: typeof lnd_pb.ListAliasesResponse;
};
export class Lightning {
static readonly serviceName: string;
static readonly WalletBalance: LightningWalletBalance;
@ -656,6 +665,7 @@ export class Lightning {
static readonly RegisterRPCMiddleware: LightningRegisterRPCMiddleware;
static readonly SendCustomMessage: LightningSendCustomMessage;
static readonly SubscribeCustomMessages: LightningSubscribeCustomMessages;
static readonly ListAliases: LightningListAliases;
}
export type ServiceError = { message: string, code: number; metadata: grpc.Metadata }
@ -1171,5 +1181,14 @@ export class LightningClient {
callback: (error: ServiceError|null, responseMessage: lnd_pb.SendCustomMessageResponse|null) => void
): UnaryResponse;
subscribeCustomMessages(requestMessage: lnd_pb.SubscribeCustomMessagesRequest, metadata?: grpc.Metadata): ResponseStream<lnd_pb.CustomMessage>;
listAliases(
requestMessage: lnd_pb.ListAliasesRequest,
metadata: grpc.Metadata,
callback: (error: ServiceError|null, responseMessage: lnd_pb.ListAliasesResponse|null) => void
): UnaryResponse;
listAliases(
requestMessage: lnd_pb.ListAliasesRequest,
callback: (error: ServiceError|null, responseMessage: lnd_pb.ListAliasesResponse|null) => void
): UnaryResponse;
}

View file

@ -595,6 +595,15 @@ Lightning.SubscribeCustomMessages = {
responseType: lnd_pb.CustomMessage
};
Lightning.ListAliases = {
methodName: "ListAliases",
service: Lightning,
requestStream: false,
responseStream: false,
requestType: lnd_pb.ListAliasesRequest,
responseType: lnd_pb.ListAliasesResponse
};
exports.Lightning = Lightning;
function LightningClient(serviceHost, options) {
@ -2745,5 +2754,36 @@ LightningClient.prototype.subscribeCustomMessages = function subscribeCustomMess
};
};
LightningClient.prototype.listAliases = function listAliases(requestMessage, metadata, callback) {
if (arguments.length === 2) {
callback = arguments[1];
}
var client = grpc.unary(Lightning.ListAliases, {
request: requestMessage,
host: this.serviceHost,
metadata: metadata,
transport: this.options.transport,
debug: this.options.debug,
onEnd: function (response) {
if (callback) {
if (response.status !== grpc.Code.OK) {
var err = new Error(response.statusMessage);
err.code = response.status;
err.metadata = response.trailers;
callback(err, null);
} else {
callback(null, response.message);
}
}
}
});
return {
cancel: function () {
callback = null;
client.close();
}
};
};
exports.LightningClient = LightningClient;

View file

@ -156,6 +156,9 @@ export class SwapResponse extends jspb.Message {
getHtlcAddressP2wsh(): string;
setHtlcAddressP2wsh(value: string): void;
getHtlcAddressP2tr(): string;
setHtlcAddressP2tr(value: string): void;
getServerMessage(): string;
setServerMessage(value: string): void;
@ -176,6 +179,7 @@ export namespace SwapResponse {
htlcAddress: string,
htlcAddressNp2wsh: string,
htlcAddressP2wsh: string,
htlcAddressP2tr: string,
serverMessage: string,
}
}
@ -232,6 +236,9 @@ export class SwapStatus extends jspb.Message {
getHtlcAddressNp2wsh(): string;
setHtlcAddressNp2wsh(value: string): void;
getHtlcAddressP2tr(): string;
setHtlcAddressP2tr(value: string): void;
getCostServer(): string;
setCostServer(value: string): void;
@ -277,6 +284,7 @@ export namespace SwapStatus {
htlcAddress: string,
htlcAddressP2wsh: string,
htlcAddressNp2wsh: string,
htlcAddressP2tr: string,
costServer: string,
costOnchain: string,
costOffchain: string,

View file

@ -1052,6 +1052,7 @@ proto.looprpc.SwapResponse.toObject = function(includeInstance, msg) {
htlcAddress: jspb.Message.getFieldWithDefault(msg, 2, ""),
htlcAddressNp2wsh: jspb.Message.getFieldWithDefault(msg, 4, ""),
htlcAddressP2wsh: jspb.Message.getFieldWithDefault(msg, 5, ""),
htlcAddressP2tr: jspb.Message.getFieldWithDefault(msg, 7, ""),
serverMessage: jspb.Message.getFieldWithDefault(msg, 6, "")
};
@ -1109,6 +1110,10 @@ proto.looprpc.SwapResponse.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {string} */ (reader.readString());
msg.setHtlcAddressP2wsh(value);
break;
case 7:
var value = /** @type {string} */ (reader.readString());
msg.setHtlcAddressP2tr(value);
break;
case 6:
var value = /** @type {string} */ (reader.readString());
msg.setServerMessage(value);
@ -1177,6 +1182,13 @@ proto.looprpc.SwapResponse.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getHtlcAddressP2tr();
if (f.length > 0) {
writer.writeString(
7,
f
);
}
f = message.getServerMessage();
if (f.length > 0) {
writer.writeString(
@ -1286,6 +1298,21 @@ proto.looprpc.SwapResponse.prototype.setHtlcAddressP2wsh = function(value) {
};
/**
* optional string htlc_address_p2tr = 7;
* @return {string}
*/
proto.looprpc.SwapResponse.prototype.getHtlcAddressP2tr = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 7, ""));
};
/** @param {string} value */
proto.looprpc.SwapResponse.prototype.setHtlcAddressP2tr = function(value) {
jspb.Message.setProto3StringField(this, 7, value);
};
/**
* optional string server_message = 6;
* @return {string}
@ -1482,6 +1509,7 @@ proto.looprpc.SwapStatus.toObject = function(includeInstance, msg) {
htlcAddress: jspb.Message.getFieldWithDefault(msg, 7, ""),
htlcAddressP2wsh: jspb.Message.getFieldWithDefault(msg, 12, ""),
htlcAddressNp2wsh: jspb.Message.getFieldWithDefault(msg, 13, ""),
htlcAddressP2tr: jspb.Message.getFieldWithDefault(msg, 18, ""),
costServer: jspb.Message.getFieldWithDefault(msg, 8, "0"),
costOnchain: jspb.Message.getFieldWithDefault(msg, 9, "0"),
costOffchain: jspb.Message.getFieldWithDefault(msg, 10, "0"),
@ -1568,6 +1596,10 @@ proto.looprpc.SwapStatus.deserializeBinaryFromReader = function(msg, reader) {
var value = /** @type {string} */ (reader.readString());
msg.setHtlcAddressNp2wsh(value);
break;
case 18:
var value = /** @type {string} */ (reader.readString());
msg.setHtlcAddressP2tr(value);
break;
case 8:
var value = /** @type {string} */ (reader.readInt64String());
msg.setCostServer(value);
@ -1698,6 +1730,13 @@ proto.looprpc.SwapStatus.serializeBinaryToWriter = function(message, writer) {
f
);
}
f = message.getHtlcAddressP2tr();
if (f.length > 0) {
writer.writeString(
18,
f
);
}
f = message.getCostServer();
if (parseInt(f, 10) !== 0) {
writer.writeInt64String(
@ -1932,6 +1971,21 @@ proto.looprpc.SwapStatus.prototype.setHtlcAddressNp2wsh = function(value) {
};
/**
* optional string htlc_address_p2tr = 18;
* @return {string}
*/
proto.looprpc.SwapStatus.prototype.getHtlcAddressP2tr = function() {
return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 18, ""));
};
/** @param {string} value */
proto.looprpc.SwapStatus.prototype.setHtlcAddressP2tr = function(value) {
jspb.Message.setProto3StringField(this, 18, value);
};
/**
* optional int64 cost_server = 8;
* @return {string}

View file

@ -824,6 +824,78 @@ export namespace ReportRoutingResultRes {
}
}
export class MuSig2SignSweepReq extends jspb.Message {
getProtocolVersion(): ProtocolVersionMap[keyof ProtocolVersionMap];
setProtocolVersion(value: ProtocolVersionMap[keyof ProtocolVersionMap]): void;
getSwapHash(): Uint8Array | string;
getSwapHash_asU8(): Uint8Array;
getSwapHash_asB64(): string;
setSwapHash(value: Uint8Array | string): void;
getPaymentAddress(): Uint8Array | string;
getPaymentAddress_asU8(): Uint8Array;
getPaymentAddress_asB64(): string;
setPaymentAddress(value: Uint8Array | string): void;
getNonce(): Uint8Array | string;
getNonce_asU8(): Uint8Array;
getNonce_asB64(): string;
setNonce(value: Uint8Array | string): void;
getSweepTxPsbt(): Uint8Array | string;
getSweepTxPsbt_asU8(): Uint8Array;
getSweepTxPsbt_asB64(): string;
setSweepTxPsbt(value: Uint8Array | string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): MuSig2SignSweepReq.AsObject;
static toObject(includeInstance: boolean, msg: MuSig2SignSweepReq): MuSig2SignSweepReq.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: MuSig2SignSweepReq, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): MuSig2SignSweepReq;
static deserializeBinaryFromReader(message: MuSig2SignSweepReq, reader: jspb.BinaryReader): MuSig2SignSweepReq;
}
export namespace MuSig2SignSweepReq {
export type AsObject = {
protocolVersion: ProtocolVersionMap[keyof ProtocolVersionMap],
swapHash: Uint8Array | string,
paymentAddress: Uint8Array | string,
nonce: Uint8Array | string,
sweepTxPsbt: Uint8Array | string,
}
}
export class MuSig2SignSweepRes extends jspb.Message {
getNonce(): Uint8Array | string;
getNonce_asU8(): Uint8Array;
getNonce_asB64(): string;
setNonce(value: Uint8Array | string): void;
getPartialSignature(): Uint8Array | string;
getPartialSignature_asU8(): Uint8Array;
getPartialSignature_asB64(): string;
setPartialSignature(value: Uint8Array | string): void;
serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): MuSig2SignSweepRes.AsObject;
static toObject(includeInstance: boolean, msg: MuSig2SignSweepRes): MuSig2SignSweepRes.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: MuSig2SignSweepRes, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): MuSig2SignSweepRes;
static deserializeBinaryFromReader(message: MuSig2SignSweepRes, reader: jspb.BinaryReader): MuSig2SignSweepRes;
}
export namespace MuSig2SignSweepRes {
export type AsObject = {
nonce: Uint8Array | string,
partialSignature: Uint8Array | string,
}
}
export interface ProtocolVersionMap {
LEGACY: 0;
MULTI_LOOP_OUT: 1;
@ -835,6 +907,7 @@ export interface ProtocolVersionMap {
LOOP_OUT_CANCEL: 7;
PROBE: 8;
ROUTING_PLUGIN: 9;
HTLC_V3: 10;
}
export const ProtocolVersion: ProtocolVersionMap;

View file

@ -18,6 +18,8 @@ var swapserverrpc_common_pb = require('../swapserverrpc/common_pb.js');
goog.exportSymbol('proto.looprpc.CancelLoopOutSwapRequest', null, global);
goog.exportSymbol('proto.looprpc.CancelLoopOutSwapResponse', null, global);
goog.exportSymbol('proto.looprpc.HtlcAttempt', null, global);
goog.exportSymbol('proto.looprpc.MuSig2SignSweepReq', null, global);
goog.exportSymbol('proto.looprpc.MuSig2SignSweepRes', null, global);
goog.exportSymbol('proto.looprpc.PaymentFailureReason', null, global);
goog.exportSymbol('proto.looprpc.ProtocolVersion', null, global);
goog.exportSymbol('proto.looprpc.RecommendRoutingPluginReq', null, global);
@ -6002,6 +6004,569 @@ proto.looprpc.ReportRoutingResultRes.serializeBinaryToWriter = function(message,
};
/**
* Generated by JsPbCodeGenerator.
* @param {Array=} opt_data Optional initial data array, typically from a
* server response, or constructed directly in Javascript. The array is used
* in place and becomes part of the constructed object. It is not cloned.
* If no data is provided, the constructed object will be empty, but still
* valid.
* @extends {jspb.Message}
* @constructor
*/
proto.looprpc.MuSig2SignSweepReq = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.looprpc.MuSig2SignSweepReq, jspb.Message);
if (goog.DEBUG && !COMPILED) {
proto.looprpc.MuSig2SignSweepReq.displayName = 'proto.looprpc.MuSig2SignSweepReq';
}
if (jspb.Message.GENERATE_TO_OBJECT) {
/**
* Creates an object representation of this proto suitable for use in Soy templates.
* Field names that are reserved in JavaScript and will be renamed to pb_name.
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
* For the list of reserved names please see:
* com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
* @param {boolean=} opt_includeInstance Whether to include the JSPB instance
* for transitional soy proto support: http://goto/soy-param-migration
* @return {!Object}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.toObject = function(opt_includeInstance) {
return proto.looprpc.MuSig2SignSweepReq.toObject(opt_includeInstance, this);
};
/**
* Static version of the {@see toObject} method.
* @param {boolean|undefined} includeInstance Whether to include the JSPB
* instance for transitional soy proto support:
* http://goto/soy-param-migration
* @param {!proto.looprpc.MuSig2SignSweepReq} msg The msg instance to transform.
* @return {!Object}
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.looprpc.MuSig2SignSweepReq.toObject = function(includeInstance, msg) {
var f, obj = {
protocolVersion: jspb.Message.getFieldWithDefault(msg, 1, 0),
swapHash: msg.getSwapHash_asB64(),
paymentAddress: msg.getPaymentAddress_asB64(),
nonce: msg.getNonce_asB64(),
sweepTxPsbt: msg.getSweepTxPsbt_asB64()
};
if (includeInstance) {
obj.$jspbMessageInstance = msg;
}
return obj;
};
}
/**
* Deserializes binary data (in protobuf wire format).
* @param {jspb.ByteSource} bytes The bytes to deserialize.
* @return {!proto.looprpc.MuSig2SignSweepReq}
*/
proto.looprpc.MuSig2SignSweepReq.deserializeBinary = function(bytes) {
var reader = new jspb.BinaryReader(bytes);
var msg = new proto.looprpc.MuSig2SignSweepReq;
return proto.looprpc.MuSig2SignSweepReq.deserializeBinaryFromReader(msg, reader);
};
/**
* Deserializes binary data (in protobuf wire format) from the
* given reader into the given message object.
* @param {!proto.looprpc.MuSig2SignSweepReq} msg The message object to deserialize into.
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
* @return {!proto.looprpc.MuSig2SignSweepReq}
*/
proto.looprpc.MuSig2SignSweepReq.deserializeBinaryFromReader = function(msg, reader) {
while (reader.nextField()) {
if (reader.isEndGroup()) {
break;
}
var field = reader.getFieldNumber();
switch (field) {
case 1:
var value = /** @type {!proto.looprpc.ProtocolVersion} */ (reader.readEnum());
msg.setProtocolVersion(value);
break;
case 2:
var value = /** @type {!Uint8Array} */ (reader.readBytes());
msg.setSwapHash(value);
break;
case 3:
var value = /** @type {!Uint8Array} */ (reader.readBytes());
msg.setPaymentAddress(value);
break;
case 4:
var value = /** @type {!Uint8Array} */ (reader.readBytes());
msg.setNonce(value);
break;
case 6:
var value = /** @type {!Uint8Array} */ (reader.readBytes());
msg.setSweepTxPsbt(value);
break;
default:
reader.skipField();
break;
}
}
return msg;
};
/**
* Serializes the message to binary data (in protobuf wire format).
* @return {!Uint8Array}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.serializeBinary = function() {
var writer = new jspb.BinaryWriter();
proto.looprpc.MuSig2SignSweepReq.serializeBinaryToWriter(this, writer);
return writer.getResultBuffer();
};
/**
* Serializes the given message to binary data (in protobuf wire
* format), writing to the given BinaryWriter.
* @param {!proto.looprpc.MuSig2SignSweepReq} message
* @param {!jspb.BinaryWriter} writer
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.looprpc.MuSig2SignSweepReq.serializeBinaryToWriter = function(message, writer) {
var f = undefined;
f = message.getProtocolVersion();
if (f !== 0.0) {
writer.writeEnum(
1,
f
);
}
f = message.getSwapHash_asU8();
if (f.length > 0) {
writer.writeBytes(
2,
f
);
}
f = message.getPaymentAddress_asU8();
if (f.length > 0) {
writer.writeBytes(
3,
f
);
}
f = message.getNonce_asU8();
if (f.length > 0) {
writer.writeBytes(
4,
f
);
}
f = message.getSweepTxPsbt_asU8();
if (f.length > 0) {
writer.writeBytes(
6,
f
);
}
};
/**
* optional ProtocolVersion protocol_version = 1;
* @return {!proto.looprpc.ProtocolVersion}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getProtocolVersion = function() {
return /** @type {!proto.looprpc.ProtocolVersion} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
};
/** @param {!proto.looprpc.ProtocolVersion} value */
proto.looprpc.MuSig2SignSweepReq.prototype.setProtocolVersion = function(value) {
jspb.Message.setProto3EnumField(this, 1, value);
};
/**
* optional bytes swap_hash = 2;
* @return {!(string|Uint8Array)}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getSwapHash = function() {
return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};
/**
* optional bytes swap_hash = 2;
* This is a type-conversion wrapper around `getSwapHash()`
* @return {string}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getSwapHash_asB64 = function() {
return /** @type {string} */ (jspb.Message.bytesAsB64(
this.getSwapHash()));
};
/**
* optional bytes swap_hash = 2;
* Note that Uint8Array is not supported on all browsers.
* @see http://caniuse.com/Uint8Array
* This is a type-conversion wrapper around `getSwapHash()`
* @return {!Uint8Array}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getSwapHash_asU8 = function() {
return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(
this.getSwapHash()));
};
/** @param {!(string|Uint8Array)} value */
proto.looprpc.MuSig2SignSweepReq.prototype.setSwapHash = function(value) {
jspb.Message.setProto3BytesField(this, 2, value);
};
/**
* optional bytes payment_address = 3;
* @return {!(string|Uint8Array)}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getPaymentAddress = function() {
return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
};
/**
* optional bytes payment_address = 3;
* This is a type-conversion wrapper around `getPaymentAddress()`
* @return {string}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getPaymentAddress_asB64 = function() {
return /** @type {string} */ (jspb.Message.bytesAsB64(
this.getPaymentAddress()));
};
/**
* optional bytes payment_address = 3;
* Note that Uint8Array is not supported on all browsers.
* @see http://caniuse.com/Uint8Array
* This is a type-conversion wrapper around `getPaymentAddress()`
* @return {!Uint8Array}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getPaymentAddress_asU8 = function() {
return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(
this.getPaymentAddress()));
};
/** @param {!(string|Uint8Array)} value */
proto.looprpc.MuSig2SignSweepReq.prototype.setPaymentAddress = function(value) {
jspb.Message.setProto3BytesField(this, 3, value);
};
/**
* optional bytes nonce = 4;
* @return {!(string|Uint8Array)}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getNonce = function() {
return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 4, ""));
};
/**
* optional bytes nonce = 4;
* This is a type-conversion wrapper around `getNonce()`
* @return {string}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getNonce_asB64 = function() {
return /** @type {string} */ (jspb.Message.bytesAsB64(
this.getNonce()));
};
/**
* optional bytes nonce = 4;
* Note that Uint8Array is not supported on all browsers.
* @see http://caniuse.com/Uint8Array
* This is a type-conversion wrapper around `getNonce()`
* @return {!Uint8Array}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getNonce_asU8 = function() {
return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(
this.getNonce()));
};
/** @param {!(string|Uint8Array)} value */
proto.looprpc.MuSig2SignSweepReq.prototype.setNonce = function(value) {
jspb.Message.setProto3BytesField(this, 4, value);
};
/**
* optional bytes sweep_tx_psbt = 6;
* @return {!(string|Uint8Array)}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getSweepTxPsbt = function() {
return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
};
/**
* optional bytes sweep_tx_psbt = 6;
* This is a type-conversion wrapper around `getSweepTxPsbt()`
* @return {string}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getSweepTxPsbt_asB64 = function() {
return /** @type {string} */ (jspb.Message.bytesAsB64(
this.getSweepTxPsbt()));
};
/**
* optional bytes sweep_tx_psbt = 6;
* Note that Uint8Array is not supported on all browsers.
* @see http://caniuse.com/Uint8Array
* This is a type-conversion wrapper around `getSweepTxPsbt()`
* @return {!Uint8Array}
*/
proto.looprpc.MuSig2SignSweepReq.prototype.getSweepTxPsbt_asU8 = function() {
return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(
this.getSweepTxPsbt()));
};
/** @param {!(string|Uint8Array)} value */
proto.looprpc.MuSig2SignSweepReq.prototype.setSweepTxPsbt = function(value) {
jspb.Message.setProto3BytesField(this, 6, value);
};
/**
* Generated by JsPbCodeGenerator.
* @param {Array=} opt_data Optional initial data array, typically from a
* server response, or constructed directly in Javascript. The array is used
* in place and becomes part of the constructed object. It is not cloned.
* If no data is provided, the constructed object will be empty, but still
* valid.
* @extends {jspb.Message}
* @constructor
*/
proto.looprpc.MuSig2SignSweepRes = function(opt_data) {
jspb.Message.initialize(this, opt_data, 0, -1, null, null);
};
goog.inherits(proto.looprpc.MuSig2SignSweepRes, jspb.Message);
if (goog.DEBUG && !COMPILED) {
proto.looprpc.MuSig2SignSweepRes.displayName = 'proto.looprpc.MuSig2SignSweepRes';
}
if (jspb.Message.GENERATE_TO_OBJECT) {
/**
* Creates an object representation of this proto suitable for use in Soy templates.
* Field names that are reserved in JavaScript and will be renamed to pb_name.
* To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
* For the list of reserved names please see:
* com.google.apps.jspb.JsClassTemplate.JS_RESERVED_WORDS.
* @param {boolean=} opt_includeInstance Whether to include the JSPB instance
* for transitional soy proto support: http://goto/soy-param-migration
* @return {!Object}
*/
proto.looprpc.MuSig2SignSweepRes.prototype.toObject = function(opt_includeInstance) {
return proto.looprpc.MuSig2SignSweepRes.toObject(opt_includeInstance, this);
};
/**
* Static version of the {@see toObject} method.
* @param {boolean|undefined} includeInstance Whether to include the JSPB
* instance for transitional soy proto support:
* http://goto/soy-param-migration
* @param {!proto.looprpc.MuSig2SignSweepRes} msg The msg instance to transform.
* @return {!Object}
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.looprpc.MuSig2SignSweepRes.toObject = function(includeInstance, msg) {
var f, obj = {
nonce: msg.getNonce_asB64(),
partialSignature: msg.getPartialSignature_asB64()
};
if (includeInstance) {
obj.$jspbMessageInstance = msg;
}
return obj;
};
}
/**
* Deserializes binary data (in protobuf wire format).
* @param {jspb.ByteSource} bytes The bytes to deserialize.
* @return {!proto.looprpc.MuSig2SignSweepRes}
*/
proto.looprpc.MuSig2SignSweepRes.deserializeBinary = function(bytes) {
var reader = new jspb.BinaryReader(bytes);
var msg = new proto.looprpc.MuSig2SignSweepRes;
return proto.looprpc.MuSig2SignSweepRes.deserializeBinaryFromReader(msg, reader);
};
/**
* Deserializes binary data (in protobuf wire format) from the
* given reader into the given message object.
* @param {!proto.looprpc.MuSig2SignSweepRes} msg The message object to deserialize into.
* @param {!jspb.BinaryReader} reader The BinaryReader to use.
* @return {!proto.looprpc.MuSig2SignSweepRes}
*/
proto.looprpc.MuSig2SignSweepRes.deserializeBinaryFromReader = function(msg, reader) {
while (reader.nextField()) {
if (reader.isEndGroup()) {
break;
}
var field = reader.getFieldNumber();
switch (field) {
case 1:
var value = /** @type {!Uint8Array} */ (reader.readBytes());
msg.setNonce(value);
break;
case 2:
var value = /** @type {!Uint8Array} */ (reader.readBytes());
msg.setPartialSignature(value);
break;
default:
reader.skipField();
break;
}
}
return msg;
};
/**
* Serializes the message to binary data (in protobuf wire format).
* @return {!Uint8Array}
*/
proto.looprpc.MuSig2SignSweepRes.prototype.serializeBinary = function() {
var writer = new jspb.BinaryWriter();
proto.looprpc.MuSig2SignSweepRes.serializeBinaryToWriter(this, writer);
return writer.getResultBuffer();
};
/**
* Serializes the given message to binary data (in protobuf wire
* format), writing to the given BinaryWriter.
* @param {!proto.looprpc.MuSig2SignSweepRes} message
* @param {!jspb.BinaryWriter} writer
* @suppress {unusedLocalVariables} f is only used for nested messages
*/
proto.looprpc.MuSig2SignSweepRes.serializeBinaryToWriter = function(message, writer) {
var f = undefined;
f = message.getNonce_asU8();
if (f.length > 0) {
writer.writeBytes(
1,
f
);
}
f = message.getPartialSignature_asU8();
if (f.length > 0) {
writer.writeBytes(
2,
f
);
}
};
/**
* optional bytes nonce = 1;
* @return {!(string|Uint8Array)}
*/
proto.looprpc.MuSig2SignSweepRes.prototype.getNonce = function() {
return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
};
/**
* optional bytes nonce = 1;
* This is a type-conversion wrapper around `getNonce()`
* @return {string}
*/
proto.looprpc.MuSig2SignSweepRes.prototype.getNonce_asB64 = function() {
return /** @type {string} */ (jspb.Message.bytesAsB64(
this.getNonce()));
};
/**
* optional bytes nonce = 1;
* Note that Uint8Array is not supported on all browsers.
* @see http://caniuse.com/Uint8Array
* This is a type-conversion wrapper around `getNonce()`
* @return {!Uint8Array}
*/
proto.looprpc.MuSig2SignSweepRes.prototype.getNonce_asU8 = function() {
return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(
this.getNonce()));
};
/** @param {!(string|Uint8Array)} value */
proto.looprpc.MuSig2SignSweepRes.prototype.setNonce = function(value) {
jspb.Message.setProto3BytesField(this, 1, value);
};
/**
* optional bytes partial_signature = 2;
* @return {!(string|Uint8Array)}
*/
proto.looprpc.MuSig2SignSweepRes.prototype.getPartialSignature = function() {
return /** @type {!(string|Uint8Array)} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
};
/**
* optional bytes partial_signature = 2;
* This is a type-conversion wrapper around `getPartialSignature()`
* @return {string}
*/
proto.looprpc.MuSig2SignSweepRes.prototype.getPartialSignature_asB64 = function() {
return /** @type {string} */ (jspb.Message.bytesAsB64(
this.getPartialSignature()));
};
/**
* optional bytes partial_signature = 2;
* Note that Uint8Array is not supported on all browsers.
* @see http://caniuse.com/Uint8Array
* This is a type-conversion wrapper around `getPartialSignature()`
* @return {!Uint8Array}
*/
proto.looprpc.MuSig2SignSweepRes.prototype.getPartialSignature_asU8 = function() {
return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8(
this.getPartialSignature()));
};
/** @param {!(string|Uint8Array)} value */
proto.looprpc.MuSig2SignSweepRes.prototype.setPartialSignature = function(value) {
jspb.Message.setProto3BytesField(this, 2, value);
};
/**
* @enum {number}
*/
@ -6015,7 +6580,8 @@ proto.looprpc.ProtocolVersion = {
MULTI_LOOP_IN: 6,
LOOP_OUT_CANCEL: 7,
PROBE: 8,
ROUTING_PLUGIN: 9
ROUTING_PLUGIN: 9,
HTLC_V3: 10
};
/**

View file

@ -121,6 +121,15 @@ type SwapServerReportRoutingResult = {
readonly responseType: typeof swapserverrpc_server_pb.ReportRoutingResultRes;
};
type SwapServerMuSig2SignSweep = {
readonly methodName: string;
readonly service: typeof SwapServer;
readonly requestStream: false;
readonly responseStream: false;
readonly requestType: typeof swapserverrpc_server_pb.MuSig2SignSweepReq;
readonly responseType: typeof swapserverrpc_server_pb.MuSig2SignSweepRes;
};
export class SwapServer {
static readonly serviceName: string;
static readonly LoopOutTerms: SwapServerLoopOutTerms;
@ -136,6 +145,7 @@ export class SwapServer {
static readonly Probe: SwapServerProbe;
static readonly RecommendRoutingPlugin: SwapServerRecommendRoutingPlugin;
static readonly ReportRoutingResult: SwapServerReportRoutingResult;
static readonly MuSig2SignSweep: SwapServerMuSig2SignSweep;
}
export type ServiceError = { message: string, code: number; metadata: grpc.Metadata }
@ -271,5 +281,14 @@ export class SwapServerClient {
requestMessage: swapserverrpc_server_pb.ReportRoutingResultReq,
callback: (error: ServiceError|null, responseMessage: swapserverrpc_server_pb.ReportRoutingResultRes|null) => void
): UnaryResponse;
muSig2SignSweep(
requestMessage: swapserverrpc_server_pb.MuSig2SignSweepReq,
metadata: grpc.Metadata,
callback: (error: ServiceError|null, responseMessage: swapserverrpc_server_pb.MuSig2SignSweepRes|null) => void
): UnaryResponse;
muSig2SignSweep(
requestMessage: swapserverrpc_server_pb.MuSig2SignSweepReq,
callback: (error: ServiceError|null, responseMessage: swapserverrpc_server_pb.MuSig2SignSweepRes|null) => void
): UnaryResponse;
}

View file

@ -127,6 +127,15 @@ SwapServer.ReportRoutingResult = {
responseType: swapserverrpc_server_pb.ReportRoutingResultRes
};
SwapServer.MuSig2SignSweep = {
methodName: "MuSig2SignSweep",
service: SwapServer,
requestStream: false,
responseStream: false,
requestType: swapserverrpc_server_pb.MuSig2SignSweepReq,
responseType: swapserverrpc_server_pb.MuSig2SignSweepRes
};
exports.SwapServer = SwapServer;
function SwapServerClient(serviceHost, options) {
@ -553,5 +562,36 @@ SwapServerClient.prototype.reportRoutingResult = function reportRoutingResult(re
};
};
SwapServerClient.prototype.muSig2SignSweep = function muSig2SignSweep(requestMessage, metadata, callback) {
if (arguments.length === 2) {
callback = arguments[1];
}
var client = grpc.unary(SwapServer.MuSig2SignSweep, {
request: requestMessage,
host: this.serviceHost,
metadata: metadata,
transport: this.options.transport,
debug: this.options.debug,
onEnd: function (response) {
if (callback) {
if (response.status !== grpc.Code.OK) {
var err = new Error(response.statusMessage);
err.code = response.status;
err.metadata = response.trailers;
callback(err, null);
} else {
callback(null, response.message);
}
}
}
});
return {
cancel: function () {
callback = null;
client.close();
}
};
};
exports.SwapServerClient = SwapServerClient;

View file

@ -79,6 +79,7 @@ export const lndWalletBalance: LND.WalletBalanceResponse.AsObject = {
unconfirmedBalance: '0',
accountBalanceMap: [],
lockedBalance: '84992363',
reservedBalanceAnchorChan: '',
};
const txId = '6ee4e45870ac6191e25173f29804851e9f4bcf10f65f8b63100f488989e1e7a8';
@ -122,6 +123,9 @@ export const lndChannel: LND.Channel.AsObject = {
closeAddress: '',
pushAmountSat: '5000000',
thawHeight: 0,
aliasScidsList: [],
zeroConf: false,
zeroConfConfirmedScid: '',
};
export const lndListChannelsMany: LND.ListChannelsResponse.AsObject = {
@ -238,6 +242,8 @@ export const lndChannelEvent: Required<LND.ChannelEventUpdate.AsObject> = {
openInitiator: 1,
closeInitiator: 1,
resolutionsList: [],
aliasScidsList: [],
zeroConfConfirmedScid: '',
},
activeChannel: {
fundingTxidBytes: txIdBytes,
@ -276,6 +282,7 @@ export const lndTransaction: LND.Transaction.AsObject = {
txHash: '1f765f45f2a6d33837a203e3fc911915c891e9b86f9c9d91a1931b92efdedf5b',
label: '',
outputDetailsList: [],
previousOutpointsList: [],
};
export const lndGetChanInfo: Required<LND.ChannelEdge.AsObject> = {
@ -328,6 +335,7 @@ export const loopListSwaps: LOOP.ListSwapsResponse.AsObject = {
label: `Sample Swap #${i + 1}`,
lastHop: '021626ad63f6876f2baa6000739312690b027ec289b9d1bf9184f3194e8c923dad',
outgoingChanSetList: ['123456789'],
htlcAddressP2tr: '',
})),
};
@ -366,6 +374,7 @@ export const loopSwapResponse: LOOP.SwapResponse.AsObject = {
id: '18e17a2f44efc7f344ef6330281765e569315f93d3eaf9b0f959b404836e3480',
idBytes: 'GOF6L0Tvx/NE72MwKBdl5WkxX5PT6vmw+Vm0BINuNIA=',
serverMessage: 'Loop, there it is!',
htlcAddressP2tr: '',
};
//

View file

@ -570,6 +570,13 @@ service Lightning {
*/
rpc SubscribeCustomMessages (SubscribeCustomMessagesRequest)
returns (stream CustomMessage);
/* lncli: `listaliases`
ListAliases returns the set of all aliases that have ever existed with
their confirmed SCID (if it exists) and/or the base SCID (in the case of
zero conf).
*/
rpc ListAliases (ListAliasesRequest) returns (ListAliasesResponse);
}
message SubscribeCustomMessagesRequest {
@ -686,7 +693,11 @@ message Transaction {
// A label that was optionally set on transaction broadcast.
string label = 10;
// PreviousOutpoints/Inputs of this transaction.
repeated PreviousOutPoint previous_outpoints = 12;
}
message GetTransactionsRequest {
/*
The height from which to list transactions, inclusive. If this value is
@ -915,6 +926,14 @@ message ChannelAcceptRequest {
// The commitment type the initiator wishes to use for the proposed channel.
CommitmentType commitment_type = 14;
// Whether the initiator wants to open a zero-conf channel via the channel
// type.
bool wants_zero_conf = 15;
// Whether the initiator wants to use the scid-alias channel type. This is
// separate from the feature bit.
bool wants_scid_alias = 16;
}
message ChannelAcceptResponse {
@ -975,6 +994,13 @@ message ChannelAcceptResponse {
The number of confirmations we require before we consider the channel open.
*/
uint32 min_accept_depth = 10;
/*
Whether the responder wants this to be a zero-conf channel. This will fail
if either side does not have the scid-alias feature bit set. The minimum
depth field must be zero if this is true.
*/
bool zero_conf = 11;
}
message ChannelPoint {
@ -1007,12 +1033,21 @@ message OutPoint {
uint32 output_index = 3;
}
message PreviousOutPoint {
// The outpoint in format txid:n.
string outpoint = 1;
// Denotes if the outpoint is controlled by the internal wallet.
// The flag will only detect p2wkh, np2wkh and p2tr inputs as its own.
bool is_our_output = 2;
}
message LightningAddress {
// The identity pubkey of the Lightning node
// The identity pubkey of the Lightning node.
string pubkey = 1;
// The network location of the lightning node, e.g. `69.69.69.69:1337` or
// `localhost:10011`
// `localhost:10011`.
string host = 2;
}
@ -1201,11 +1236,15 @@ message VerifyMessageResponse {
}
message ConnectPeerRequest {
// Lightning address of the peer, in the format `<pubkey>@host`
/*
Lightning address of the peer to connect to.
*/
LightningAddress addr = 1;
/* If set, the daemon will attempt to persistently connect to the target
* peer. Otherwise, the call will be synchronous. */
/*
If set, the daemon will attempt to persistently connect to the target
peer. Otherwise, the call will be synchronous.
*/
bool perm = 2;
/*
@ -1458,6 +1497,18 @@ message Channel {
// List constraints for the remote node.
ChannelConstraints remote_constraints = 30;
/*
This lists out the set of alias short channel ids that exist for a channel.
This may be empty.
*/
repeated uint64 alias_scids = 31 [jstype = JS_STRING];
// Whether or not this is a zero-conf channel.
bool zero_conf = 32;
// This is the confirmed / on-chain zero-conf SCID.
uint64 zero_conf_confirmed_scid = 33 [jstype = JS_STRING];
}
message ListChannelsRequest {
@ -1477,6 +1528,22 @@ message ListChannelsResponse {
repeated Channel channels = 11;
}
message AliasMap {
/*
For non-zero-conf channels, this is the confirmed SCID. Otherwise, this is
the first assigned "base" alias.
*/
uint64 base_scid = 1 [jstype = JS_STRING];
// The set of all aliases stored for the base SCID.
repeated uint64 aliases = 2 [jstype = JS_STRING];
}
message ListAliasesRequest {
}
message ListAliasesResponse {
repeated AliasMap alias_maps = 1;
}
enum Initiator {
INITIATOR_UNKNOWN = 0;
INITIATOR_LOCAL = 1;
@ -1541,6 +1608,15 @@ message ChannelCloseSummary {
Initiator close_initiator = 12;
repeated Resolution resolutions = 13;
/*
This lists out the set of alias short channel ids that existed for the
closed channel. This may be empty.
*/
repeated uint64 alias_scids = 14 [jstype = JS_STRING];
// The confirmed SCID for a zero-conf channel.
uint64 zero_conf_confirmed_scid = 15 [jstype = JS_STRING];
}
enum ResolutionType {
@ -1886,6 +1962,11 @@ message CloseChannelRequest {
// A manual fee rate set in sat/vbyte that should be used when crafting the
// closure transaction.
uint64 sat_per_vbyte = 6 [jstype = JS_STRING];
// The maximum fee rate the closer is willing to pay.
//
// NOTE: This field is only respected if we're the initiator of the channel.
uint64 max_fee_per_vbyte = 7 [jstype = JS_STRING];
}
message CloseStatusUpdate {
@ -2097,6 +2178,17 @@ message OpenChannelRequest {
the remote peer supports explicit channel negotiation.
*/
CommitmentType commitment_type = 18;
/*
If this is true, then a zero-conf channel open will be attempted.
*/
bool zero_conf = 19;
/*
If this is true, then an option-scid-alias channel-type open will be
attempted.
*/
bool scid_alias = 20;
}
message OpenStatusUpdate {
oneof update {
@ -2550,6 +2642,9 @@ message WalletBalanceResponse {
// other usage.
int64 locked_balance = 5 [jstype = JS_STRING];
// The amount of reserve required.
int64 reserved_balance_anchor_chan = 6 [jstype = JS_STRING];
// A mapping of each wallet account's name to its balance.
map<string, WalletAccountBalance> account_balance = 4;
}
@ -3171,6 +3266,7 @@ message Invoice {
/*
The hash of the preimage. When using REST, this field must be encoded as
base64.
Note: Output only, don't specify for creating an invoice.
*/
bytes r_hash = 4;
@ -3188,19 +3284,30 @@ message Invoice {
*/
int64 value_msat = 23 [jstype = JS_STRING];
// Whether this invoice has been fulfilled
/*
Whether this invoice has been fulfilled
The field is deprecated. Use the state field instead (compare to SETTLED).
*/
bool settled = 6 [deprecated = true];
// When this invoice was created
/*
When this invoice was created.
Note: Output only, don't specify for creating an invoice.
*/
int64 creation_date = 7 [jstype = JS_STRING];
// When this invoice was settled
/*
When this invoice was settled.
Note: Output only, don't specify for creating an invoice.
*/
int64 settle_date = 8 [jstype = JS_STRING];
/*
A bare-bones invoice for a payment within the Lightning Network. With the
details of the invoice, the sender has all the data necessary to send a
payment to the recipient.
Note: Output only, don't specify for creating an invoice.
*/
string payment_request = 9;
@ -3235,6 +3342,7 @@ message Invoice {
this index making it monotonically increasing. Callers to the
SubscribeInvoices call can use this to instantly get notified of all added
invoices with an add_index greater than this one.
Note: Output only, don't specify for creating an invoice.
*/
uint64 add_index = 16 [jstype = JS_STRING];
@ -3243,6 +3351,7 @@ message Invoice {
increment this index making it monotonically increasing. Callers to the
SubscribeInvoices call can use this to instantly get notified of all
settled invoices with an settle_index greater than this one.
Note: Output only, don't specify for creating an invoice.
*/
uint64 settle_index = 17 [jstype = JS_STRING];
@ -3256,6 +3365,7 @@ message Invoice {
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.
*/
int64 amt_paid_sat = 19 [jstype = JS_STRING];
@ -3266,6 +3376,7 @@ message Invoice {
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.
*/
int64 amt_paid_msat = 20 [jstype = JS_STRING];
@ -3278,18 +3389,26 @@ message Invoice {
/*
The state the invoice is in.
Note: Output only, don't specify for creating an invoice.
*/
InvoiceState state = 21;
// List of HTLCs paying to this invoice [EXPERIMENTAL].
/*
List of HTLCs paying to this invoice [EXPERIMENTAL].
Note: Output only, don't specify for creating an invoice.
*/
repeated InvoiceHTLC htlcs = 22;
// List of features advertised on the invoice.
/*
List of features advertised on the invoice.
Note: Output only, don't specify for creating an invoice.
*/
map<uint32, Feature> features = 24;
/*
Indicates if this invoice was a spontaneous payment that arrived via keysend
[EXPERIMENTAL].
Note: Output only, don't specify for creating an invoice.
*/
bool is_keysend = 25;
@ -3297,6 +3416,7 @@ message Invoice {
The payment address of this invoice. This value will be used in MPP
payments, and also for newer invoices that always require the MPP payload
for added end-to-end security.
Note: Output only, don't specify for creating an invoice.
*/
bytes payment_addr = 26;
@ -3312,6 +3432,7 @@ message Invoice {
given set ID. This field is always populated for AMP invoices, and can be
used along side LookupInvoice to obtain the HTLC information related to a
given sub-invoice.
Note: Output only, don't specify for creating an invoice.
*/
map<string, AMPInvoiceState> amp_invoice_state = 28;
}
@ -4319,6 +4440,14 @@ message RPCMiddlewareRequest {
the same type, or replaced by an error message.
*/
RPCMessage response = 6;
/*
This is used to indicate to the client that the server has successfully
registered the interceptor. This is only used in the very first message
that the server sends to the client after the client sends the server
the middleware registration message.
*/
bool reg_complete = 8;
}
/*
@ -4356,7 +4485,8 @@ message RPCMessage {
/*
The full canonical gRPC name of the message type (in the format
<rpcpackage>.TypeName, for example lnrpc.GetInfoRequest).
<rpcpackage>.TypeName, for example lnrpc.GetInfoRequest). In case of an
error being returned from lnd, this simply contains the string "error".
*/
string type_name = 3;
@ -4365,6 +4495,13 @@ message RPCMessage {
format.
*/
bytes serialized = 4;
/*
Indicates that the response from lnd was an error, not a gRPC response. If
this is set to true then the type_name contains the string "error" and
serialized contains the error string.
*/
bool is_error = 5;
}
message RPCMiddlewareResponse {
@ -4441,18 +4578,16 @@ message InterceptFeedback {
string error = 1;
/*
A boolean indicating that the gRPC response should be replaced/overwritten.
As its name suggests, this can only be used as a feedback to an intercepted
response RPC message and is ignored for feedback on any other message. This
boolean is needed because in protobuf an empty message is serialized as a
0-length or nil byte slice and we wouldn't be able to distinguish between
A boolean indicating that the gRPC message should be replaced/overwritten.
This boolean is needed because in protobuf an empty message is serialized as
a 0-length or nil byte slice and we wouldn't be able to distinguish between
an empty replacement message and the "don't replace anything" case.
*/
bool replace_response = 2;
/*
If the replace_response field is set to true, this field must contain the
binary serialized gRPC response message in the protobuf format.
binary serialized gRPC message in the protobuf format.
*/
bytes replacement_serialized = 3;
}

View file

@ -317,6 +317,9 @@ message SwapResponse {
*/
string htlc_address_p2wsh = 5;
// The address of the v3 (taproot) htlc. Used for both loop-in and loop-out.
string htlc_address_p2tr = 7;
// A human-readable message received from the loop server.
string server_message = 6;
}
@ -387,6 +390,9 @@ message SwapStatus {
// HTLC address (nested segwit), used in loop-in swaps only.
string htlc_address_np2wsh = 13;
// The address of the v3 (taproot) htlc. Used for both loop-in and loop-out.
string htlc_address_p2tr = 18;
// Swap server cost
int64 cost_server = 8 [jstype = JS_STRING];

View file

@ -43,6 +43,8 @@ service SwapServer {
rpc ReportRoutingResult (ReportRoutingResultReq)
returns (ReportRoutingResultRes);
rpc MuSig2SignSweep (MuSig2SignSweepReq) returns (MuSig2SignSweepRes);
}
/**
@ -92,6 +94,9 @@ enum ProtocolVersion {
// The client may ask the server to use a custom routing helper plugin in
// order to enhance off-chain payments corresponding to a swap.
ROUTING_PLUGIN = 9;
// The client will use the new v3 (taproot) HTLC scripts.
HTLC_V3 = 10;
}
message ServerLoopOutRequest {
@ -523,3 +528,30 @@ message ReportRoutingResultReq {
message ReportRoutingResultRes {
}
message MuSig2SignSweepReq {
reserved 5;
ProtocolVersion protocol_version = 1;
// The swap hash.
bytes swap_hash = 2;
// The payment address for the swap invoice, used to ensure that only the
// swap owner can obtain the partial signature.
bytes payment_address = 3;
// The local public nonce.
bytes nonce = 4;
// The psbt of the sweep txn.
bytes sweep_tx_psbt = 6;
}
message MuSig2SignSweepRes {
// The server side public nonce.
bytes nonce = 1;
// The partial signature of the server for the requested sighash.
bytes partial_signature = 2;
}