@start9labs/start-sdk 0.4.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +35 -0
- package/base/lib/actions/input/builder/inputSpec.d.ts +1 -1
- package/base/lib/actions/input/inputSpecConstants.js +1 -1
- package/base/lib/actions/input/inputSpecConstants.js.map +1 -1
- package/base/lib/actions/setupActions.d.ts +14 -20
- package/base/lib/actions/setupActions.js +16 -14
- package/base/lib/actions/setupActions.js.map +1 -1
- package/base/lib/coverage/lcov-report/block-navigation.js +1 -1
- package/base/lib/coverage/lcov-report/sorter.js +21 -7
- package/base/lib/osBindings/CountEntry.d.ts +4 -0
- package/base/lib/osBindings/CountEntry.js +4 -0
- package/base/lib/osBindings/CountEntry.js.map +1 -0
- package/base/lib/osBindings/DownloadsResponse.d.ts +7 -0
- package/base/lib/osBindings/DownloadsResponse.js +3 -0
- package/base/lib/osBindings/DownloadsResponse.js.map +1 -0
- package/base/lib/osBindings/GetDownloadsParams.d.ts +18 -0
- package/base/lib/osBindings/GetDownloadsParams.js +4 -0
- package/base/lib/osBindings/GetDownloadsParams.js.map +1 -0
- package/base/lib/osBindings/GetUsersParams.d.ts +10 -0
- package/base/lib/osBindings/GetUsersParams.js +4 -0
- package/base/lib/osBindings/GetUsersParams.js.map +1 -0
- package/base/lib/osBindings/Hostname.d.ts +1 -0
- package/base/lib/osBindings/Hostname.js +4 -0
- package/base/lib/osBindings/Hostname.js.map +1 -0
- package/base/lib/osBindings/MetricsSummary.d.ts +8 -0
- package/base/lib/osBindings/MetricsSummary.js +3 -0
- package/base/lib/osBindings/MetricsSummary.js.map +1 -0
- package/base/lib/osBindings/PackageVersionCount.d.ts +5 -0
- package/base/lib/osBindings/PackageVersionCount.js +4 -0
- package/base/lib/osBindings/PackageVersionCount.js.map +1 -0
- package/base/lib/osBindings/ServerInfo.d.ts +0 -2
- package/base/lib/osBindings/UsersResponse.d.ts +4 -0
- package/base/lib/osBindings/UsersResponse.js +4 -0
- package/base/lib/osBindings/UsersResponse.js.map +1 -0
- package/base/lib/osBindings/index.d.ts +7 -0
- package/base/lib/osBindings/index.js.map +1 -1
- package/base/lib/util/Drop.d.ts +1 -0
- package/base/lib/util/Drop.js +3 -1
- package/base/lib/util/Drop.js.map +1 -1
- package/package/lib/StartSdk.d.ts +35 -15
- package/package/lib/StartSdk.js +30 -10
- package/package/lib/StartSdk.js.map +1 -1
- package/package/lib/health/checkFns/HealthCheckResult.d.ts +11 -3
- package/package/lib/health/checkFns/checkPortListening.d.ts +12 -2
- package/package/lib/health/checkFns/checkPortListening.js +12 -2
- package/package/lib/health/checkFns/checkPortListening.js.map +1 -1
- package/package/lib/health/checkFns/checkWebUrl.d.ts +10 -4
- package/package/lib/health/checkFns/checkWebUrl.js +10 -4
- package/package/lib/health/checkFns/checkWebUrl.js.map +1 -1
- package/package/lib/health/checkFns/runHealthScript.d.ts +11 -5
- package/package/lib/health/checkFns/runHealthScript.js +11 -5
- package/package/lib/health/checkFns/runHealthScript.js.map +1 -1
- package/package/lib/mainFn/Daemons.d.ts +114 -34
- package/package/lib/mainFn/Daemons.js +9 -4
- package/package/lib/mainFn/Daemons.js.map +1 -1
- package/package/lib/test/output.d.ts +158 -0
- package/package/lib/test/output.js +446 -0
- package/package/lib/test/output.js.map +1 -0
- package/package/lib/test/output.sdk.d.ts +78 -698
- package/package/lib/trigger/TriggerInput.d.ts +7 -0
- package/package/lib/trigger/cooldownTrigger.d.ts +15 -0
- package/package/lib/trigger/cooldownTrigger.js +15 -0
- package/package/lib/trigger/cooldownTrigger.js.map +1 -1
- package/package/lib/trigger/defaultTrigger.d.ts +6 -0
- package/package/lib/trigger/defaultTrigger.js +11 -5
- package/package/lib/trigger/defaultTrigger.js.map +1 -1
- package/package/lib/trigger/index.d.ts +12 -1
- package/package/lib/trigger/index.js +3 -3
- package/package/lib/trigger/index.js.map +1 -1
- package/package/lib/trigger/statusTrigger.d.ts +24 -0
- package/package/lib/trigger/statusTrigger.js +33 -0
- package/package/lib/trigger/statusTrigger.js.map +1 -0
- package/package/lib/util/SubContainer.js +1 -1
- package/package/lib/util/SubContainer.js.map +1 -1
- package/package/lib/util/fileHelper.d.ts +28 -87
- package/package/lib/util/fileHelper.js +43 -87
- package/package/lib/util/fileHelper.js.map +1 -1
- package/package/lib/version/VersionInfo.d.ts +13 -11
- package/package/lib/version/VersionInfo.js +17 -25
- package/package/lib/version/VersionInfo.js.map +1 -1
- package/package/package.json +14 -14
- package/package.json +14 -14
|
@@ -15,48 +15,99 @@ export declare const cpExecFile: typeof CP.execFile.__promisify__;
|
|
|
15
15
|
/**
|
|
16
16
|
* Configuration for a daemon's health-check readiness probe.
|
|
17
17
|
*
|
|
18
|
-
*
|
|
18
|
+
* Every daemon and standalone health check requires a `Ready` configuration
|
|
19
|
+
* that tells StartOS how to determine whether the daemon is healthy.
|
|
20
|
+
*
|
|
21
|
+
* The `fn` is called on a recurring interval controlled by `trigger` (defaults
|
|
22
|
+
* to 1 s before the first non-pending result, then 30 s). During the initial
|
|
23
|
+
* `gracePeriod` window, `failure` results are softened to `starting` so the
|
|
24
|
+
* UI doesn't flash red while a daemon is still booting.
|
|
25
|
+
*
|
|
26
|
+
* ### Health check result states
|
|
27
|
+
*
|
|
28
|
+
* | Result | Meaning | UI treatment |
|
|
29
|
+
* |-------------|------------------------------------------------------|------------------|
|
|
30
|
+
* | `success` | Healthy and fully operational | Green / ready |
|
|
31
|
+
* | `loading` | Operational but still catching up (e.g. syncing) | Progress / amber |
|
|
32
|
+
* | `disabled` | Intentionally inactive (excluded by configuration) | Grey / skipped |
|
|
33
|
+
* | `starting` | Not yet ready, still initializing | Spinner |
|
|
34
|
+
* | `waiting` | Blocked on an external dependency | Spinner |
|
|
35
|
+
* | `failure` | Unhealthy — something is wrong | Red / error |
|
|
19
36
|
*/
|
|
20
37
|
export type Ready = {
|
|
21
|
-
/**
|
|
38
|
+
/**
|
|
39
|
+
* Human-readable label shown in the StartOS health-check UI.
|
|
40
|
+
* Set to `null` to hide this check from the UI entirely.
|
|
41
|
+
*/
|
|
22
42
|
display: string | null;
|
|
23
43
|
/**
|
|
24
|
-
*
|
|
44
|
+
* The function called on each polling interval to determine the daemon's health.
|
|
45
|
+
*
|
|
46
|
+
* Return a {@link HealthCheckResult} with a `result` field (`success`, `loading`,
|
|
47
|
+
* `failure`, etc.) and an optional `message` string shown in the UI.
|
|
25
48
|
*
|
|
26
|
-
*
|
|
49
|
+
* The SDK ships several built-in helpers on `sdk.healthCheck`:
|
|
50
|
+
* - `checkPortListening` — checks whether a TCP/UDP port is bound
|
|
51
|
+
* - `checkWebUrl` — fetches a URL and succeeds on any HTTP response
|
|
52
|
+
* - `runHealthScript` — runs a command in a subcontainer and succeeds on exit 0
|
|
27
53
|
*
|
|
28
54
|
* @example
|
|
55
|
+
* ```ts
|
|
56
|
+
* fn: () =>
|
|
57
|
+
* sdk.healthCheck.checkPortListening(effects, 80, {
|
|
58
|
+
* successMessage: 'Web server is ready',
|
|
59
|
+
* errorMessage: 'Web server is not listening',
|
|
60
|
+
* })
|
|
29
61
|
* ```
|
|
30
|
-
|
|
31
|
-
sdk.healthCheck.checkPortListening(effects, 80, {
|
|
32
|
-
successMessage: 'service listening on port 80',
|
|
33
|
-
errorMessage: 'service is unreachable',
|
|
34
|
-
})
|
|
35
|
-
* ```
|
|
36
|
-
*/
|
|
62
|
+
*/
|
|
37
63
|
fn: () => Promise<HealthCheckResult> | HealthCheckResult;
|
|
38
64
|
/**
|
|
39
|
-
*
|
|
65
|
+
* Duration in milliseconds during which `failure` results are reported
|
|
66
|
+
* as `starting` instead, giving the daemon time to initialize without
|
|
67
|
+
* showing errors in the UI.
|
|
40
68
|
*
|
|
41
|
-
*
|
|
69
|
+
* @default 10_000
|
|
42
70
|
*/
|
|
43
71
|
gracePeriod?: number;
|
|
72
|
+
/**
|
|
73
|
+
* Controls the polling interval for this health check.
|
|
74
|
+
*
|
|
75
|
+
* Use one of the built-in triggers from `sdk.trigger`:
|
|
76
|
+
* - `cooldownTrigger(ms)` — fixed interval between checks
|
|
77
|
+
* - `statusTrigger({ success, loading, failure, ... })` — per-status
|
|
78
|
+
* polling intervals
|
|
79
|
+
*
|
|
80
|
+
* If omitted, uses the default trigger: 1 s before the first non-pending
|
|
81
|
+
* result, then 30 s afterward.
|
|
82
|
+
*/
|
|
44
83
|
trigger?: Trigger;
|
|
45
84
|
};
|
|
46
85
|
/**
|
|
47
86
|
* Options for running a daemon as a shell command inside a subcontainer.
|
|
48
|
-
* Includes the command to run, optional signal/timeout, environment, user, and stdio callbacks.
|
|
49
87
|
*/
|
|
50
88
|
export type ExecCommandOptions = {
|
|
89
|
+
/** The command and arguments to execute (e.g. `['bitcoind', '-conf=/etc/bitcoin.conf']`) */
|
|
51
90
|
command: T.CommandType;
|
|
91
|
+
/**
|
|
92
|
+
* How long (ms) to wait for the process to exit after sending SIGTERM
|
|
93
|
+
* before force-killing it.
|
|
94
|
+
*
|
|
95
|
+
* @default 30_000
|
|
96
|
+
*/
|
|
52
97
|
sigtermTimeout?: number;
|
|
98
|
+
/** Run the command as PID 1 inside the container (init process) */
|
|
53
99
|
runAsInit?: boolean;
|
|
100
|
+
/** Environment variables to set for the process */
|
|
54
101
|
env?: {
|
|
55
102
|
[variable in string]?: string;
|
|
56
103
|
} | undefined;
|
|
104
|
+
/** Working directory for the process */
|
|
57
105
|
cwd?: string | undefined;
|
|
106
|
+
/** Run the process as this user inside the container */
|
|
58
107
|
user?: string | undefined;
|
|
108
|
+
/** Callback invoked with each chunk written to stdout */
|
|
59
109
|
onStdout?: (chunk: Buffer | string | any) => void;
|
|
110
|
+
/** Callback invoked with each chunk written to stderr */
|
|
60
111
|
onStderr?: (chunk: Buffer | string | any) => void;
|
|
61
112
|
};
|
|
62
113
|
/**
|
|
@@ -85,17 +136,26 @@ type AddDaemonParams<Manifest extends T.SDKManifest, Ids extends string, Id exte
|
|
|
85
136
|
daemon: Daemon<Manifest>;
|
|
86
137
|
}) & {
|
|
87
138
|
ready: Ready;
|
|
88
|
-
/**
|
|
139
|
+
/**
|
|
140
|
+
* IDs of prior daemons/oneshots/health checks that must be ready before
|
|
141
|
+
* this daemon starts. Enforces startup ordering in the daemon chain.
|
|
142
|
+
*/
|
|
89
143
|
requires: Exclude<Ids, Id>[];
|
|
90
144
|
};
|
|
91
145
|
type AddOneshotParams<Manifest extends T.SDKManifest, Ids extends string, Id extends string, C extends SubContainer<Manifest> | null> = NewDaemonParams<Manifest, C> & {
|
|
92
146
|
exec: DaemonCommandType<Manifest, C>;
|
|
93
|
-
/**
|
|
147
|
+
/**
|
|
148
|
+
* IDs of prior daemons/oneshots/health checks that must be ready before
|
|
149
|
+
* this oneshot runs.
|
|
150
|
+
*/
|
|
94
151
|
requires: Exclude<Ids, Id>[];
|
|
95
152
|
};
|
|
96
153
|
type AddHealthCheckParams<Ids extends string, Id extends string> = {
|
|
97
154
|
ready: Ready;
|
|
98
|
-
/**
|
|
155
|
+
/**
|
|
156
|
+
* IDs of prior daemons/oneshots/health checks that must be ready before
|
|
157
|
+
* this health check starts polling.
|
|
158
|
+
*/
|
|
99
159
|
requires: Exclude<Ids, Id>[];
|
|
100
160
|
};
|
|
101
161
|
type ErrorDuplicateId<Id extends string> = `The id '${Id}' is already used`;
|
|
@@ -147,35 +207,55 @@ export declare class Daemons<Manifest extends T.SDKManifest, Ids extends string>
|
|
|
147
207
|
}): Daemons<Manifest, never>;
|
|
148
208
|
private addDaemonImpl;
|
|
149
209
|
/**
|
|
150
|
-
*
|
|
151
|
-
*
|
|
152
|
-
*
|
|
153
|
-
*
|
|
210
|
+
* Register a long-running daemon process.
|
|
211
|
+
*
|
|
212
|
+
* The daemon starts in its subcontainer and is monitored by its `ready`
|
|
213
|
+
* health check. Other daemons and health checks can depend on it via
|
|
214
|
+
* `requires`.
|
|
215
|
+
*
|
|
216
|
+
* Pass a static options object, a sync/async factory that returns options
|
|
217
|
+
* (or `null` to conditionally skip the daemon), or an object with a
|
|
218
|
+
* pre-built `daemon` instance.
|
|
219
|
+
*
|
|
220
|
+
* @param id - Unique string identifier for this daemon
|
|
221
|
+
* @param options - Daemon configuration, or a factory returning it (return `null` to skip)
|
|
154
222
|
*/
|
|
155
223
|
addDaemon<Id extends string, C extends SubContainer<Manifest> | null>(id: "" extends Id ? never : ErrorDuplicateId<Id> extends Id ? never : Id extends Ids ? ErrorDuplicateId<Id> : Id, options: OptionalParamSync<AddDaemonParams<Manifest, Ids, Id, C>>): Daemons<Manifest, Ids | Id>;
|
|
156
224
|
addDaemon<Id extends string, C extends SubContainer<Manifest> | null>(id: "" extends Id ? never : ErrorDuplicateId<Id> extends Id ? never : Id extends Ids ? ErrorDuplicateId<Id> : Id, options: OptionalParamAsync<AddDaemonParams<Manifest, Ids, Id, C>>): Promise<Daemons<Manifest, Ids | Id>>;
|
|
157
225
|
/**
|
|
158
|
-
*
|
|
159
|
-
*
|
|
160
|
-
*
|
|
161
|
-
*
|
|
162
|
-
*
|
|
226
|
+
* Register a one-shot command that runs to completion before dependents start.
|
|
227
|
+
*
|
|
228
|
+
* Common uses: `chown` for file ownership, database migrations, config
|
|
229
|
+
* generation, wallet unlocking. The oneshot is considered "ready" as soon
|
|
230
|
+
* as the command exits successfully (exit code 0).
|
|
231
|
+
*
|
|
232
|
+
* @param id - Unique string identifier for this oneshot
|
|
233
|
+
* @param options - Oneshot configuration, or a factory returning it (return `null` to skip)
|
|
163
234
|
*/
|
|
164
235
|
addOneshot<Id extends string, C extends SubContainer<Manifest> | null>(id: "" extends Id ? never : ErrorDuplicateId<Id> extends Id ? never : Id extends Ids ? ErrorDuplicateId<Id> : Id, options: OptionalParamSync<AddOneshotParams<Manifest, Ids, Id, C>>): Daemons<Manifest, Ids | Id>;
|
|
165
236
|
addOneshot<Id extends string, C extends SubContainer<Manifest> | null>(id: "" extends Id ? never : ErrorDuplicateId<Id> extends Id ? never : Id extends Ids ? ErrorDuplicateId<Id> : Id, options: OptionalParamAsync<AddOneshotParams<Manifest, Ids, Id, C>>): Promise<Daemons<Manifest, Ids | Id>>;
|
|
166
237
|
/**
|
|
167
|
-
*
|
|
168
|
-
*
|
|
169
|
-
*
|
|
170
|
-
*
|
|
238
|
+
* Register a standalone health check with no associated process.
|
|
239
|
+
*
|
|
240
|
+
* Use this for ongoing conditions that don't map to a single daemon, such
|
|
241
|
+
* as blockchain sync progress or network reachability. Dependent services
|
|
242
|
+
* can reference standalone health check IDs in their dependency config.
|
|
243
|
+
*
|
|
244
|
+
* @param id - Unique string identifier for this health check
|
|
245
|
+
* @param options - Health check configuration, or a factory returning it (return `null` to skip)
|
|
171
246
|
*/
|
|
172
247
|
addHealthCheck<Id extends string>(id: "" extends Id ? never : ErrorDuplicateId<Id> extends Id ? never : Id extends Ids ? ErrorDuplicateId<Id> : Id, options: OptionalParamSync<AddHealthCheckParams<Ids, Id>>): Daemons<Manifest, Ids | Id>;
|
|
173
248
|
addHealthCheck<Id extends string>(id: "" extends Id ? never : ErrorDuplicateId<Id> extends Id ? never : Id extends Ids ? ErrorDuplicateId<Id> : Id, options: OptionalParamAsync<AddHealthCheckParams<Ids, Id>>): Promise<Daemons<Manifest, Ids | Id>>;
|
|
174
249
|
/**
|
|
175
|
-
*
|
|
176
|
-
*
|
|
177
|
-
*
|
|
178
|
-
*
|
|
250
|
+
* Start all registered daemons and wait until every one passes its ready
|
|
251
|
+
* check, then tear everything down.
|
|
252
|
+
*
|
|
253
|
+
* Used for bootstrapping via a temporary daemon chain — e.g. starting a
|
|
254
|
+
* service to call its API (create admin users, register apps), then
|
|
255
|
+
* shutting it down before the real daemon chain starts.
|
|
256
|
+
*
|
|
257
|
+
* @param timeout - Maximum time (ms) to wait for all daemons to become ready, or `null` for no limit
|
|
258
|
+
* @throws If the timeout is reached before all daemons are ready
|
|
179
259
|
*/
|
|
180
260
|
runUntilSuccess(timeout: number | null): Promise<null>;
|
|
181
261
|
/**
|
|
@@ -158,10 +158,15 @@ class Daemons {
|
|
|
158
158
|
return res(options);
|
|
159
159
|
}
|
|
160
160
|
/**
|
|
161
|
-
*
|
|
162
|
-
*
|
|
163
|
-
*
|
|
164
|
-
*
|
|
161
|
+
* Start all registered daemons and wait until every one passes its ready
|
|
162
|
+
* check, then tear everything down.
|
|
163
|
+
*
|
|
164
|
+
* Used for bootstrapping via a temporary daemon chain — e.g. starting a
|
|
165
|
+
* service to call its API (create admin users, register apps), then
|
|
166
|
+
* shutting it down before the real daemon chain starts.
|
|
167
|
+
*
|
|
168
|
+
* @param timeout - Maximum time (ms) to wait for all daemons to become ready, or `null` for no limit
|
|
169
|
+
* @throws If the timeout is reached before all daemons are ready
|
|
165
170
|
*/
|
|
166
171
|
async runUntilSuccess(timeout) {
|
|
167
172
|
let resolve = (_) => { };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Daemons.js","sourceRoot":"","sources":["../../../../package/lib/mainFn/Daemons.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,yCAAqC;AACrC,uDAAwC;AAExC,mCAAiC;AAAxB,gGAAA,MAAM,OAAA;AACf,yDAAuD;AAA9C,sHAAA,iBAAiB,OAAA;AAC1B,iDAA2D;AAC3D,qCAAiC;AACjC,2DAAuD;AACvD,uCAAmC;AAEnC,kDAAkD;AACrC,QAAA,MAAM,GAAG,IAAA,qBAAS,EAAC,EAAE,CAAC,IAAI,CAAC,CAAA;AACxC,sDAAsD;AACzC,QAAA,UAAU,GAAG,IAAA,qBAAS,EAAC,EAAE,CAAC,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"Daemons.js","sourceRoot":"","sources":["../../../../package/lib/mainFn/Daemons.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
export declare const inputSpecSpec: import("../../../base/lib/actions/input/builder").InputSpec<{
|
|
2
|
+
mediasources: ("nextcloud" | "filebrowser")[];
|
|
3
|
+
testListUnion: {
|
|
4
|
+
union: {
|
|
5
|
+
selection: "lnd";
|
|
6
|
+
value: {
|
|
7
|
+
name: string;
|
|
8
|
+
};
|
|
9
|
+
other?: {} | undefined;
|
|
10
|
+
};
|
|
11
|
+
}[];
|
|
12
|
+
rpc: {
|
|
13
|
+
enable: boolean;
|
|
14
|
+
username: string;
|
|
15
|
+
password: string;
|
|
16
|
+
bio: string;
|
|
17
|
+
advanced: {
|
|
18
|
+
auth: string[];
|
|
19
|
+
serialversion: "segwit" | "non-segwit";
|
|
20
|
+
servertimeout: number;
|
|
21
|
+
threads: number;
|
|
22
|
+
workqueue: number;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
'zmq-enabled': boolean;
|
|
26
|
+
txindex: boolean;
|
|
27
|
+
wallet: {
|
|
28
|
+
enable: boolean;
|
|
29
|
+
avoidpartialspends: boolean;
|
|
30
|
+
discardfee: number;
|
|
31
|
+
};
|
|
32
|
+
advanced: {
|
|
33
|
+
mempool: {
|
|
34
|
+
mempoolfullrbf: boolean;
|
|
35
|
+
persistmempool: boolean;
|
|
36
|
+
maxmempool: number;
|
|
37
|
+
mempoolexpiry: number;
|
|
38
|
+
};
|
|
39
|
+
peers: {
|
|
40
|
+
listen: boolean;
|
|
41
|
+
onlyconnect: boolean;
|
|
42
|
+
onlyonion: boolean;
|
|
43
|
+
addnode: {
|
|
44
|
+
hostname: string | null;
|
|
45
|
+
port: number | null;
|
|
46
|
+
}[];
|
|
47
|
+
};
|
|
48
|
+
dbcache: number | null;
|
|
49
|
+
pruning: import("../../../base/lib/actions/input/builder/variants").UnionRes<{
|
|
50
|
+
disabled: {
|
|
51
|
+
name: string;
|
|
52
|
+
spec: import("../../../base/lib/actions/input/builder").InputSpec<{}, {}>;
|
|
53
|
+
};
|
|
54
|
+
automatic: {
|
|
55
|
+
name: string;
|
|
56
|
+
spec: import("../../../base/lib/actions/input/builder").InputSpec<{
|
|
57
|
+
size: number;
|
|
58
|
+
}, {
|
|
59
|
+
size: number;
|
|
60
|
+
}>;
|
|
61
|
+
};
|
|
62
|
+
manual: {
|
|
63
|
+
name: string;
|
|
64
|
+
spec: import("../../../base/lib/actions/input/builder").InputSpec<{
|
|
65
|
+
size: number;
|
|
66
|
+
}, {
|
|
67
|
+
size: number;
|
|
68
|
+
}>;
|
|
69
|
+
};
|
|
70
|
+
}, "disabled" | "automatic" | "manual">;
|
|
71
|
+
blockfilters: {
|
|
72
|
+
blockfilterindex: boolean;
|
|
73
|
+
peerblockfilters: boolean;
|
|
74
|
+
};
|
|
75
|
+
bloomfilters: {
|
|
76
|
+
peerbloomfilters: boolean;
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
}, {
|
|
80
|
+
mediasources: ("nextcloud" | "filebrowser")[];
|
|
81
|
+
testListUnion: {
|
|
82
|
+
union: {
|
|
83
|
+
selection: "lnd";
|
|
84
|
+
value: {
|
|
85
|
+
name: string;
|
|
86
|
+
};
|
|
87
|
+
other?: {} | undefined;
|
|
88
|
+
};
|
|
89
|
+
}[];
|
|
90
|
+
rpc: {
|
|
91
|
+
enable: boolean;
|
|
92
|
+
username: string;
|
|
93
|
+
password: string;
|
|
94
|
+
bio: string;
|
|
95
|
+
advanced: {
|
|
96
|
+
auth: string[];
|
|
97
|
+
serialversion: "segwit" | "non-segwit";
|
|
98
|
+
servertimeout: number;
|
|
99
|
+
threads: number;
|
|
100
|
+
workqueue: number;
|
|
101
|
+
};
|
|
102
|
+
};
|
|
103
|
+
'zmq-enabled': boolean;
|
|
104
|
+
txindex: boolean;
|
|
105
|
+
wallet: {
|
|
106
|
+
enable: boolean;
|
|
107
|
+
avoidpartialspends: boolean;
|
|
108
|
+
discardfee: number;
|
|
109
|
+
};
|
|
110
|
+
advanced: {
|
|
111
|
+
mempool: {
|
|
112
|
+
mempoolfullrbf: boolean;
|
|
113
|
+
persistmempool: boolean;
|
|
114
|
+
maxmempool: number;
|
|
115
|
+
mempoolexpiry: number;
|
|
116
|
+
};
|
|
117
|
+
peers: {
|
|
118
|
+
listen: boolean;
|
|
119
|
+
onlyconnect: boolean;
|
|
120
|
+
onlyonion: boolean;
|
|
121
|
+
addnode: {
|
|
122
|
+
hostname: string | null;
|
|
123
|
+
port: number | null;
|
|
124
|
+
}[];
|
|
125
|
+
};
|
|
126
|
+
dbcache: number | null;
|
|
127
|
+
pruning: import("../../../base/lib/actions/input/builder/variants").UnionResStaticValidatedAs<{
|
|
128
|
+
disabled: {
|
|
129
|
+
name: string;
|
|
130
|
+
spec: import("../../../base/lib/actions/input/builder").InputSpec<{}, {}>;
|
|
131
|
+
};
|
|
132
|
+
automatic: {
|
|
133
|
+
name: string;
|
|
134
|
+
spec: import("../../../base/lib/actions/input/builder").InputSpec<{
|
|
135
|
+
size: number;
|
|
136
|
+
}, {
|
|
137
|
+
size: number;
|
|
138
|
+
}>;
|
|
139
|
+
};
|
|
140
|
+
manual: {
|
|
141
|
+
name: string;
|
|
142
|
+
spec: import("../../../base/lib/actions/input/builder").InputSpec<{
|
|
143
|
+
size: number;
|
|
144
|
+
}, {
|
|
145
|
+
size: number;
|
|
146
|
+
}>;
|
|
147
|
+
};
|
|
148
|
+
}, "disabled" | "automatic" | "manual">;
|
|
149
|
+
blockfilters: {
|
|
150
|
+
blockfilterindex: boolean;
|
|
151
|
+
peerblockfilters: boolean;
|
|
152
|
+
};
|
|
153
|
+
bloomfilters: {
|
|
154
|
+
peerbloomfilters: boolean;
|
|
155
|
+
};
|
|
156
|
+
};
|
|
157
|
+
}>;
|
|
158
|
+
export type InputSpecSpec = typeof inputSpecSpec._TYPE;
|