llng-mcp 0.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.
Files changed (114) hide show
  1. package/.github/workflows/ci.yml +77 -0
  2. package/.prettierrc +7 -0
  3. package/LICENSE +661 -0
  4. package/README.md +502 -0
  5. package/dist/__tests__/api-transport.test.d.ts +1 -0
  6. package/dist/__tests__/api-transport.test.js +577 -0
  7. package/dist/__tests__/api-transport.test.js.map +1 -0
  8. package/dist/__tests__/config.test.d.ts +1 -0
  9. package/dist/__tests__/config.test.js +472 -0
  10. package/dist/__tests__/config.test.js.map +1 -0
  11. package/dist/__tests__/integration/api-mode.test.d.ts +1 -0
  12. package/dist/__tests__/integration/api-mode.test.js +199 -0
  13. package/dist/__tests__/integration/api-mode.test.js.map +1 -0
  14. package/dist/__tests__/integration/oidc-rp.test.d.ts +1 -0
  15. package/dist/__tests__/integration/oidc-rp.test.js +120 -0
  16. package/dist/__tests__/integration/oidc-rp.test.js.map +1 -0
  17. package/dist/__tests__/integration/ssh-mode.test.d.ts +1 -0
  18. package/dist/__tests__/integration/ssh-mode.test.js +101 -0
  19. package/dist/__tests__/integration/ssh-mode.test.js.map +1 -0
  20. package/dist/__tests__/k8s-transport.test.d.ts +1 -0
  21. package/dist/__tests__/k8s-transport.test.js +254 -0
  22. package/dist/__tests__/k8s-transport.test.js.map +1 -0
  23. package/dist/__tests__/oidc-tools.test.d.ts +1 -0
  24. package/dist/__tests__/oidc-tools.test.js +457 -0
  25. package/dist/__tests__/oidc-tools.test.js.map +1 -0
  26. package/dist/__tests__/registry.test.d.ts +1 -0
  27. package/dist/__tests__/registry.test.js +96 -0
  28. package/dist/__tests__/registry.test.js.map +1 -0
  29. package/dist/__tests__/ssh-transport.test.d.ts +1 -0
  30. package/dist/__tests__/ssh-transport.test.js +618 -0
  31. package/dist/__tests__/ssh-transport.test.js.map +1 -0
  32. package/dist/__tests__/tools.test.d.ts +1 -0
  33. package/dist/__tests__/tools.test.js +525 -0
  34. package/dist/__tests__/tools.test.js.map +1 -0
  35. package/dist/config.d.ts +65 -0
  36. package/dist/config.js +506 -0
  37. package/dist/config.js.map +1 -0
  38. package/dist/index.d.ts +2 -0
  39. package/dist/index.js +42 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/resources/documentation.d.ts +5 -0
  42. package/dist/resources/documentation.js +56 -0
  43. package/dist/resources/documentation.js.map +1 -0
  44. package/dist/tools/cli-utilities.d.ts +3 -0
  45. package/dist/tools/cli-utilities.js +187 -0
  46. package/dist/tools/cli-utilities.js.map +1 -0
  47. package/dist/tools/config.d.ts +6 -0
  48. package/dist/tools/config.js +326 -0
  49. package/dist/tools/config.js.map +1 -0
  50. package/dist/tools/consents.d.ts +3 -0
  51. package/dist/tools/consents.js +39 -0
  52. package/dist/tools/consents.js.map +1 -0
  53. package/dist/tools/instances.d.ts +3 -0
  54. package/dist/tools/instances.js +14 -0
  55. package/dist/tools/instances.js.map +1 -0
  56. package/dist/tools/oidc-rp.d.ts +6 -0
  57. package/dist/tools/oidc-rp.js +246 -0
  58. package/dist/tools/oidc-rp.js.map +1 -0
  59. package/dist/tools/oidc.d.ts +3 -0
  60. package/dist/tools/oidc.js +343 -0
  61. package/dist/tools/oidc.js.map +1 -0
  62. package/dist/tools/secondfactors.d.ts +3 -0
  63. package/dist/tools/secondfactors.js +62 -0
  64. package/dist/tools/secondfactors.js.map +1 -0
  65. package/dist/tools/sessions.d.ts +6 -0
  66. package/dist/tools/sessions.js +300 -0
  67. package/dist/tools/sessions.js.map +1 -0
  68. package/dist/transport/api.d.ts +35 -0
  69. package/dist/transport/api.js +327 -0
  70. package/dist/transport/api.js.map +1 -0
  71. package/dist/transport/interface.d.ts +50 -0
  72. package/dist/transport/interface.js +2 -0
  73. package/dist/transport/interface.js.map +1 -0
  74. package/dist/transport/k8s.d.ts +41 -0
  75. package/dist/transport/k8s.js +303 -0
  76. package/dist/transport/k8s.js.map +1 -0
  77. package/dist/transport/registry.d.ts +20 -0
  78. package/dist/transport/registry.js +91 -0
  79. package/dist/transport/registry.js.map +1 -0
  80. package/dist/transport/ssh.d.ts +37 -0
  81. package/dist/transport/ssh.js +353 -0
  82. package/dist/transport/ssh.js.map +1 -0
  83. package/docker-compose.test.yml +16 -0
  84. package/eslint.config.js +21 -0
  85. package/package.json +38 -0
  86. package/src/__tests__/api-transport.test.ts +746 -0
  87. package/src/__tests__/config.test.ts +587 -0
  88. package/src/__tests__/integration/api-mode.test.ts +229 -0
  89. package/src/__tests__/integration/oidc-rp.test.ts +138 -0
  90. package/src/__tests__/integration/ssh-mode.test.ts +113 -0
  91. package/src/__tests__/k8s-transport.test.ts +342 -0
  92. package/src/__tests__/oidc-tools.test.ts +554 -0
  93. package/src/__tests__/registry.test.ts +110 -0
  94. package/src/__tests__/ssh-transport.test.ts +805 -0
  95. package/src/__tests__/tools.test.ts +735 -0
  96. package/src/config.ts +605 -0
  97. package/src/index.ts +48 -0
  98. package/src/resources/documentation.ts +65 -0
  99. package/src/tools/cli-utilities.ts +207 -0
  100. package/src/tools/config.ts +382 -0
  101. package/src/tools/consents.ts +50 -0
  102. package/src/tools/instances.ts +21 -0
  103. package/src/tools/oidc-rp.ts +299 -0
  104. package/src/tools/oidc.ts +434 -0
  105. package/src/tools/secondfactors.ts +78 -0
  106. package/src/tools/sessions.ts +342 -0
  107. package/src/transport/api.ts +429 -0
  108. package/src/transport/interface.ts +58 -0
  109. package/src/transport/k8s.ts +367 -0
  110. package/src/transport/registry.ts +105 -0
  111. package/src/transport/ssh.ts +430 -0
  112. package/tsconfig.json +16 -0
  113. package/vitest.config.ts +8 -0
  114. package/vitest.integration.config.ts +9 -0
