// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.36.11 // protoc v3.21.12 // source: lit-sessions.proto package litrpc import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" sync "sync" unsafe "unsafe" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) type SessionType int32 const ( SessionType_TYPE_MACAROON_READONLY SessionType = 0 SessionType_TYPE_MACAROON_ADMIN SessionType = 1 SessionType_TYPE_MACAROON_CUSTOM SessionType = 2 SessionType_TYPE_UI_PASSWORD SessionType = 3 SessionType_TYPE_AUTOPILOT SessionType = 4 SessionType_TYPE_MACAROON_ACCOUNT SessionType = 5 ) // Enum value maps for SessionType. var ( SessionType_name = map[int32]string{ 0: "TYPE_MACAROON_READONLY", 1: "TYPE_MACAROON_ADMIN", 2: "TYPE_MACAROON_CUSTOM", 3: "TYPE_UI_PASSWORD", 4: "TYPE_AUTOPILOT", 5: "TYPE_MACAROON_ACCOUNT", } SessionType_value = map[string]int32{ "TYPE_MACAROON_READONLY": 0, "TYPE_MACAROON_ADMIN": 1, "TYPE_MACAROON_CUSTOM": 2, "TYPE_UI_PASSWORD": 3, "TYPE_AUTOPILOT": 4, "TYPE_MACAROON_ACCOUNT": 5, } ) func (x SessionType) Enum() *SessionType { p := new(SessionType) *p = x return p } func (x SessionType) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (SessionType) Descriptor() protoreflect.EnumDescriptor { return file_lit_sessions_proto_enumTypes[0].Descriptor() } func (SessionType) Type() protoreflect.EnumType { return &file_lit_sessions_proto_enumTypes[0] } func (x SessionType) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use SessionType.Descriptor instead. func (SessionType) EnumDescriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{0} } type SessionState int32 const ( SessionState_STATE_CREATED SessionState = 0 SessionState_STATE_IN_USE SessionState = 1 SessionState_STATE_REVOKED SessionState = 2 SessionState_STATE_EXPIRED SessionState = 3 SessionState_STATE_RESERVED SessionState = 4 ) // Enum value maps for SessionState. var ( SessionState_name = map[int32]string{ 0: "STATE_CREATED", 1: "STATE_IN_USE", 2: "STATE_REVOKED", 3: "STATE_EXPIRED", 4: "STATE_RESERVED", } SessionState_value = map[string]int32{ "STATE_CREATED": 0, "STATE_IN_USE": 1, "STATE_REVOKED": 2, "STATE_EXPIRED": 3, "STATE_RESERVED": 4, } ) func (x SessionState) Enum() *SessionState { p := new(SessionState) *p = x return p } func (x SessionState) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (SessionState) Descriptor() protoreflect.EnumDescriptor { return file_lit_sessions_proto_enumTypes[1].Descriptor() } func (SessionState) Type() protoreflect.EnumType { return &file_lit_sessions_proto_enumTypes[1] } func (x SessionState) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use SessionState.Descriptor instead. func (SessionState) EnumDescriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{1} } type AddSessionRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // A user assigned label for the session. Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"` // The session type. This will be used during macaroon construction to // determine how restrictive to make the macaroon and thus the session access. SessionType SessionType `protobuf:"varint,2,opt,name=session_type,json=sessionType,proto3,enum=litrpc.SessionType" json:"session_type,omitempty"` // The time at which the session should automatically be revoked. ExpiryTimestampSeconds uint64 `protobuf:"varint,3,opt,name=expiry_timestamp_seconds,json=expiryTimestampSeconds,proto3" json:"expiry_timestamp_seconds,omitempty"` // The address of the mailbox server that the LNC connection should use. MailboxServerAddr string `protobuf:"bytes,4,opt,name=mailbox_server_addr,json=mailboxServerAddr,proto3" json:"mailbox_server_addr,omitempty"` // If set to true, tls will be skipped when connecting to the mailbox. DevServer bool `protobuf:"varint,5,opt,name=dev_server,json=devServer,proto3" json:"dev_server,omitempty"` // Any custom permissions to add the session's macaroon. MacaroonCustomPermissions []*MacaroonPermission `protobuf:"bytes,6,rep,name=macaroon_custom_permissions,json=macaroonCustomPermissions,proto3" json:"macaroon_custom_permissions,omitempty"` // The ID of the account to associate this session with. This should only be // set if the session_type is TYPE_MACAROON_ACCOUNT. AccountId string `protobuf:"bytes,7,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *AddSessionRequest) Reset() { *x = AddSessionRequest{} mi := &file_lit_sessions_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *AddSessionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddSessionRequest) ProtoMessage() {} func (x *AddSessionRequest) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[0] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use AddSessionRequest.ProtoReflect.Descriptor instead. func (*AddSessionRequest) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{0} } func (x *AddSessionRequest) GetLabel() string { if x != nil { return x.Label } return "" } func (x *AddSessionRequest) GetSessionType() SessionType { if x != nil { return x.SessionType } return SessionType_TYPE_MACAROON_READONLY } func (x *AddSessionRequest) GetExpiryTimestampSeconds() uint64 { if x != nil { return x.ExpiryTimestampSeconds } return 0 } func (x *AddSessionRequest) GetMailboxServerAddr() string { if x != nil { return x.MailboxServerAddr } return "" } func (x *AddSessionRequest) GetDevServer() bool { if x != nil { return x.DevServer } return false } func (x *AddSessionRequest) GetMacaroonCustomPermissions() []*MacaroonPermission { if x != nil { return x.MacaroonCustomPermissions } return nil } func (x *AddSessionRequest) GetAccountId() string { if x != nil { return x.AccountId } return "" } type MacaroonPermission struct { state protoimpl.MessageState `protogen:"open.v1"` // The entity a permission grants access to. If a entity is set to the // "uri" keyword then the action entry should be one of the special cases // described in the comment for action. Entity string `protobuf:"bytes,1,opt,name=entity,proto3" json:"entity,omitempty"` // The action that is granted. If entity is set to "uri", then action must // be set to either: // - a particular URI to which access should be granted. // - a URI regex, in which case access will be granted to each URI that // matches the regex. // - the "***readonly***" keyword. This will result in the access being // granted to all read-only endpoints. Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *MacaroonPermission) Reset() { *x = MacaroonPermission{} mi := &file_lit_sessions_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *MacaroonPermission) String() string { return protoimpl.X.MessageStringOf(x) } func (*MacaroonPermission) ProtoMessage() {} func (x *MacaroonPermission) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use MacaroonPermission.ProtoReflect.Descriptor instead. func (*MacaroonPermission) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{1} } func (x *MacaroonPermission) GetEntity() string { if x != nil { return x.Entity } return "" } func (x *MacaroonPermission) GetAction() string { if x != nil { return x.Action } return "" } type AddSessionResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // The session of the newly created session. Session *Session `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *AddSessionResponse) Reset() { *x = AddSessionResponse{} mi := &file_lit_sessions_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *AddSessionResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*AddSessionResponse) ProtoMessage() {} func (x *AddSessionResponse) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[2] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use AddSessionResponse.ProtoReflect.Descriptor instead. func (*AddSessionResponse) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{2} } func (x *AddSessionResponse) GetSession() *Session { if x != nil { return x.Session } return nil } type Session struct { state protoimpl.MessageState `protogen:"open.v1"` // A unique ID assigned to the session. It is derived from the session // macaroon. Id []byte `protobuf:"bytes,14,opt,name=id,proto3" json:"id,omitempty"` // A user assigned label for the session. Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"` // The current state that the session is in. This will give an indication of // if the session is currently usable or not. SessionState SessionState `protobuf:"varint,2,opt,name=session_state,json=sessionState,proto3,enum=litrpc.SessionState" json:"session_state,omitempty"` // The session type. The will given an indication of the restrictions applied // to the macaroon assigned to the session. SessionType SessionType `protobuf:"varint,3,opt,name=session_type,json=sessionType,proto3,enum=litrpc.SessionType" json:"session_type,omitempty"` // The time at which the session will automatically be revoked. ExpiryTimestampSeconds uint64 `protobuf:"varint,4,opt,name=expiry_timestamp_seconds,json=expiryTimestampSeconds,proto3" json:"expiry_timestamp_seconds,omitempty"` // The address of the mailbox server that the LNC connection should use. MailboxServerAddr string `protobuf:"bytes,5,opt,name=mailbox_server_addr,json=mailboxServerAddr,proto3" json:"mailbox_server_addr,omitempty"` // If set to true, tls will be skipped when connecting to the mailbox. DevServer bool `protobuf:"varint,6,opt,name=dev_server,json=devServer,proto3" json:"dev_server,omitempty"` // The LNC pairing phrase in byte form. PairingSecret []byte `protobuf:"bytes,7,opt,name=pairing_secret,json=pairingSecret,proto3" json:"pairing_secret,omitempty"` // The LNC pairing phrase in mnemonic form. PairingSecretMnemonic string `protobuf:"bytes,8,opt,name=pairing_secret_mnemonic,json=pairingSecretMnemonic,proto3" json:"pairing_secret_mnemonic,omitempty"` // The long term, local static public key used by this node for the LNC // connection. LocalPublicKey []byte `protobuf:"bytes,9,opt,name=local_public_key,json=localPublicKey,proto3" json:"local_public_key,omitempty"` // The long term, remote static public key used by the remote party for the // LNC connection. RemotePublicKey []byte `protobuf:"bytes,10,opt,name=remote_public_key,json=remotePublicKey,proto3" json:"remote_public_key,omitempty"` // The time at which the session was created. CreatedAt uint64 `protobuf:"varint,11,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` // The recipe used for creating a macaroon to use with this session. This will // be closely linked to the session type. MacaroonRecipe *MacaroonRecipe `protobuf:"bytes,12,opt,name=macaroon_recipe,json=macaroonRecipe,proto3" json:"macaroon_recipe,omitempty"` // If the session is for a specific account, then this will be the account ID // it is associated with. AccountId string `protobuf:"bytes,13,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"` // If this session is for Autopilot use, then this will be the set of features // that the session can be used for along with the rules for each feature. AutopilotFeatureInfo map[string]*RulesMap `protobuf:"bytes,15,rep,name=autopilot_feature_info,json=autopilotFeatureInfo,proto3" json:"autopilot_feature_info,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // The unix timestamp indicating the time at which the session was revoked. // Note that this field has not been around since the beginning and so it // could be the case that a session has been revoked but that this field // will not have been set for that session. Therefore, it is suggested that // readers should not assume that if this field is zero that the session is // not revoked. Readers should instead first check the session_state field. RevokedAt uint64 `protobuf:"varint,16,opt,name=revoked_at,json=revokedAt,proto3" json:"revoked_at,omitempty"` // The ID of the group of Session's that this Session is linked to. If this // session is not linked to any older Session, then this value will be the // same as the ID. GroupId []byte `protobuf:"bytes,17,opt,name=group_id,json=groupId,proto3" json:"group_id,omitempty"` // Configurations for each individual feature mapping from the feature name to // a JSON-serialized configuration. FeatureConfigs map[string]string `protobuf:"bytes,18,rep,name=feature_configs,json=featureConfigs,proto3" json:"feature_configs,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` // Privacy flags used for the session that determine how the privacy mapper // operates. PrivacyFlags uint64 `protobuf:"varint,19,opt,name=privacy_flags,json=privacyFlags,proto3" json:"privacy_flags,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Session) Reset() { *x = Session{} mi := &file_lit_sessions_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *Session) String() string { return protoimpl.X.MessageStringOf(x) } func (*Session) ProtoMessage() {} func (x *Session) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Session.ProtoReflect.Descriptor instead. func (*Session) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{3} } func (x *Session) GetId() []byte { if x != nil { return x.Id } return nil } func (x *Session) GetLabel() string { if x != nil { return x.Label } return "" } func (x *Session) GetSessionState() SessionState { if x != nil { return x.SessionState } return SessionState_STATE_CREATED } func (x *Session) GetSessionType() SessionType { if x != nil { return x.SessionType } return SessionType_TYPE_MACAROON_READONLY } func (x *Session) GetExpiryTimestampSeconds() uint64 { if x != nil { return x.ExpiryTimestampSeconds } return 0 } func (x *Session) GetMailboxServerAddr() string { if x != nil { return x.MailboxServerAddr } return "" } func (x *Session) GetDevServer() bool { if x != nil { return x.DevServer } return false } func (x *Session) GetPairingSecret() []byte { if x != nil { return x.PairingSecret } return nil } func (x *Session) GetPairingSecretMnemonic() string { if x != nil { return x.PairingSecretMnemonic } return "" } func (x *Session) GetLocalPublicKey() []byte { if x != nil { return x.LocalPublicKey } return nil } func (x *Session) GetRemotePublicKey() []byte { if x != nil { return x.RemotePublicKey } return nil } func (x *Session) GetCreatedAt() uint64 { if x != nil { return x.CreatedAt } return 0 } func (x *Session) GetMacaroonRecipe() *MacaroonRecipe { if x != nil { return x.MacaroonRecipe } return nil } func (x *Session) GetAccountId() string { if x != nil { return x.AccountId } return "" } func (x *Session) GetAutopilotFeatureInfo() map[string]*RulesMap { if x != nil { return x.AutopilotFeatureInfo } return nil } func (x *Session) GetRevokedAt() uint64 { if x != nil { return x.RevokedAt } return 0 } func (x *Session) GetGroupId() []byte { if x != nil { return x.GroupId } return nil } func (x *Session) GetFeatureConfigs() map[string]string { if x != nil { return x.FeatureConfigs } return nil } func (x *Session) GetPrivacyFlags() uint64 { if x != nil { return x.PrivacyFlags } return 0 } type MacaroonRecipe struct { state protoimpl.MessageState `protogen:"open.v1"` // A list of permissions that should be included in the macaroon. Permissions []*MacaroonPermission `protobuf:"bytes,1,rep,name=permissions,proto3" json:"permissions,omitempty"` // A list of caveats to add to the macaroon. Caveats []string `protobuf:"bytes,2,rep,name=caveats,proto3" json:"caveats,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *MacaroonRecipe) Reset() { *x = MacaroonRecipe{} mi := &file_lit_sessions_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *MacaroonRecipe) String() string { return protoimpl.X.MessageStringOf(x) } func (*MacaroonRecipe) ProtoMessage() {} func (x *MacaroonRecipe) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use MacaroonRecipe.ProtoReflect.Descriptor instead. func (*MacaroonRecipe) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{4} } func (x *MacaroonRecipe) GetPermissions() []*MacaroonPermission { if x != nil { return x.Permissions } return nil } func (x *MacaroonRecipe) GetCaveats() []string { if x != nil { return x.Caveats } return nil } type ListSessionsRequest struct { state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListSessionsRequest) Reset() { *x = ListSessionsRequest{} mi := &file_lit_sessions_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListSessionsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListSessionsRequest) ProtoMessage() {} func (x *ListSessionsRequest) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListSessionsRequest.ProtoReflect.Descriptor instead. func (*ListSessionsRequest) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{5} } type ListSessionsResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // A list of sessions. Sessions []*Session `protobuf:"bytes,1,rep,name=sessions,proto3" json:"sessions,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListSessionsResponse) Reset() { *x = ListSessionsResponse{} mi := &file_lit_sessions_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListSessionsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListSessionsResponse) ProtoMessage() {} func (x *ListSessionsResponse) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListSessionsResponse.ProtoReflect.Descriptor instead. func (*ListSessionsResponse) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{6} } func (x *ListSessionsResponse) GetSessions() []*Session { if x != nil { return x.Sessions } return nil } type RevokeSessionRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // The local static key of the session to be revoked. // When using REST, this field must be encoded as base64url. LocalPublicKey []byte `protobuf:"bytes,8,opt,name=local_public_key,json=localPublicKey,proto3" json:"local_public_key,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RevokeSessionRequest) Reset() { *x = RevokeSessionRequest{} mi := &file_lit_sessions_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RevokeSessionRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RevokeSessionRequest) ProtoMessage() {} func (x *RevokeSessionRequest) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RevokeSessionRequest.ProtoReflect.Descriptor instead. func (*RevokeSessionRequest) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{7} } func (x *RevokeSessionRequest) GetLocalPublicKey() []byte { if x != nil { return x.LocalPublicKey } return nil } type RevokeSessionResponse struct { state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RevokeSessionResponse) Reset() { *x = RevokeSessionResponse{} mi := &file_lit_sessions_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RevokeSessionResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RevokeSessionResponse) ProtoMessage() {} func (x *RevokeSessionResponse) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RevokeSessionResponse.ProtoReflect.Descriptor instead. func (*RevokeSessionResponse) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{8} } type RulesMap struct { state protoimpl.MessageState `protogen:"open.v1"` // A map of rule name to RuleValue. The RuleValue should be parsed based on // the name of the rule. Rules map[string]*RuleValue `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RulesMap) Reset() { *x = RulesMap{} mi := &file_lit_sessions_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RulesMap) String() string { return protoimpl.X.MessageStringOf(x) } func (*RulesMap) ProtoMessage() {} func (x *RulesMap) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RulesMap.ProtoReflect.Descriptor instead. func (*RulesMap) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{9} } func (x *RulesMap) GetRules() map[string]*RuleValue { if x != nil { return x.Rules } return nil } type RuleValue struct { state protoimpl.MessageState `protogen:"open.v1"` // Types that are valid to be assigned to Value: // // *RuleValue_RateLimit // *RuleValue_ChanPolicyBounds // *RuleValue_HistoryLimit // *RuleValue_OffChainBudget // *RuleValue_OnChainBudget // *RuleValue_SendToSelf // *RuleValue_ChannelRestrict // *RuleValue_PeerRestrict // *RuleValue_ChannelConstraint Value isRuleValue_Value `protobuf_oneof:"value"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RuleValue) Reset() { *x = RuleValue{} mi := &file_lit_sessions_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RuleValue) String() string { return protoimpl.X.MessageStringOf(x) } func (*RuleValue) ProtoMessage() {} func (x *RuleValue) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RuleValue.ProtoReflect.Descriptor instead. func (*RuleValue) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{10} } func (x *RuleValue) GetValue() isRuleValue_Value { if x != nil { return x.Value } return nil } func (x *RuleValue) GetRateLimit() *RateLimit { if x != nil { if x, ok := x.Value.(*RuleValue_RateLimit); ok { return x.RateLimit } } return nil } func (x *RuleValue) GetChanPolicyBounds() *ChannelPolicyBounds { if x != nil { if x, ok := x.Value.(*RuleValue_ChanPolicyBounds); ok { return x.ChanPolicyBounds } } return nil } func (x *RuleValue) GetHistoryLimit() *HistoryLimit { if x != nil { if x, ok := x.Value.(*RuleValue_HistoryLimit); ok { return x.HistoryLimit } } return nil } func (x *RuleValue) GetOffChainBudget() *OffChainBudget { if x != nil { if x, ok := x.Value.(*RuleValue_OffChainBudget); ok { return x.OffChainBudget } } return nil } func (x *RuleValue) GetOnChainBudget() *OnChainBudget { if x != nil { if x, ok := x.Value.(*RuleValue_OnChainBudget); ok { return x.OnChainBudget } } return nil } func (x *RuleValue) GetSendToSelf() *SendToSelf { if x != nil { if x, ok := x.Value.(*RuleValue_SendToSelf); ok { return x.SendToSelf } } return nil } func (x *RuleValue) GetChannelRestrict() *ChannelRestrict { if x != nil { if x, ok := x.Value.(*RuleValue_ChannelRestrict); ok { return x.ChannelRestrict } } return nil } func (x *RuleValue) GetPeerRestrict() *PeerRestrict { if x != nil { if x, ok := x.Value.(*RuleValue_PeerRestrict); ok { return x.PeerRestrict } } return nil } func (x *RuleValue) GetChannelConstraint() *ChannelConstraint { if x != nil { if x, ok := x.Value.(*RuleValue_ChannelConstraint); ok { return x.ChannelConstraint } } return nil } type isRuleValue_Value interface { isRuleValue_Value() } type RuleValue_RateLimit struct { RateLimit *RateLimit `protobuf:"bytes,1,opt,name=rate_limit,json=rateLimit,proto3,oneof"` } type RuleValue_ChanPolicyBounds struct { ChanPolicyBounds *ChannelPolicyBounds `protobuf:"bytes,2,opt,name=chan_policy_bounds,json=chanPolicyBounds,proto3,oneof"` } type RuleValue_HistoryLimit struct { HistoryLimit *HistoryLimit `protobuf:"bytes,3,opt,name=history_limit,json=historyLimit,proto3,oneof"` } type RuleValue_OffChainBudget struct { OffChainBudget *OffChainBudget `protobuf:"bytes,4,opt,name=off_chain_budget,json=offChainBudget,proto3,oneof"` } type RuleValue_OnChainBudget struct { OnChainBudget *OnChainBudget `protobuf:"bytes,5,opt,name=on_chain_budget,json=onChainBudget,proto3,oneof"` } type RuleValue_SendToSelf struct { SendToSelf *SendToSelf `protobuf:"bytes,6,opt,name=send_to_self,json=sendToSelf,proto3,oneof"` } type RuleValue_ChannelRestrict struct { ChannelRestrict *ChannelRestrict `protobuf:"bytes,7,opt,name=channel_restrict,json=channelRestrict,proto3,oneof"` } type RuleValue_PeerRestrict struct { PeerRestrict *PeerRestrict `protobuf:"bytes,8,opt,name=peer_restrict,json=peerRestrict,proto3,oneof"` } type RuleValue_ChannelConstraint struct { ChannelConstraint *ChannelConstraint `protobuf:"bytes,9,opt,name=channel_constraint,json=channelConstraint,proto3,oneof"` } func (*RuleValue_RateLimit) isRuleValue_Value() {} func (*RuleValue_ChanPolicyBounds) isRuleValue_Value() {} func (*RuleValue_HistoryLimit) isRuleValue_Value() {} func (*RuleValue_OffChainBudget) isRuleValue_Value() {} func (*RuleValue_OnChainBudget) isRuleValue_Value() {} func (*RuleValue_SendToSelf) isRuleValue_Value() {} func (*RuleValue_ChannelRestrict) isRuleValue_Value() {} func (*RuleValue_PeerRestrict) isRuleValue_Value() {} func (*RuleValue_ChannelConstraint) isRuleValue_Value() {} type RateLimit struct { state protoimpl.MessageState `protogen:"open.v1"` // The rate limit for read-only calls. ReadLimit *Rate `protobuf:"bytes,1,opt,name=read_limit,json=readLimit,proto3" json:"read_limit,omitempty"` // The rate limit for write/execution calls. WriteLimit *Rate `protobuf:"bytes,2,opt,name=write_limit,json=writeLimit,proto3" json:"write_limit,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RateLimit) Reset() { *x = RateLimit{} mi := &file_lit_sessions_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RateLimit) String() string { return protoimpl.X.MessageStringOf(x) } func (*RateLimit) ProtoMessage() {} func (x *RateLimit) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RateLimit.ProtoReflect.Descriptor instead. func (*RateLimit) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{11} } func (x *RateLimit) GetReadLimit() *Rate { if x != nil { return x.ReadLimit } return nil } func (x *RateLimit) GetWriteLimit() *Rate { if x != nil { return x.WriteLimit } return nil } type Rate struct { state protoimpl.MessageState `protogen:"open.v1"` // The number of times a call is allowed in num_hours number of hours. Iterations uint32 `protobuf:"varint,1,opt,name=iterations,proto3" json:"iterations,omitempty"` // The number of hours in which the iterations count takes place over. NumHours uint32 `protobuf:"varint,2,opt,name=num_hours,json=numHours,proto3" json:"num_hours,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Rate) Reset() { *x = Rate{} mi := &file_lit_sessions_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *Rate) String() string { return protoimpl.X.MessageStringOf(x) } func (*Rate) ProtoMessage() {} func (x *Rate) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Rate.ProtoReflect.Descriptor instead. func (*Rate) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{12} } func (x *Rate) GetIterations() uint32 { if x != nil { return x.Iterations } return 0 } func (x *Rate) GetNumHours() uint32 { if x != nil { return x.NumHours } return 0 } type HistoryLimit struct { state protoimpl.MessageState `protogen:"open.v1"` // The absolute unix timestamp in seconds before which no information should // be shared. This should only be set if duration is not set. StartTime uint64 `protobuf:"varint,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` // The maximum relative duration in seconds that a request is allowed to query // for. This should only be set if start_time is not set. Duration uint64 `protobuf:"varint,2,opt,name=duration,proto3" json:"duration,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *HistoryLimit) Reset() { *x = HistoryLimit{} mi := &file_lit_sessions_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *HistoryLimit) String() string { return protoimpl.X.MessageStringOf(x) } func (*HistoryLimit) ProtoMessage() {} func (x *HistoryLimit) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use HistoryLimit.ProtoReflect.Descriptor instead. func (*HistoryLimit) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{13} } func (x *HistoryLimit) GetStartTime() uint64 { if x != nil { return x.StartTime } return 0 } func (x *HistoryLimit) GetDuration() uint64 { if x != nil { return x.Duration } return 0 } type ChannelPolicyBounds struct { state protoimpl.MessageState `protogen:"open.v1"` // The minimum base fee in msat that the autopilot can set for a channel. MinBaseMsat uint64 `protobuf:"varint,1,opt,name=min_base_msat,json=minBaseMsat,proto3" json:"min_base_msat,omitempty"` // The maximum base fee in msat that the autopilot can set for a channel. MaxBaseMsat uint64 `protobuf:"varint,2,opt,name=max_base_msat,json=maxBaseMsat,proto3" json:"max_base_msat,omitempty"` // The minimum ppm fee in msat that the autopilot can set for a channel. MinRatePpm uint32 `protobuf:"varint,3,opt,name=min_rate_ppm,json=minRatePpm,proto3" json:"min_rate_ppm,omitempty"` // The maximum ppm fee in msat that the autopilot can set for a channel. MaxRatePpm uint32 `protobuf:"varint,4,opt,name=max_rate_ppm,json=maxRatePpm,proto3" json:"max_rate_ppm,omitempty"` // The minimum cltv delta that the autopilot may set for a channel. MinCltvDelta uint32 `protobuf:"varint,5,opt,name=min_cltv_delta,json=minCltvDelta,proto3" json:"min_cltv_delta,omitempty"` // The maximum cltv delta that the autopilot may set for a channel. MaxCltvDelta uint32 `protobuf:"varint,6,opt,name=max_cltv_delta,json=maxCltvDelta,proto3" json:"max_cltv_delta,omitempty"` // The minimum htlc msat that the autopilot may set for a channel. MinHtlcMsat uint64 `protobuf:"varint,7,opt,name=min_htlc_msat,json=minHtlcMsat,proto3" json:"min_htlc_msat,omitempty"` // The maximum htlc msat that the autopilot may set for a channel. MaxHtlcMsat uint64 `protobuf:"varint,8,opt,name=max_htlc_msat,json=maxHtlcMsat,proto3" json:"max_htlc_msat,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ChannelPolicyBounds) Reset() { *x = ChannelPolicyBounds{} mi := &file_lit_sessions_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ChannelPolicyBounds) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChannelPolicyBounds) ProtoMessage() {} func (x *ChannelPolicyBounds) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ChannelPolicyBounds.ProtoReflect.Descriptor instead. func (*ChannelPolicyBounds) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{14} } func (x *ChannelPolicyBounds) GetMinBaseMsat() uint64 { if x != nil { return x.MinBaseMsat } return 0 } func (x *ChannelPolicyBounds) GetMaxBaseMsat() uint64 { if x != nil { return x.MaxBaseMsat } return 0 } func (x *ChannelPolicyBounds) GetMinRatePpm() uint32 { if x != nil { return x.MinRatePpm } return 0 } func (x *ChannelPolicyBounds) GetMaxRatePpm() uint32 { if x != nil { return x.MaxRatePpm } return 0 } func (x *ChannelPolicyBounds) GetMinCltvDelta() uint32 { if x != nil { return x.MinCltvDelta } return 0 } func (x *ChannelPolicyBounds) GetMaxCltvDelta() uint32 { if x != nil { return x.MaxCltvDelta } return 0 } func (x *ChannelPolicyBounds) GetMinHtlcMsat() uint64 { if x != nil { return x.MinHtlcMsat } return 0 } func (x *ChannelPolicyBounds) GetMaxHtlcMsat() uint64 { if x != nil { return x.MaxHtlcMsat } return 0 } type OffChainBudget struct { state protoimpl.MessageState `protogen:"open.v1"` // The maximum amount that can be spent off-chain excluding fees. MaxAmtMsat uint64 `protobuf:"varint,1,opt,name=max_amt_msat,json=maxAmtMsat,proto3" json:"max_amt_msat,omitempty"` // The maximum amount that can be spent off-chain on fees. MaxFeesMsat uint64 `protobuf:"varint,2,opt,name=max_fees_msat,json=maxFeesMsat,proto3" json:"max_fees_msat,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *OffChainBudget) Reset() { *x = OffChainBudget{} mi := &file_lit_sessions_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *OffChainBudget) String() string { return protoimpl.X.MessageStringOf(x) } func (*OffChainBudget) ProtoMessage() {} func (x *OffChainBudget) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use OffChainBudget.ProtoReflect.Descriptor instead. func (*OffChainBudget) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{15} } func (x *OffChainBudget) GetMaxAmtMsat() uint64 { if x != nil { return x.MaxAmtMsat } return 0 } func (x *OffChainBudget) GetMaxFeesMsat() uint64 { if x != nil { return x.MaxFeesMsat } return 0 } type OnChainBudget struct { state protoimpl.MessageState `protogen:"open.v1"` // The maximum amount that can be spent on-chain including fees. AbsoluteAmtSats uint64 `protobuf:"varint,1,opt,name=absolute_amt_sats,json=absoluteAmtSats,proto3" json:"absolute_amt_sats,omitempty"` // The maximum amount that can be spent on-chain in fees. MaxSatPerVByte uint64 `protobuf:"varint,2,opt,name=max_sat_per_v_byte,json=maxSatPerVByte,proto3" json:"max_sat_per_v_byte,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *OnChainBudget) Reset() { *x = OnChainBudget{} mi := &file_lit_sessions_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *OnChainBudget) String() string { return protoimpl.X.MessageStringOf(x) } func (*OnChainBudget) ProtoMessage() {} func (x *OnChainBudget) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[16] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use OnChainBudget.ProtoReflect.Descriptor instead. func (*OnChainBudget) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{16} } func (x *OnChainBudget) GetAbsoluteAmtSats() uint64 { if x != nil { return x.AbsoluteAmtSats } return 0 } func (x *OnChainBudget) GetMaxSatPerVByte() uint64 { if x != nil { return x.MaxSatPerVByte } return 0 } type SendToSelf struct { state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *SendToSelf) Reset() { *x = SendToSelf{} mi := &file_lit_sessions_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *SendToSelf) String() string { return protoimpl.X.MessageStringOf(x) } func (*SendToSelf) ProtoMessage() {} func (x *SendToSelf) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[17] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SendToSelf.ProtoReflect.Descriptor instead. func (*SendToSelf) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{17} } type ChannelRestrict struct { state protoimpl.MessageState `protogen:"open.v1"` // A list of channel IDs that the Autopilot should _not_ perform any actions // on. ChannelIds []uint64 `protobuf:"varint,1,rep,packed,name=channel_ids,json=channelIds,proto3" json:"channel_ids,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ChannelRestrict) Reset() { *x = ChannelRestrict{} mi := &file_lit_sessions_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ChannelRestrict) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChannelRestrict) ProtoMessage() {} func (x *ChannelRestrict) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[18] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ChannelRestrict.ProtoReflect.Descriptor instead. func (*ChannelRestrict) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{18} } func (x *ChannelRestrict) GetChannelIds() []uint64 { if x != nil { return x.ChannelIds } return nil } type PeerRestrict struct { state protoimpl.MessageState `protogen:"open.v1"` // A list of peer IDs that the Autopilot should _not_ perform any actions on. PeerIds []string `protobuf:"bytes,1,rep,name=peer_ids,json=peerIds,proto3" json:"peer_ids,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *PeerRestrict) Reset() { *x = PeerRestrict{} mi := &file_lit_sessions_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *PeerRestrict) String() string { return protoimpl.X.MessageStringOf(x) } func (*PeerRestrict) ProtoMessage() {} func (x *PeerRestrict) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PeerRestrict.ProtoReflect.Descriptor instead. func (*PeerRestrict) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{19} } func (x *PeerRestrict) GetPeerIds() []string { if x != nil { return x.PeerIds } return nil } type ChannelConstraint struct { state protoimpl.MessageState `protogen:"open.v1"` // The minimum channel size autopilot has to set for a channel. MinCapacitySat uint64 `protobuf:"varint,1,opt,name=min_capacity_sat,json=minCapacitySat,proto3" json:"min_capacity_sat,omitempty"` // The maximum channel size autopilot can set for a channel. MaxCapacitySat uint64 `protobuf:"varint,2,opt,name=max_capacity_sat,json=maxCapacitySat,proto3" json:"max_capacity_sat,omitempty"` // The maximum push amount for a channel. MaxPushSat uint64 `protobuf:"varint,3,opt,name=max_push_sat,json=maxPushSat,proto3" json:"max_push_sat,omitempty"` // Indicates whether opening of private channels is allowed. PrivateAllowed bool `protobuf:"varint,4,opt,name=private_allowed,json=privateAllowed,proto3" json:"private_allowed,omitempty"` // Indicates whether opening of public channels is allowed. PublicAllowed bool `protobuf:"varint,5,opt,name=public_allowed,json=publicAllowed,proto3" json:"public_allowed,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ChannelConstraint) Reset() { *x = ChannelConstraint{} mi := &file_lit_sessions_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ChannelConstraint) String() string { return protoimpl.X.MessageStringOf(x) } func (*ChannelConstraint) ProtoMessage() {} func (x *ChannelConstraint) ProtoReflect() protoreflect.Message { mi := &file_lit_sessions_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ChannelConstraint.ProtoReflect.Descriptor instead. func (*ChannelConstraint) Descriptor() ([]byte, []int) { return file_lit_sessions_proto_rawDescGZIP(), []int{20} } func (x *ChannelConstraint) GetMinCapacitySat() uint64 { if x != nil { return x.MinCapacitySat } return 0 } func (x *ChannelConstraint) GetMaxCapacitySat() uint64 { if x != nil { return x.MaxCapacitySat } return 0 } func (x *ChannelConstraint) GetMaxPushSat() uint64 { if x != nil { return x.MaxPushSat } return 0 } func (x *ChannelConstraint) GetPrivateAllowed() bool { if x != nil { return x.PrivateAllowed } return false } func (x *ChannelConstraint) GetPublicAllowed() bool { if x != nil { return x.PublicAllowed } return false } var File_lit_sessions_proto protoreflect.FileDescriptor const file_lit_sessions_proto_rawDesc = "" + "\n" + "\x12lit-sessions.proto\x12\x06litrpc\"\xe9\x02\n" + "\x11AddSessionRequest\x12\x14\n" + "\x05label\x18\x01 \x01(\tR\x05label\x126\n" + "\fsession_type\x18\x02 \x01(\x0e2\x13.litrpc.SessionTypeR\vsessionType\x12<\n" + "\x18expiry_timestamp_seconds\x18\x03 \x01(\x04B\x020\x01R\x16expiryTimestampSeconds\x12.\n" + "\x13mailbox_server_addr\x18\x04 \x01(\tR\x11mailboxServerAddr\x12\x1d\n" + "\n" + "dev_server\x18\x05 \x01(\bR\tdevServer\x12Z\n" + "\x1bmacaroon_custom_permissions\x18\x06 \x03(\v2\x1a.litrpc.MacaroonPermissionR\x19macaroonCustomPermissions\x12\x1d\n" + "\n" + "account_id\x18\a \x01(\tR\taccountId\"D\n" + "\x12MacaroonPermission\x12\x16\n" + "\x06entity\x18\x01 \x01(\tR\x06entity\x12\x16\n" + "\x06action\x18\x02 \x01(\tR\x06action\"?\n" + "\x12AddSessionResponse\x12)\n" + "\asession\x18\x01 \x01(\v2\x0f.litrpc.SessionR\asession\"\x97\b\n" + "\aSession\x12\x0e\n" + "\x02id\x18\x0e \x01(\fR\x02id\x12\x14\n" + "\x05label\x18\x01 \x01(\tR\x05label\x129\n" + "\rsession_state\x18\x02 \x01(\x0e2\x14.litrpc.SessionStateR\fsessionState\x126\n" + "\fsession_type\x18\x03 \x01(\x0e2\x13.litrpc.SessionTypeR\vsessionType\x12<\n" + "\x18expiry_timestamp_seconds\x18\x04 \x01(\x04B\x020\x01R\x16expiryTimestampSeconds\x12.\n" + "\x13mailbox_server_addr\x18\x05 \x01(\tR\x11mailboxServerAddr\x12\x1d\n" + "\n" + "dev_server\x18\x06 \x01(\bR\tdevServer\x12%\n" + "\x0epairing_secret\x18\a \x01(\fR\rpairingSecret\x126\n" + "\x17pairing_secret_mnemonic\x18\b \x01(\tR\x15pairingSecretMnemonic\x12(\n" + "\x10local_public_key\x18\t \x01(\fR\x0elocalPublicKey\x12*\n" + "\x11remote_public_key\x18\n" + " \x01(\fR\x0fremotePublicKey\x12!\n" + "\n" + "created_at\x18\v \x01(\x04B\x020\x01R\tcreatedAt\x12?\n" + "\x0fmacaroon_recipe\x18\f \x01(\v2\x16.litrpc.MacaroonRecipeR\x0emacaroonRecipe\x12\x1d\n" + "\n" + "account_id\x18\r \x01(\tR\taccountId\x12_\n" + "\x16autopilot_feature_info\x18\x0f \x03(\v2).litrpc.Session.AutopilotFeatureInfoEntryR\x14autopilotFeatureInfo\x12!\n" + "\n" + "revoked_at\x18\x10 \x01(\x04B\x020\x01R\trevokedAt\x12\x19\n" + "\bgroup_id\x18\x11 \x01(\fR\agroupId\x12L\n" + "\x0ffeature_configs\x18\x12 \x03(\v2#.litrpc.Session.FeatureConfigsEntryR\x0efeatureConfigs\x12#\n" + "\rprivacy_flags\x18\x13 \x01(\x04R\fprivacyFlags\x1aY\n" + "\x19AutopilotFeatureInfoEntry\x12\x10\n" + "\x03key\x18\x01 \x01(\tR\x03key\x12&\n" + "\x05value\x18\x02 \x01(\v2\x10.litrpc.RulesMapR\x05value:\x028\x01\x1aA\n" + "\x13FeatureConfigsEntry\x12\x10\n" + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"h\n" + "\x0eMacaroonRecipe\x12<\n" + "\vpermissions\x18\x01 \x03(\v2\x1a.litrpc.MacaroonPermissionR\vpermissions\x12\x18\n" + "\acaveats\x18\x02 \x03(\tR\acaveats\"\x15\n" + "\x13ListSessionsRequest\"C\n" + "\x14ListSessionsResponse\x12+\n" + "\bsessions\x18\x01 \x03(\v2\x0f.litrpc.SessionR\bsessions\"@\n" + "\x14RevokeSessionRequest\x12(\n" + "\x10local_public_key\x18\b \x01(\fR\x0elocalPublicKey\"\x17\n" + "\x15RevokeSessionResponse\"\x8a\x01\n" + "\bRulesMap\x121\n" + "\x05rules\x18\x01 \x03(\v2\x1b.litrpc.RulesMap.RulesEntryR\x05rules\x1aK\n" + "\n" + "RulesEntry\x12\x10\n" + "\x03key\x18\x01 \x01(\tR\x03key\x12'\n" + "\x05value\x18\x02 \x01(\v2\x11.litrpc.RuleValueR\x05value:\x028\x01\"\xde\x04\n" + "\tRuleValue\x122\n" + "\n" + "rate_limit\x18\x01 \x01(\v2\x11.litrpc.RateLimitH\x00R\trateLimit\x12K\n" + "\x12chan_policy_bounds\x18\x02 \x01(\v2\x1b.litrpc.ChannelPolicyBoundsH\x00R\x10chanPolicyBounds\x12;\n" + "\rhistory_limit\x18\x03 \x01(\v2\x14.litrpc.HistoryLimitH\x00R\fhistoryLimit\x12B\n" + "\x10off_chain_budget\x18\x04 \x01(\v2\x16.litrpc.OffChainBudgetH\x00R\x0eoffChainBudget\x12?\n" + "\x0fon_chain_budget\x18\x05 \x01(\v2\x15.litrpc.OnChainBudgetH\x00R\ronChainBudget\x126\n" + "\fsend_to_self\x18\x06 \x01(\v2\x12.litrpc.SendToSelfH\x00R\n" + "sendToSelf\x12D\n" + "\x10channel_restrict\x18\a \x01(\v2\x17.litrpc.ChannelRestrictH\x00R\x0fchannelRestrict\x12;\n" + "\rpeer_restrict\x18\b \x01(\v2\x14.litrpc.PeerRestrictH\x00R\fpeerRestrict\x12J\n" + "\x12channel_constraint\x18\t \x01(\v2\x19.litrpc.ChannelConstraintH\x00R\x11channelConstraintB\a\n" + "\x05value\"g\n" + "\tRateLimit\x12+\n" + "\n" + "read_limit\x18\x01 \x01(\v2\f.litrpc.RateR\treadLimit\x12-\n" + "\vwrite_limit\x18\x02 \x01(\v2\f.litrpc.RateR\n" + "writeLimit\"C\n" + "\x04Rate\x12\x1e\n" + "\n" + "iterations\x18\x01 \x01(\rR\n" + "iterations\x12\x1b\n" + "\tnum_hours\x18\x02 \x01(\rR\bnumHours\"Q\n" + "\fHistoryLimit\x12!\n" + "\n" + "start_time\x18\x01 \x01(\x04B\x020\x01R\tstartTime\x12\x1e\n" + "\bduration\x18\x02 \x01(\x04B\x020\x01R\bduration\"\xc5\x02\n" + "\x13ChannelPolicyBounds\x12&\n" + "\rmin_base_msat\x18\x01 \x01(\x04B\x020\x01R\vminBaseMsat\x12&\n" + "\rmax_base_msat\x18\x02 \x01(\x04B\x020\x01R\vmaxBaseMsat\x12 \n" + "\fmin_rate_ppm\x18\x03 \x01(\rR\n" + "minRatePpm\x12 \n" + "\fmax_rate_ppm\x18\x04 \x01(\rR\n" + "maxRatePpm\x12$\n" + "\x0emin_cltv_delta\x18\x05 \x01(\rR\fminCltvDelta\x12$\n" + "\x0emax_cltv_delta\x18\x06 \x01(\rR\fmaxCltvDelta\x12&\n" + "\rmin_htlc_msat\x18\a \x01(\x04B\x020\x01R\vminHtlcMsat\x12&\n" + "\rmax_htlc_msat\x18\b \x01(\x04B\x020\x01R\vmaxHtlcMsat\"^\n" + "\x0eOffChainBudget\x12$\n" + "\fmax_amt_msat\x18\x01 \x01(\x04B\x020\x01R\n" + "maxAmtMsat\x12&\n" + "\rmax_fees_msat\x18\x02 \x01(\x04B\x020\x01R\vmaxFeesMsat\"o\n" + "\rOnChainBudget\x12.\n" + "\x11absolute_amt_sats\x18\x01 \x01(\x04B\x020\x01R\x0fabsoluteAmtSats\x12.\n" + "\x12max_sat_per_v_byte\x18\x02 \x01(\x04B\x020\x01R\x0emaxSatPerVByte\"\f\n" + "\n" + "SendToSelf\"6\n" + "\x0fChannelRestrict\x12#\n" + "\vchannel_ids\x18\x01 \x03(\x04B\x020\x01R\n" + "channelIds\")\n" + "\fPeerRestrict\x12\x19\n" + "\bpeer_ids\x18\x01 \x03(\tR\apeerIds\"\xe5\x01\n" + "\x11ChannelConstraint\x12,\n" + "\x10min_capacity_sat\x18\x01 \x01(\x04B\x020\x01R\x0eminCapacitySat\x12,\n" + "\x10max_capacity_sat\x18\x02 \x01(\x04B\x020\x01R\x0emaxCapacitySat\x12$\n" + "\fmax_push_sat\x18\x03 \x01(\x04B\x020\x01R\n" + "maxPushSat\x12'\n" + "\x0fprivate_allowed\x18\x04 \x01(\bR\x0eprivateAllowed\x12%\n" + "\x0epublic_allowed\x18\x05 \x01(\bR\rpublicAllowed*\xa1\x01\n" + "\vSessionType\x12\x1a\n" + "\x16TYPE_MACAROON_READONLY\x10\x00\x12\x17\n" + "\x13TYPE_MACAROON_ADMIN\x10\x01\x12\x18\n" + "\x14TYPE_MACAROON_CUSTOM\x10\x02\x12\x14\n" + "\x10TYPE_UI_PASSWORD\x10\x03\x12\x12\n" + "\x0eTYPE_AUTOPILOT\x10\x04\x12\x19\n" + "\x15TYPE_MACAROON_ACCOUNT\x10\x05*m\n" + "\fSessionState\x12\x11\n" + "\rSTATE_CREATED\x10\x00\x12\x10\n" + "\fSTATE_IN_USE\x10\x01\x12\x11\n" + "\rSTATE_REVOKED\x10\x02\x12\x11\n" + "\rSTATE_EXPIRED\x10\x03\x12\x12\n" + "\x0eSTATE_RESERVED\x10\x042\xe8\x01\n" + "\bSessions\x12C\n" + "\n" + "AddSession\x12\x19.litrpc.AddSessionRequest\x1a\x1a.litrpc.AddSessionResponse\x12I\n" + "\fListSessions\x12\x1b.litrpc.ListSessionsRequest\x1a\x1c.litrpc.ListSessionsResponse\x12L\n" + "\rRevokeSession\x12\x1c.litrpc.RevokeSessionRequest\x1a\x1d.litrpc.RevokeSessionResponseB4Z2github.com/lightninglabs/lightning-terminal/litrpcb\x06proto3" var ( file_lit_sessions_proto_rawDescOnce sync.Once file_lit_sessions_proto_rawDescData []byte ) func file_lit_sessions_proto_rawDescGZIP() []byte { file_lit_sessions_proto_rawDescOnce.Do(func() { file_lit_sessions_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_lit_sessions_proto_rawDesc), len(file_lit_sessions_proto_rawDesc))) }) return file_lit_sessions_proto_rawDescData } var file_lit_sessions_proto_enumTypes = make([]protoimpl.EnumInfo, 2) var file_lit_sessions_proto_msgTypes = make([]protoimpl.MessageInfo, 24) var file_lit_sessions_proto_goTypes = []any{ (SessionType)(0), // 0: litrpc.SessionType (SessionState)(0), // 1: litrpc.SessionState (*AddSessionRequest)(nil), // 2: litrpc.AddSessionRequest (*MacaroonPermission)(nil), // 3: litrpc.MacaroonPermission (*AddSessionResponse)(nil), // 4: litrpc.AddSessionResponse (*Session)(nil), // 5: litrpc.Session (*MacaroonRecipe)(nil), // 6: litrpc.MacaroonRecipe (*ListSessionsRequest)(nil), // 7: litrpc.ListSessionsRequest (*ListSessionsResponse)(nil), // 8: litrpc.ListSessionsResponse (*RevokeSessionRequest)(nil), // 9: litrpc.RevokeSessionRequest (*RevokeSessionResponse)(nil), // 10: litrpc.RevokeSessionResponse (*RulesMap)(nil), // 11: litrpc.RulesMap (*RuleValue)(nil), // 12: litrpc.RuleValue (*RateLimit)(nil), // 13: litrpc.RateLimit (*Rate)(nil), // 14: litrpc.Rate (*HistoryLimit)(nil), // 15: litrpc.HistoryLimit (*ChannelPolicyBounds)(nil), // 16: litrpc.ChannelPolicyBounds (*OffChainBudget)(nil), // 17: litrpc.OffChainBudget (*OnChainBudget)(nil), // 18: litrpc.OnChainBudget (*SendToSelf)(nil), // 19: litrpc.SendToSelf (*ChannelRestrict)(nil), // 20: litrpc.ChannelRestrict (*PeerRestrict)(nil), // 21: litrpc.PeerRestrict (*ChannelConstraint)(nil), // 22: litrpc.ChannelConstraint nil, // 23: litrpc.Session.AutopilotFeatureInfoEntry nil, // 24: litrpc.Session.FeatureConfigsEntry nil, // 25: litrpc.RulesMap.RulesEntry } var file_lit_sessions_proto_depIdxs = []int32{ 0, // 0: litrpc.AddSessionRequest.session_type:type_name -> litrpc.SessionType 3, // 1: litrpc.AddSessionRequest.macaroon_custom_permissions:type_name -> litrpc.MacaroonPermission 5, // 2: litrpc.AddSessionResponse.session:type_name -> litrpc.Session 1, // 3: litrpc.Session.session_state:type_name -> litrpc.SessionState 0, // 4: litrpc.Session.session_type:type_name -> litrpc.SessionType 6, // 5: litrpc.Session.macaroon_recipe:type_name -> litrpc.MacaroonRecipe 23, // 6: litrpc.Session.autopilot_feature_info:type_name -> litrpc.Session.AutopilotFeatureInfoEntry 24, // 7: litrpc.Session.feature_configs:type_name -> litrpc.Session.FeatureConfigsEntry 3, // 8: litrpc.MacaroonRecipe.permissions:type_name -> litrpc.MacaroonPermission 5, // 9: litrpc.ListSessionsResponse.sessions:type_name -> litrpc.Session 25, // 10: litrpc.RulesMap.rules:type_name -> litrpc.RulesMap.RulesEntry 13, // 11: litrpc.RuleValue.rate_limit:type_name -> litrpc.RateLimit 16, // 12: litrpc.RuleValue.chan_policy_bounds:type_name -> litrpc.ChannelPolicyBounds 15, // 13: litrpc.RuleValue.history_limit:type_name -> litrpc.HistoryLimit 17, // 14: litrpc.RuleValue.off_chain_budget:type_name -> litrpc.OffChainBudget 18, // 15: litrpc.RuleValue.on_chain_budget:type_name -> litrpc.OnChainBudget 19, // 16: litrpc.RuleValue.send_to_self:type_name -> litrpc.SendToSelf 20, // 17: litrpc.RuleValue.channel_restrict:type_name -> litrpc.ChannelRestrict 21, // 18: litrpc.RuleValue.peer_restrict:type_name -> litrpc.PeerRestrict 22, // 19: litrpc.RuleValue.channel_constraint:type_name -> litrpc.ChannelConstraint 14, // 20: litrpc.RateLimit.read_limit:type_name -> litrpc.Rate 14, // 21: litrpc.RateLimit.write_limit:type_name -> litrpc.Rate 11, // 22: litrpc.Session.AutopilotFeatureInfoEntry.value:type_name -> litrpc.RulesMap 12, // 23: litrpc.RulesMap.RulesEntry.value:type_name -> litrpc.RuleValue 2, // 24: litrpc.Sessions.AddSession:input_type -> litrpc.AddSessionRequest 7, // 25: litrpc.Sessions.ListSessions:input_type -> litrpc.ListSessionsRequest 9, // 26: litrpc.Sessions.RevokeSession:input_type -> litrpc.RevokeSessionRequest 4, // 27: litrpc.Sessions.AddSession:output_type -> litrpc.AddSessionResponse 8, // 28: litrpc.Sessions.ListSessions:output_type -> litrpc.ListSessionsResponse 10, // 29: litrpc.Sessions.RevokeSession:output_type -> litrpc.RevokeSessionResponse 27, // [27:30] is the sub-list for method output_type 24, // [24:27] is the sub-list for method input_type 24, // [24:24] is the sub-list for extension type_name 24, // [24:24] is the sub-list for extension extendee 0, // [0:24] is the sub-list for field type_name } func init() { file_lit_sessions_proto_init() } func file_lit_sessions_proto_init() { if File_lit_sessions_proto != nil { return } file_lit_sessions_proto_msgTypes[10].OneofWrappers = []any{ (*RuleValue_RateLimit)(nil), (*RuleValue_ChanPolicyBounds)(nil), (*RuleValue_HistoryLimit)(nil), (*RuleValue_OffChainBudget)(nil), (*RuleValue_OnChainBudget)(nil), (*RuleValue_SendToSelf)(nil), (*RuleValue_ChannelRestrict)(nil), (*RuleValue_PeerRestrict)(nil), (*RuleValue_ChannelConstraint)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_lit_sessions_proto_rawDesc), len(file_lit_sessions_proto_rawDesc)), NumEnums: 2, NumMessages: 24, NumExtensions: 0, NumServices: 1, }, GoTypes: file_lit_sessions_proto_goTypes, DependencyIndexes: file_lit_sessions_proto_depIdxs, EnumInfos: file_lit_sessions_proto_enumTypes, MessageInfos: file_lit_sessions_proto_msgTypes, }.Build() File_lit_sessions_proto = out.File file_lit_sessions_proto_goTypes = nil file_lit_sessions_proto_depIdxs = nil }