@undefineds.co/linx 0.2.15 → 0.2.17

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 (103) hide show
  1. package/dist/generated/version.js +3 -0
  2. package/dist/generated/version.js.map +1 -0
  3. package/dist/index.js +51 -225
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/account-api.js +1 -1
  6. package/dist/lib/account-api.js.map +1 -1
  7. package/dist/lib/account-session.js +1 -1
  8. package/dist/lib/account-session.js.map +1 -1
  9. package/dist/lib/ai-command.js +59 -32
  10. package/dist/lib/ai-command.js.map +1 -1
  11. package/dist/lib/chat-api.js +19 -177
  12. package/dist/lib/chat-api.js.map +1 -1
  13. package/dist/lib/codex-plugin/bridge.js.map +1 -1
  14. package/dist/lib/codex-plugin/codex-native-proxy.js.map +1 -1
  15. package/dist/lib/codex-plugin/index.js.map +1 -1
  16. package/dist/lib/codex-plugin/runner.js.map +1 -1
  17. package/dist/lib/credentials-store.js +1 -7
  18. package/dist/lib/credentials-store.js.map +1 -1
  19. package/dist/lib/default-model.js +0 -1
  20. package/dist/lib/default-model.js.map +1 -1
  21. package/dist/lib/login-command.js +2 -17
  22. package/dist/lib/login-command.js.map +1 -1
  23. package/dist/lib/models.js +27 -2
  24. package/dist/lib/models.js.map +1 -1
  25. package/dist/lib/oidc-auth.js +13 -78
  26. package/dist/lib/oidc-auth.js.map +1 -1
  27. package/dist/lib/oidc-session-storage.js.map +1 -1
  28. package/dist/lib/pi-adapter/auth.js +5 -12
  29. package/dist/lib/pi-adapter/auth.js.map +1 -1
  30. package/dist/lib/pi-adapter/branding.js +75 -553
  31. package/dist/lib/pi-adapter/branding.js.map +1 -1
  32. package/dist/lib/pi-adapter/index.js.map +1 -1
  33. package/dist/lib/pi-adapter/interactive.js +4 -154
  34. package/dist/lib/pi-adapter/interactive.js.map +1 -1
  35. package/dist/lib/pi-adapter/runtime.js +23 -138
  36. package/dist/lib/pi-adapter/runtime.js.map +1 -1
  37. package/dist/lib/pi-adapter/stream.js +4 -154
  38. package/dist/lib/pi-adapter/stream.js.map +1 -1
  39. package/dist/lib/pi-adapter/theme.js.map +1 -1
  40. package/dist/lib/pod-chat-store.js +1 -1
  41. package/dist/lib/pod-chat-store.js.map +1 -1
  42. package/dist/lib/profile-identity.js +60 -16
  43. package/dist/lib/profile-identity.js.map +1 -1
  44. package/dist/lib/prompt.js.map +1 -1
  45. package/dist/lib/runtime-target.js +1 -1
  46. package/dist/lib/runtime-target.js.map +1 -1
  47. package/dist/lib/solid-auth.js.map +1 -1
  48. package/dist/lib/thread-utils.js.map +1 -1
  49. package/dist/lib/watch/archive.js +1 -1
  50. package/dist/lib/watch/archive.js.map +1 -1
  51. package/dist/lib/watch/auth.js +1 -1
  52. package/dist/lib/watch/auth.js.map +1 -1
  53. package/dist/lib/watch/codex-composer.js.map +1 -1
  54. package/dist/lib/watch/codex-footer.js.map +1 -1
  55. package/dist/lib/watch/codex-overlay.js.map +1 -1
  56. package/dist/lib/watch/codex-request-form.js +1 -1
  57. package/dist/lib/watch/codex-request-form.js.map +1 -1
  58. package/dist/lib/watch/codex-request-input.js.map +1 -1
  59. package/dist/lib/watch/display.js.map +1 -1
  60. package/dist/lib/watch/format.js.map +1 -1
  61. package/dist/lib/watch/hooks/claude.js.map +1 -1
  62. package/dist/lib/watch/hooks/codebuddy.js.map +1 -1
  63. package/dist/lib/watch/hooks/codex.js.map +1 -1
  64. package/dist/lib/watch/hooks/index.js.map +1 -1
  65. package/dist/lib/watch/hooks/shared.js +1 -0
  66. package/dist/lib/watch/hooks/shared.js.map +1 -1
  67. package/dist/lib/watch/index.js.map +1 -1
  68. package/dist/lib/watch/pod-ai.js +32 -16
  69. package/dist/lib/watch/pod-ai.js.map +1 -1
  70. package/dist/lib/watch/pod-approval.js +203 -481
  71. package/dist/lib/watch/pod-approval.js.map +1 -1
  72. package/dist/lib/watch/pod-persistence.js +37 -24
  73. package/dist/lib/watch/pod-persistence.js.map +1 -1
  74. package/dist/lib/watch/runner.js +1 -4
  75. package/dist/lib/watch/runner.js.map +1 -1
  76. package/dist/lib/watch/types.js.map +1 -1
  77. package/dist/skills/drizzle-solid/SKILL.md +340 -0
  78. package/dist/skills/pod-storage/SKILL.md +60 -0
  79. package/dist/skills/solid-modeling/SKILL.md +274 -0
  80. package/dist/skills/xpod-componentsjs/SKILL.md +284 -0
  81. package/dist/watch-cli.js.map +1 -1
  82. package/package.json +10 -3
  83. package/vendor/client/dist/client/index.d.ts +118 -0
  84. package/vendor/client/dist/client/index.js +260 -0
  85. package/vendor/client/dist/index.d.ts +1 -0
  86. package/vendor/client/dist/index.js +1 -0
  87. package/vendor/client/dist/watch/index.d.ts +226 -0
  88. package/vendor/client/dist/watch/index.js +1114 -0
  89. package/vendor/client/package.json +9 -0
  90. package/dist/lib/node-warning-filter.js +0 -34
  91. package/dist/lib/node-warning-filter.js.map +0 -1
  92. package/dist/lib/pi-adapter/pod-approval.js +0 -8
  93. package/dist/lib/pi-adapter/pod-approval.js.map +0 -1
  94. package/dist/lib/pi-adapter/pod-mirror-mapping.js +0 -189
  95. package/dist/lib/pi-adapter/pod-mirror-mapping.js.map +0 -1
  96. package/dist/lib/pi-adapter/pod-mirror.js +0 -334
  97. package/dist/lib/pi-adapter/pod-mirror.js.map +0 -1
  98. package/dist/lib/pi-adapter/pod-native.js +0 -477
  99. package/dist/lib/pi-adapter/pod-native.js.map +0 -1
  100. package/dist/lib/pi-adapter/session.js +0 -727
  101. package/dist/lib/pi-adapter/session.js.map +0 -1
  102. package/dist/lib/pod-data-session.js +0 -70
  103. package/dist/lib/pod-data-session.js.map +0 -1
