| | 1 | | namespace NLightning.Domain.Node.Options; |
| | 2 | |
|
| | 3 | | using Money; |
| | 4 | |
|
| | 5 | | public class NodeOptions |
| | 6 | | { |
| | 7 | | /// <summary> |
| | 8 | | /// The network to connect to. Can be "mainnet", "testnet", or "regtest" |
| | 9 | | /// </summary> |
| 228 | 10 | | public string Network { get; set; } = "mainnet"; |
| | 11 | |
|
| | 12 | | /// <summary> |
| | 13 | | /// True if NLTG should run in Daemon mode (background) |
| | 14 | | /// </summary> |
| 0 | 15 | | public bool Daemon { get; set; } |
| | 16 | |
|
| | 17 | | /// <summary> |
| | 18 | | /// A list of dns seed servers to connect to |
| | 19 | | /// </summary> |
| 116 | 20 | | public List<string> DnsSeedServers { get; set; } = ["nlseed.nlightn.ing"]; |
| | 21 | |
|
| | 22 | | /// <summary> |
| | 23 | | /// Addresses/Interfaces to listen on for incoming connections |
| | 24 | | /// </summary> |
| | 25 | | /// <remarks> |
| | 26 | | /// Addresses should be in the format "ip:port" or "hostname:port" |
| | 27 | | /// </remarks> |
| 116 | 28 | | public List<string> ListenAddresses { get; set; } = ["127.0.0.1:9735"]; |
| | 29 | |
|
| | 30 | | /// <summary> |
| | 31 | | /// List of Features the node offers/expects to/from peers |
| | 32 | | /// </summary> |
| | 33 | | /// <see cref="FeatureOptions"/> |
| 260 | 34 | | public FeatureOptions Features { get; set; } = new(); |
| | 35 | |
|
| | 36 | | /// <summary> |
| | 37 | | /// Network timeout |
| | 38 | | /// </summary> |
| 164 | 39 | | public TimeSpan NetworkTimeout { get; set; } = TimeSpan.FromSeconds(15); |
| | 40 | |
|
| 324 | 41 | | public LightningMoney AnchorAmount { get; set; } = LightningMoney.Satoshis(330); |
| | 42 | |
|
| 100 | 43 | | public bool MustTrimHtlcOutputs { get; set; } |
| | 44 | |
|
| 240 | 45 | | public LightningMoney DustLimitAmount { get; set; } = LightningMoney.Satoshis(546); |
| | 46 | |
|
| 0 | 47 | | public ulong DefaultCltvExpiry { get; set; } |
| | 48 | |
|
| 4 | 49 | | public bool HasAnchorOutputs => !AnchorAmount.IsZero; |
| | 50 | |
|
| 0 | 51 | | public ushort MaxAcceptedHtlcs { get; set; } |
| 116 | 52 | | public LightningMoney HtlcMinimumAmount { get; set; } = LightningMoney.Satoshis(1); |
| 0 | 53 | | public uint Locktime { get; set; } |
| 0 | 54 | | public ushort ToSelfDelay { get; set; } |
| 116 | 55 | | public LightningMoney MaxHtlcValueInFlight { get; set; } = LightningMoney.Satoshis(1_000_000); |
| 116 | 56 | | public uint MinimumDepth { get; set; } = 3; |
| | 57 | | } |