@@ -0,0 +1,327 @@
1
+ import https from "https";
2
+ export class ApiTransport {
3
+ baseUrl;
4
+ basicAuth;
5
+ verifySsl;
6
+ agent;
7
+ constructor(config) {
8
+ // Strip trailing slash
9
+ this.baseUrl = config.baseUrl.replace(/\/$/, "");
10
+ this.basicAuth = config.basicAuth;
11
+ this.verifySsl = config.verifySsl !== false;
12
+ // Create agent for SSL verification control
13
+ if (!this.verifySsl) {
14
+ console.error("WARNING: SSL certificate verification is disabled. This makes the connection vulnerable to man-in-the-middle attacks. Do not use in production.");
15
+ this.agent = new https.Agent({
16
+ rejectUnauthorized: false,
17
+ });
18
+ }
19
+ }
20
+ async request(method, path, body) {
21
+ const url = `${this.baseUrl}${path}`;
22
+ const headers = {
23
+ "Content-Type": "application/json",
24
+ };
25
+ // Add Basic Auth if configured
26
+ if (this.basicAuth) {
27
+ const credentials = Buffer.from(`${this.basicAuth.username}:${this.basicAuth.password}`).toString("base64");
28
+ headers["Authorization"] = `Basic ${credentials}`;
29
+ }
30
+ const options = {
31
+ method,
32
+ headers,
33
+ // @ts-expect-error - agent is valid for https URLs
34
+ agent: this.agent,
35
+ };
36
+ if (body && method !== "GET") {
37
+ options.body = JSON.stringify(body);
38
+ }
39
+ try {
40
+ const response = await fetch(url, options);
41
+ if (!response.ok) {
42
+ throw new Error(`HTTP ${response.status} ${response.statusText}`);
43
+ }
44
+ // Handle empty responses
45
+ const contentType = response.headers.get("content-type");
46
+ if (contentType && contentType.includes("application/json")) {
47
+ return await response.json();
48
+ }
49
+ else {
50
+ const text = await response.text();
51
+ if (!text) {
52
+ return {};
53
+ }
54
+ try {
55
+ return JSON.parse(text);
56
+ }
57
+ catch {
58
+ return text;
59
+ }
60
+ }
61
+ }
62
+ catch (error) {
63
+ if (error instanceof Error) {
64
+ throw new Error(`API request failed: ${error.message}`);
65
+ }
66
+ throw error;
67
+ }
68
+ }
69
+ async configInfo() {
70
+ const data = await this.request("GET", "/api/v1/config/latest");
71
+ return {
72
+ cfgNum: data.cfgNum,
73
+ cfgAuthor: data.cfgAuthor,
74
+ cfgDate: data.cfgDate,
75
+ cfgLog: data.cfgLog,
76
+ };
77
+ }
78
+ async configGet(keys) {
79
+ const config = await this.request("GET", "/api/v1/config/latest");
80
+ const result = {};
81
+ for (const key of keys) {
82
+ if (key in config) {
83
+ result[key] = config[key];
84
+ }
85
+ }
86
+ return result;
87
+ }
88
+ async configSet(pairs, log) {
89
+ // Get current config
90
+ const currentConfig = await this.request("GET", "/api/v1/config/latest");
91
+ // Merge changes
92
+ const updatedConfig = { ...currentConfig, ...pairs };
93
+ // Add log if provided
94
+ if (log) {
95
+ updatedConfig.cfgLog = log;
96
+ }
97
+ // Save config
98
+ await this.request("PUT", "/api/v1/config", updatedConfig);
99
+ }
100
+ async configAddKey(key, subkey, value) {
101
+ // Get current config
102
+ const config = await this.request("GET", "/api/v1/config/latest");
103
+ // Initialize the key if it doesn't exist
104
+ if (!config[key]) {
105
+ config[key] = {};
106
+ }
107
+ // Add the subkey
108
+ config[key][subkey] = value;
109
+ // Save config
110
+ await this.request("PUT", "/api/v1/config", config);
111
+ }
112
+ async configDelKey(key, subkey) {
113
+ // Get current config
114
+ const config = await this.request("GET", "/api/v1/config/latest");
115
+ // Remove the subkey if it exists
116
+ if (config[key] && subkey in config[key]) {
117
+ delete config[key][subkey];
118
+ // Save config
119
+ await this.request("PUT", "/api/v1/config", config);
120
+ }
121
+ }
122
+ async configSave() {
123
+ const config = await this.request("GET", "/api/v1/config/latest");
124
+ return JSON.stringify(config, null, 2);
125
+ }
126
+ async configRestore(json) {
127
+ const config = JSON.parse(json);
128
+ await this.request("PUT", "/api/v1/config", config);
129
+ }
130
+ async configMerge(json) {
131
+ const snippet = JSON.parse(json);
132
+ const currentConfig = await this.request("GET", "/api/v1/config/latest");
133
+ // Deep merge
134
+ const merged = this.deepMerge(currentConfig, snippet);
135
+ await this.request("PUT", "/api/v1/config", merged);
136
+ }
137
+ deepMerge(target, source) {
138
+ const result = { ...target };
139
+ for (const key in source) {
140
+ if (key === "__proto__" || key === "constructor" || key === "prototype")
141
+ continue;
142
+ const value = source[key];
143
+ if (value !== null && value instanceof Object && !Array.isArray(value)) {
144
+ result[key] = this.deepMerge(result[key] || {}, value);
145
+ }
146
+ else {
147
+ result[key] = value;
148
+ }
149
+ }
150
+ return result;
151
+ }
152
+ async configRollback() {
153
+ // Get current config to find cfgNum
154
+ const current = await this.request("GET", "/api/v1/config/latest");
155
+ const currentNum = current.cfgNum;
156
+ if (currentNum <= 1) {
157
+ throw new Error("Cannot rollback: already at first config");
158
+ }
159
+ // Get previous config
160
+ const previous = await this.request("GET", `/api/v1/config/${currentNum - 1}`);
161
+ // Save it as the new current config
162
+ await this.request("PUT", "/api/v1/config", previous);
163
+ }
164
+ async configUpdateCache() {
165
+ // No-op for API mode - cache is managed server-side
166
+ }
167
+ async configTestEmail(_destination) {
168
+ throw new Error("configTestEmail is not supported via API. Use SSH or K8s mode.");
169
+ }
170
+ resolveBackend(options) {
171
+ if (options?.persistent)
172
+ return "persistent";
173
+ if (options?.refreshTokens)
174
+ return "oidc";
175
+ return options?.backend || "global";
176
+ }
177
+ async sessionGet(id, options) {
178
+ const backendName = this.resolveBackend(options);
179
+ // hash option is not supported via API
180
+ return await this.request("GET", `/api/v1/sessions/${encodeURIComponent(backendName)}/${encodeURIComponent(id)}`);
181
+ }
182
+ async sessionSearch(filters) {
183
+ let backend = filters.backend || "global";
184
+ if (filters.persistent) {
185
+ backend = "persistent";
186
+ }
187
+ const queryParams = [];
188
+ // Handle refreshTokens: use backend="oidc" and add _type filter
189
+ if (filters.refreshTokens) {
190
+ backend = "oidc";
191
+ const whereClause = filters.where
192
+ ? { ...filters.where, _type: "refresh_token" }
193
+ : { _type: "refresh_token" };
194
+ const whereClauses = Object.entries(whereClause).map(([field, value]) => `${field}=${value}`);
195
+ queryParams.push(`where=${encodeURIComponent(whereClauses.join(" AND "))}`);
196
+ }
197
+ else if (filters.where) {
198
+ // Build where clause
199
+ const whereClauses = Object.entries(filters.where).map(([field, value]) => `${field}=${value}`);
200
+ queryParams.push(`where=${encodeURIComponent(whereClauses.join(" AND "))}`);
201
+ }
202
+ // Handle idOnly: select only _session_id
203
+ if (filters.idOnly) {
204
+ queryParams.push("select=_session_id");
205
+ }
206
+ else if (filters.select && filters.select.length > 0) {
207
+ queryParams.push(`select=${filters.select.join(",")}`);
208
+ }
209
+ // Build count flag
210
+ if (filters.count) {
211
+ queryParams.push("count=1");
212
+ }
213
+ const queryString = queryParams.length > 0 ? `?${queryParams.join("&")}` : "";
214
+ const result = await this.request("GET", `/api/v1/sessions/${encodeURIComponent(backend)}${queryString}`);
215
+ // API returns an object with session IDs as keys, convert to array
216
+ if (typeof result === "object" && !Array.isArray(result)) {
217
+ if (filters.idOnly) {
218
+ return Object.keys(result);
219
+ }
220
+ return Object.entries(result).map(([id, data]) => ({
221
+ id,
222
+ ...data,
223
+ }));
224
+ }
225
+ return result;
226
+ }
227
+ async sessionDelete(ids, options) {
228
+ const backendName = this.resolveBackend(options);
229
+ if (options?.where) {
230
+ // Where-based deletion: search first, then delete matching
231
+ const searchFilters = {
232
+ where: options.where,
233
+ backend: backendName,
234
+ idOnly: true,
235
+ refreshTokens: options.refreshTokens,
236
+ persistent: options.persistent,
237
+ };
238
+ const matchingIds = await this.sessionSearch(searchFilters);
239
+ for (const id of matchingIds) {
240
+ const sessionId = typeof id === "string" ? id : id.id || id._session_id;
241
+ if (sessionId) {
242
+ await this.request("DELETE", `/api/v1/sessions/${encodeURIComponent(backendName)}/${encodeURIComponent(sessionId)}`);
243
+ }
244
+ }
245
+ }
246
+ else {
247
+ for (const id of ids) {
248
+ await this.request("DELETE", `/api/v1/sessions/${encodeURIComponent(backendName)}/${encodeURIComponent(id)}`);
249
+ }
250
+ }
251
+ }
252
+ async sessionSetKey(id, pairs, options) {
253
+ const backendName = this.resolveBackend(options);
254
+ await this.request("PUT", `/api/v1/sessions/${encodeURIComponent(backendName)}/${encodeURIComponent(id)}`, pairs);
255
+ }
256
+ async sessionDelKey(id, keys, options) {
257
+ const backendName = this.resolveBackend(options);
258
+ const pairs = {};
259
+ for (const key of keys) {
260
+ pairs[key] = null;
261
+ }
262
+ await this.request("PUT", `/api/v1/sessions/${encodeURIComponent(backendName)}/${encodeURIComponent(id)}`, pairs);
263
+ }
264
+ async sessionBackup(backend, refreshTokens, persistent) {
265
+ let backendName = backend || "global";
266
+ if (persistent) {
267
+ backendName = "persistent";
268
+ }
269
+ let path = `/api/v1/sessions/${encodeURIComponent(backendName)}`;
270
+ if (refreshTokens) {
271
+ backendName = "oidc";
272
+ path = `/api/v1/sessions/${encodeURIComponent(backendName)}?where=${encodeURIComponent("_type=refresh_token")}`;
273
+ }
274
+ const sessions = await this.request("GET", path);
275
+ return JSON.stringify(sessions, null, 2);
276
+ }
277
+ async secondFactorsGet(user) {
278
+ const result = await this.request("GET", `/api/v1/secondfactors/${encodeURIComponent(user)}`);
279
+ // API may return object or array, normalize to array
280
+ if (Array.isArray(result)) {
281
+ return result;
282
+ }
283
+ else if (typeof result === "object") {
284
+ return Object.entries(result).map(([id, data]) => ({
285
+ id,
286
+ ...data,
287
+ }));
288
+ }
289
+ return [];
290
+ }
291
+ async secondFactorsDelete(user, ids) {
292
+ for (const id of ids) {
293
+ await this.request("DELETE", `/api/v1/secondfactors/${encodeURIComponent(user)}/${encodeURIComponent(id)}`);
294
+ }
295
+ }
296
+ async secondFactorsDelType(user, type) {
297
+ // Get all 2FA devices
298
+ const devices = await this.secondFactorsGet(user);
299
+ // Filter by type and delete
300
+ const toDelete = devices.filter((device) => device.type === type);
301
+ const ids = toDelete.map((device) => device.id);
302
+ await this.secondFactorsDelete(user, ids);
303
+ }
304
+ async consentsGet(user) {
305
+ const result = await this.request("GET", `/api/v1/consents/${encodeURIComponent(user)}`);
306
+ // API may return object or array, normalize to array
307
+ if (Array.isArray(result)) {
308
+ return result;
309
+ }
310
+ else if (typeof result === "object") {
311
+ return Object.entries(result).map(([id, data]) => ({
312
+ id,
313
+ ...data,
314
+ }));
315
+ }
316
+ return [];
317
+ }
318
+ async consentsDelete(user, ids) {
319
+ for (const id of ids) {
320
+ await this.request("DELETE", `/api/v1/consents/${encodeURIComponent(user)}/${encodeURIComponent(id)}`);
321
+ }
322
+ }
323
+ async execScript(_scriptName, _args) {
324
+ throw new Error("execScript is not supported via API. Use SSH or K8s mode.");
325
+ }
326
+ }
327
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/transport/api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ export interface SessionGetOptions {
2
+ backend?: string;
3
+ refreshTokens?: boolean;
4
+ persistent?: boolean;
5
+ hash?: boolean;
6
+ }
7
+ export interface SessionDeleteOptions extends SessionGetOptions {
8
+ where?: Record<string, string>;
9
+ }
10
+ export interface SessionFilter {
11
+ where?: Record<string, string>;
12
+ select?: string[];
13
+ backend?: string;
14
+ count?: boolean;
15
+ refreshTokens?: boolean;
16
+ persistent?: boolean;
17
+ hash?: boolean;
18
+ idOnly?: boolean;
19
+ }
20
+ export interface ConfigInfo {
21
+ cfgNum: number;
22
+ cfgAuthor: string;
23
+ cfgDate: string;
24
+ cfgLog?: string;
25
+ }
26
+ export interface ILlngTransport {
27
+ configInfo(): Promise<ConfigInfo>;
28
+ configGet(keys: string[]): Promise<Record<string, any>>;
29
+ configSet(pairs: Record<string, any>, log?: string): Promise<void>;
30
+ configAddKey(key: string, subkey: string, value: string): Promise<void>;
31
+ configDelKey(key: string, subkey: string): Promise<void>;
32
+ configSave(): Promise<string>;
33
+ configRestore(json: string): Promise<void>;
34
+ configMerge(json: string): Promise<void>;
35
+ configRollback(): Promise<void>;
36
+ configUpdateCache(): Promise<void>;
37
+ configTestEmail(destination: string): Promise<void>;
38
+ sessionGet(id: string, options?: SessionGetOptions): Promise<Record<string, any>>;
39
+ sessionSearch(filters: SessionFilter): Promise<any[]>;
40
+ sessionDelete(ids: string[], options?: SessionDeleteOptions): Promise<void>;
41
+ sessionSetKey(id: string, pairs: Record<string, any>, options?: SessionGetOptions): Promise<void>;
42
+ sessionDelKey(id: string, keys: string[], options?: SessionGetOptions): Promise<void>;
43
+ sessionBackup(backend?: string, refreshTokens?: boolean, persistent?: boolean): Promise<string>;
44
+ secondFactorsGet(user: string): Promise<any[]>;
45
+ secondFactorsDelete(user: string, ids: string[]): Promise<void>;
46
+ secondFactorsDelType(user: string, type: string): Promise<void>;
47
+ consentsGet(user: string): Promise<any[]>;
48
+ consentsDelete(user: string, ids: string[]): Promise<void>;
49
+ execScript(scriptName: string, args: string[]): Promise<string>;
50
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../src/transport/interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,41 @@
1
+ import { K8sConfig } from "../config.js";
2
+ import { ILlngTransport, SessionFilter, ConfigInfo, SessionGetOptions, SessionDeleteOptions } from "./interface.js";
3
+ export declare class K8sTransport implements ILlngTransport {
4
+ private config;
5
+ private paths;
6
+ private cachedPodName;
7
+ constructor(config: K8sConfig);
8
+ private resolvePod;
9
+ private kubectl;
10
+ private kubectlWithStdin;
11
+ private buildExecArgs;
12
+ private buildExecStdinArgs;
13
+ private exec;
14
+ private execWithStdin;
15
+ private execCli;
16
+ private execSessions;
17
+ private pushSessionGetOptions;
18
+ configInfo(): Promise<ConfigInfo>;
19
+ configGet(keys: string[]): Promise<Record<string, any>>;
20
+ configSet(pairs: Record<string, any>, log?: string): Promise<void>;
21
+ configAddKey(key: string, subkey: string, value: string): Promise<void>;
22
+ configDelKey(key: string, subkey: string): Promise<void>;
23
+ configSave(): Promise<string>;
24
+ configRestore(json: string): Promise<void>;
25
+ configMerge(json: string): Promise<void>;
26
+ configRollback(): Promise<void>;
27
+ configUpdateCache(): Promise<void>;
28
+ configTestEmail(destination: string): Promise<void>;
29
+ sessionGet(id: string, options?: SessionGetOptions): Promise<Record<string, any>>;
30
+ sessionSearch(filters: SessionFilter): Promise<any[]>;
31
+ sessionDelete(ids: string[], options?: SessionDeleteOptions): Promise<void>;
32
+ sessionSetKey(id: string, pairs: Record<string, any>, options?: SessionGetOptions): Promise<void>;
33
+ sessionDelKey(id: string, keys: string[], options?: SessionGetOptions): Promise<void>;
34
+ sessionBackup(backend?: string, refreshTokens?: boolean, persistent?: boolean): Promise<string>;
35
+ secondFactorsGet(_user: string): Promise<any[]>;
36
+ secondFactorsDelete(_user: string, _ids: string[]): Promise<void>;
37
+ secondFactorsDelType(_user: string, _type: string): Promise<void>;
38
+ consentsGet(_user: string): Promise<any[]>;
39
+ consentsDelete(_user: string, _ids: string[]): Promise<void>;
40
+ execScript(scriptName: string, args: string[]): Promise<string>;
41
+ }