@@ -0,0 +1,284 @@
1
+ ---
2
+ name: xpod-componentsjs
3
+ description: Xpod Components.js 变量和组件配置专家,处理 CLI 参数、变量解析、组件配置等问题
4
+ allowed-tools: Read, Write, Edit, Grep, Glob, Bash
5
+ ---
6
+
7
+ # Xpod Components.js 配置专家
8
+
9
+ 你是 Xpod 项目的 Components.js 配置专家。Xpod 基于 Community Solid Server (CSS),使用 Components.js 进行依赖注入。
10
+
11
+ ## 核心知识
12
+
13
+ ### 变量解析流程
14
+
15
+ ```
16
+ 环境变量 (CSS_XXX)
17
+
18
+ YargsCliExtractor (cli.json) - 解析 CLI 参数
19
+
20
+ ShorthandResolver (resolver.json) - 将参数映射到 Components.js 变量
21
+
22
+ Variable (配置文件中) - 在组件配置中引用变量
23
+ ```
24
+
25
+ ### 关键文件
26
+
27
+ | 文件 | 作用 |
28
+ |------|------|
29
+ | `config/cli.json` | 声明 CLI 参数(YargsParameter) |
30
+ | `config/resolver.json` | 将 CLI 参数映射到 Components.js 变量(KeyExtractor) |
31
+ | `config/*.json` | 使用 `"@type": "Variable"` 引用变量 |
32
+ | `dist/components/context.jsonld` | 自动生成的组件 context,包含参数名映射 |
33
+
34
+ ## 添加新变量的完整步骤
35
+
36
+ ### 步骤 1: cli.json 声明参数
37
+
38
+ ```json
39
+ // config/cli.json
40
+ {
41
+ "@type": "YargsParameter",
42
+ "name": "myNewParam",
43
+ "options": {
44
+ "type": "string",
45
+ "hidden": true
46
+ }
47
+ }
48
+ ```
49
+
50
+ 参数名使用 camelCase,对应环境变量自动转换:`myNewParam` → `CSS_MY_NEW_PARAM`
51
+
52
+ ### 步骤 2: resolver.json 添加 KeyExtractor(最容易遗漏!)
53
+
54
+ ```json
55
+ // config/resolver.json
56
+ {
57
+ "CombinedShorthandResolver:_resolvers_key": "urn:solid-server:default:variable:myNewParam",
58
+ "CombinedShorthandResolver:_resolvers_value": {
59
+ "@type": "KeyExtractor",
60
+ "key": "myNewParam",
61
+ "defaultValue": ""
62
+ }
63
+ }
64
+ ```
65
+
66
+ ### 步骤 3: 配置文件中使用变量
67
+
68
+ ```json
69
+ {
70
+ "myConfig": {
71
+ "@id": "urn:solid-server:default:variable:myNewParam",
72
+ "@type": "Variable"
73
+ }
74
+ }
75
+ ```
76
+
77
+ ## 抽象类和接口的处理
78
+
79
+ ### 关键规则:Generator 只处理导出的类
80
+
81
+ Components.js Generator (`componentsjs-generator`) 只会为 **从 `src/index.ts` 导出的类** 生成 `.jsonld` 文件。
82
+
83
+ ### 问题场景
84
+
85
+ 当一个类继承抽象基类或实现接口时:
86
+
87
+ ```typescript
88
+ // 子类生成的 jsonld 会包含 extends 引用
89
+ "extends": ["undefineds:dist/path/to/BaseClass.jsonld#BaseClass"]
90
+ ```
91
+
92
+ 如果 `BaseClass` 没有被导出,Generator 不会为它生成 jsonld,启动时会报错:
93
+
94
+ ```
95
+ Error: Resource .../BaseClass.jsonld#BaseClass is not a valid component
96
+ ```
97
+
98
+ ### 解决方案
99
+
100
+ **1. 确保抽象类/基类从 index.ts 导出**
101
+
102
+ ```typescript
103
+ // src/index.ts
104
+ import { MyBaseClass } from './path/to/MyBaseClass';
105
+ import { MyImplClass } from './path/to/MyImplClass';
106
+
107
+ export default {
108
+ MyBaseClass, // ← 必须导出基类!
109
+ MyImplClass,
110
+ };
111
+ ```
112
+
113
+ **2. 使用 abstract class 而不是 interface**
114
+
115
+ Generator **不会为 TypeScript interface 生成 jsonld**。如果有类 `implements` 一个 interface,必须将 interface 改为 abstract class:
116
+
117
+ ```typescript
118
+ // ❌ 错误 - interface 不会生成 jsonld
119
+ export interface QuintStore {
120
+ get(pattern: QuintPattern): Promise<Quint[]>;
121
+ put(quint: Quint): Promise<void>;
122
+ }
123
+
124
+ export class MyStore implements QuintStore { ... }
125
+ ```
126
+
127
+ ```typescript
128
+ // ✅ 正确 - abstract class 会生成 jsonld
129
+ export abstract class QuintStore {
130
+ abstract get(pattern: QuintPattern): Promise<Quint[]>;
131
+ abstract put(quint: Quint): Promise<void>;
132
+ }
133
+
134
+ export class MyStore extends QuintStore { ... }
135
+ ```
136
+
137
+ **3. 子类继承时添加 super() 和 override**
138
+
139
+ ```typescript
140
+ export class MyStore extends QuintStore {
141
+ constructor(options: Options) {
142
+ super(); // ← 必须调用 super()
143
+ this.options = options;
144
+ }
145
+
146
+ override async get(pattern: QuintPattern): Promise<Quint[]> {
147
+ // 如果基类有可选方法的实现,需要 override 修饰符
148
+ }
149
+ }
150
+ ```
151
+
152
+ ### 检查清单
153
+
154
+ 添加新的抽象类/基类时:
155
+
156
+ - [ ] 使用 `abstract class` 而不是 `interface`
157
+ - [ ] 在 `src/index.ts` 中导出该类
158
+ - [ ] 子类使用 `extends` 而不是 `implements`
159
+ - [ ] 子类构造函数调用 `super()`
160
+ - [ ] 覆盖父类方法时添加 `override` 修饰符
161
+ - [ ] 运行 `yarn build` 验证 jsonld 生成
162
+
163
+ ## 常见错误诊断
164
+
165
+ ### 错误: Resource is not a valid component
166
+
167
+ ```
168
+ Error: Resource .../types.jsonld#QuintStore is not a valid component,
169
+ either it is not defined, has no type, or is incorrectly referenced
170
+ ```
171
+
172
+ **原因**:
173
+ 1. 使用了 TypeScript interface(Generator 不处理 interface)
174
+ 2. 抽象类/基类没有从 index.ts 导出
175
+
176
+ **解决**:
177
+ 1. 将 interface 改为 abstract class
178
+ 2. 在 index.ts 中导出该类
179
+ 3. 运行 `yarn build`
180
+
181
+ ### 错误: Could not find (valid) component types
182
+
183
+ ```
184
+ ErrorResourcesContext: Could not find (valid) component types for config "urn:xxx:MyComponent" among its types, or a requireName
185
+ ```
186
+
187
+ **原因**: 新增或重命名了 TypeScript 类,但没有重新生成 Components.js 的 `.jsonld` 组件定义文件
188
+ **解决**: 运行完整编译 `npm run build`(不是 `npm run build:ts`),让 `componentsjs-generator` 生成新的 `.jsonld` 文件
189
+
190
+ ```bash
191
+ # 错误 - 只编译 TypeScript,不会生成 .jsonld
192
+ npm run build:ts
193
+
194
+ # 正确 - 完整编译,包括 componentsjs-generator
195
+ npm run build
196
+ ```
197
+
198
+ ### 错误: Undefined variable
199
+
200
+ ```
201
+ Error: Undefined variable: urn:solid-server:default:variable:xxx
202
+ ```
203
+
204
+ **原因**: resolver.json 中缺少对应的 KeyExtractor
205
+ **解决**: 在 resolver.json 中添加变量映射
206
+
207
+ ### 错误: Multiple values for parameter
208
+
209
+ ```
210
+ ErrorResourcesContext: Detected multiple values for parameter ... YargsCliExtractor_options
211
+ ```
212
+
213
+ **原因**: xpod 的 cli.json 和 CSS 的 cli.json 都定义了 `options` 块
214
+ **解决**: xpod 的 cli.json 不要添加 `options` 块,CSS 已经配置了 `envVarPrefix` 和 `loadFromEnv`
215
+
216
+ ### 错误: xxx.map is not a function
217
+
218
+ ```
219
+ TypeError: options.routes.map is not a function
220
+ ```
221
+
222
+ **原因**: 组件参数名格式不正确
223
+ **解决**: 查看 `dist/components/context.jsonld` 中的正确参数名,使用简写形式
224
+
225
+ ```json
226
+ // 正确
227
+ { "@type": "MyComponent", "routes": [...], "fallback": {...} }
228
+
229
+ // 错误
230
+ { "@type": "MyComponent", "MyComponent:_options_routes": [...] }
231
+ ```
232
+
233
+ ## 配置文件 @context 规范
234
+
235
+ ### 正确写法
236
+
237
+ ```json
238
+ {
239
+ "@context": [
240
+ "https://linkedsoftwaredependencies.org/bundles/npm/@solid/community-server/^8.0.0/components/context.jsonld",
241
+ "https://linkedsoftwaredependencies.org/bundles/npm/@undefineds.co/xpod/^0.0.0/components/context.jsonld"
242
+ ]
243
+ }
244
+ ```
245
+
246
+ ### 禁止自定义覆盖
247
+
248
+ 不要在 @context 中添加与 dist/components/context.jsonld 冲突的自定义映射。
249
+
250
+ ## 调试命令
251
+
252
+ ```bash
253
+ # 验证环境变量加载
254
+ node_modules/.bin/dotenv -e .env.cluster -- node -e "console.log(process.env.CSS_MY_PARAM)"
255
+
256
+ # 直接传递 CLI 参数测试
257
+ community-solid-server -c config/xxx.json -m . --myNewParam test-value
258
+
259
+ # 查看组件参数名
260
+ grep -A 10 '"MyComponent"' dist/components/context.jsonld
261
+
262
+ # 检查某个类的 jsonld 是否生成
263
+ ls dist/path/to/MyClass.jsonld
264
+
265
+ # 检查 components.jsonld 是否包含某个类的 import
266
+ grep "MyClass" dist/components/components.jsonld
267
+ ```
268
+
269
+ ## 检查清单
270
+
271
+ 添加新变量时必须完成:
272
+
273
+ - [ ] `config/cli.json` - 添加 YargsParameter
274
+ - [ ] `config/resolver.json` - 添加 KeyExtractor
275
+ - [ ] `.env.xxx` - 添加环境变量(如需要)
276
+ - [ ] 组件配置文件 - 使用 `"@type": "Variable"` 引用
277
+ - [ ] 运行 `yarn build` 重新生成 components
278
+
279
+ 添加新的抽象类/基类时:
280
+
281
+ - [ ] 使用 `abstract class` 而不是 `interface`
282
+ - [ ] 在 `src/index.ts` 中导出该类
283
+ - [ ] 子类使用 `extends` 而不是 `implements`
284
+ - [ ] 运行 `yarn build` 验证 jsonld 生成
@@ -1 +1 @@
1
- {"version":3,"file":"watch-cli.js","sourceRoot":"","sources":["../src/watch-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"watch-cli.js","sourceRoot":"","sources":["../../../../src/watch-cli.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@undefineds.co/linx",
3
- "version": "0.2.15",
3
+ "version": "0.2.17",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "bin": {
@@ -12,10 +12,11 @@
12
12
  "test": "yarn build && node --test test/**/*.test.mjs"
13
13
  },
14
14
  "dependencies": {
15
- "@undefineds.co/models": "0.2.15",
16
15
  "@inrupt/solid-client-authn-node": "^3.1.1",
16
+ "@inrupt/vocab-common-rdf": "^1.0.5",
17
17
  "@mariozechner/pi-coding-agent": "^0.67.6",
18
- "n3": "^1.26.0",
18
+ "@undefineds.co/drizzle-solid": "^0.3.5",
19
+ "@undefineds.co/models": "0.2.16",
19
20
  "yargs": "^17.7.2",
20
21
  "@zed-industries/codex-acp": "^0.9.5"
21
22
  },
@@ -25,9 +26,15 @@
25
26
  },
26
27
  "files": [
27
28
  "dist",
29
+ "vendor",
28
30
  "README.md",
29
31
  "package.json"
30
32
  ],
33
+ "repository": {
34
+ "type": "git",
35
+ "url": "git+https://github.com/undefinedsco/LinX.git",
36
+ "directory": "apps/cli"
37
+ },
31
38
  "publishConfig": {
32
39
  "access": "public"
33
40
  }
@@ -0,0 +1,118 @@
1
+ export type LinxAuthType = 'client_credentials' | 'oidc_oauth';
2
+ export interface LinxClientConfig {
3
+ url: string;
4
+ webId: string;
5
+ authType: LinxAuthType;
6
+ }
7
+ export interface LinxClientCredentialsSecrets {
8
+ clientId: string;
9
+ clientSecret: string;
10
+ }
11
+ export interface LinxOidcOAuthSecrets {
12
+ oidcRefreshToken: string;
13
+ oidcAccessToken: string;
14
+ oidcExpiresAt: string;
15
+ }
16
+ export type LinxClientSecrets = LinxClientCredentialsSecrets | LinxOidcOAuthSecrets;
17
+ export interface AccountSession {
18
+ url: string;
19
+ email: string;
20
+ token: string;
21
+ webId?: string;
22
+ podUrl?: string;
23
+ createdAt: string;
24
+ }
25
+ export interface LinxAccountControls {
26
+ pod?: string;
27
+ clientCredentials?: string;
28
+ }
29
+ export interface LinxAccountData {
30
+ controls: LinxAccountControls;
31
+ pods: Record<string, string>;
32
+ webIds: Record<string, string>;
33
+ clientCredentials: Record<string, string>;
34
+ }
35
+ export interface LinxClientCredential {
36
+ id: string;
37
+ secret?: string;
38
+ label?: string;
39
+ webId?: string;
40
+ }
41
+ export interface LinxStoredCredentials {
42
+ url: string;
43
+ webId: string;
44
+ authType: LinxAuthType;
45
+ secrets: LinxClientSecrets;
46
+ }
47
+ export type LinxCredentialBootstrapStatus = 'reused' | 'created' | 'recreated';
48
+ export interface LinxWhoAmIField {
49
+ key: 'email' | 'server' | 'webId' | 'pod' | 'session-created-at';
50
+ value: string;
51
+ }
52
+ export interface PerformLinxPasswordLoginInput {
53
+ baseUrl?: string | null;
54
+ fallbackBaseUrl?: string;
55
+ email: string;
56
+ password: string;
57
+ requestedWebId?: string | null;
58
+ credentialName?: string | null;
59
+ existingCredentials?: LinxStoredCredentials | null;
60
+ now?: Date;
61
+ }
62
+ export interface PerformLinxPasswordLoginResult {
63
+ baseUrl: string;
64
+ webId: string;
65
+ account: LinxAccountData;
66
+ session: AccountSession;
67
+ credentialStatus: LinxCredentialBootstrapStatus;
68
+ credentialsToSave?: {
69
+ url: string;
70
+ webId: string;
71
+ authType: 'client_credentials';
72
+ secrets: LinxClientCredentialsSecrets;
73
+ };
74
+ }
75
+ export interface PerformLinxPasswordLoginDependencies {
76
+ checkServer(baseUrl: string): Promise<boolean>;
77
+ login(email: string, password: string, baseUrl: string): Promise<string | null>;
78
+ getAccountData(token: string, baseUrl: string): Promise<LinxAccountData | null>;
79
+ validateClientCredentials?(credentials: LinxStoredCredentials): Promise<boolean>;
80
+ createClientCredentials(token: string, credentialsUrl: string, webId: string, name?: string): Promise<LinxClientCredential | null>;
81
+ }
82
+ export declare const LINX_HOME_DIRNAME = ".linx";
83
+ export declare const LINX_CONFIG_FILE_NAME = "config.json";
84
+ export declare const LINX_SECRETS_FILE_NAME = "secrets.json";
85
+ export declare const LINX_ACCOUNT_SESSION_FILE_NAME = "account.json";
86
+ export declare const LINX_CLOUD_IDENTITY_ORIGIN = "https://id.undefineds.co";
87
+ export declare const LINX_CLOUD_API_ORIGIN = "https://api.undefineds.co";
88
+ export declare const LINX_CLOUD_ACCOUNT_API_BASE_URL = "https://id.undefineds.co/";
89
+ export declare const LINX_CLOUD_RUNTIME_API_BASE_URL = "https://api.undefineds.co/v1";
90
+ export declare const LINX_CLOUD_API_BASE_URL = "https://id.undefineds.co/";
91
+ export declare const LINX_CLOUD_IDENTITY_HOSTS: readonly ["id.undefineds.co"];
92
+ export declare function resolveLinxBaseUrl(url?: string | null, fallbackBaseUrl?: string): string;
93
+ export declare function resolveLinxRuntimeApiBaseUrl(url?: string | null, fallbackBaseUrl?: string): string;
94
+ export declare function resolveLinxCloudAccountBaseUrl(url?: string | null): string;
95
+ export declare function resolveLinxCloudRuntimeApiBaseUrl(url?: string | null): string;
96
+ export declare function resolveLinxCloudApiBaseUrl(url?: string | null): string;
97
+ export declare function isLinxCloudIdentityBaseUrl(url?: string | null): boolean;
98
+ export declare function resolveLinxRuntimeOriginForIssuerUrl(url?: string | null): string;
99
+ export declare function resolveLinxRuntimeApiBaseUrlForIssuerUrl(url?: string | null): string;
100
+ export declare function resolveLinxPodUrl(webId: string): string;
101
+ export declare function resolveLinxPodBaseUrl(webId: string): string;
102
+ export declare function parseLinxClientConfig(raw: unknown): LinxClientConfig | null;
103
+ export declare function isLinxClientCredentialsSecrets(secrets: LinxClientSecrets): secrets is LinxClientCredentialsSecrets;
104
+ export declare function isLinxOidcOAuthSecrets(secrets: LinxClientSecrets): secrets is LinxOidcOAuthSecrets;
105
+ export declare function parseLinxClientSecrets(raw: unknown): LinxClientSecrets | null;
106
+ export declare function parseLinxAccountData(raw: unknown): LinxAccountData | null;
107
+ export declare function parseLinxClientCredential(raw: unknown): LinxClientCredential | null;
108
+ export declare function parseAccountSession(raw: unknown): AccountSession | null;
109
+ export declare function selectLinxAccountWebId(account: LinxAccountData | null, preferredWebId?: string | null): string | null;
110
+ export declare function hasMatchingLinxStoredCredentials(credentials: Pick<LinxStoredCredentials, 'url' | 'webId'> | null | undefined, baseUrl: string, webId: string): boolean;
111
+ export declare function resolveLinxCredentialBootstrapStatus(input: {
112
+ reusedExistingCredentials: boolean;
113
+ hadMatchingStoredCredentials: boolean;
114
+ }): LinxCredentialBootstrapStatus;
115
+ export declare function listLinxWhoAmIFields(session: AccountSession, options?: {
116
+ verbose?: boolean;
117
+ }): LinxWhoAmIField[];
118
+ export declare function performLinxPasswordLogin(input: PerformLinxPasswordLoginInput, deps: PerformLinxPasswordLoginDependencies): Promise<PerformLinxPasswordLoginResult>;