@kashscript/lexicons 0.2.0-alpha.0 → 0.4.0-alpha.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/LICENSE +1 -1
- package/README.md +74 -74
- package/dist/extensions/door.d.ts +158 -47
- package/dist/extensions/door.d.ts.map +1 -1
- package/dist/extensions/door.js +124 -45
- package/dist/extensions/door.js.map +1 -1
- package/package.json +1 -1
- package/src/extensions/door.ts +560 -384
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -1,74 +1,74 @@
|
|
|
1
|
-
# @kashscript/lexicons
|
|
2
|
-
|
|
3
|
-
> **Zero-dependency lexicon framework — envelope, schema DSL, registry, validator.** Domain-agnostic core; vocabularies ship as opt-in extensions.
|
|
4
|
-
|
|
5
|
-
```bash
|
|
6
|
-
bun add @kashscript/lexicons
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
A *lexicon* is the Kash equivalent of an AT-Protocol record schema: a
|
|
10
|
-
versioned, NSID-addressed JSON shape that describes what valid `kash.*`
|
|
11
|
-
records look like. This package gives you the primitives to **define**,
|
|
12
|
-
**register**, and **validate** lexicons — but ships zero domain content
|
|
13
|
-
out of the box. The domain extensions (`social`, `trade`, `zkp`,
|
|
14
|
-
`education`, `civic`, `community`) are explicit subpath imports.
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
## What's in the box
|
|
19
|
-
|
|
20
|
-
| Subpath | Purpose |
|
|
21
|
-
|----------------------------------------|------------------------------------------------------|
|
|
22
|
-
| `@kashscript/lexicons` | Default — the framework + identity-tier `STANDARD_LIBRARY` |
|
|
23
|
-
| `@kashscript/lexicons/envelope` | Kash-Event envelope shape (header + body + signature) + `RecordRef` |
|
|
24
|
-
| `@kashscript/lexicons/schema` | Schema DSL — the `S` builder (`S.object`, `S.string`, …) + `validate()` |
|
|
25
|
-
| `@kashscript/lexicons/registry` | `LexiconRegistry` — register, lookup, version-resolve |
|
|
26
|
-
| `@kashscript/lexicons/engine` | `validateEvent` / `validateBody` / `getSchemaDefinition` |
|
|
27
|
-
| `@kashscript/lexicons/json-schema` | Export lexicons as JSON Schema (draft 2020-12) |
|
|
28
|
-
| `@kashscript/lexicons/semver` | Strict semver for lexicon evolution |
|
|
29
|
-
| `@kashscript/lexicons/extensions/social` | The `kash.social.*` vocabulary |
|
|
30
|
-
| `@kashscript/lexicons/extensions/trade` | The `kash.trade.*` vocabulary |
|
|
31
|
-
| `@kashscript/lexicons/extensions/zkp` | The `kash.zkp.*` vocabulary |
|
|
32
|
-
| `@kashscript/lexicons/extensions/{education,civic,community}` | Further opt-in vocabularies |
|
|
33
|
-
| `@kashscript/lexicons/extensions/door` | `kash.rule@1.0.0` (a door's published rule) and `kash.
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Quickstart
|
|
38
|
-
|
|
39
|
-
```typescript
|
|
40
|
-
import { S } from "@kashscript/lexicons/schema";
|
|
41
|
-
import { LexiconRegistry } from "@kashscript/lexicons/registry";
|
|
42
|
-
import { validateBody, validateEvent } from "@kashscript/lexicons/engine";
|
|
43
|
-
|
|
44
|
-
// 1. Define a body schema with the `S` builder (3rd arg of S.object = required keys).
|
|
45
|
-
const noteSchema = S.object(
|
|
46
|
-
{
|
|
47
|
-
text: S.string({ maxLength: 280 }),
|
|
48
|
-
createdAt: S.string({ format: "iso8601" }),
|
|
49
|
-
},
|
|
50
|
-
["text", "createdAt"],
|
|
51
|
-
);
|
|
52
|
-
|
|
53
|
-
// 2. Register it under `<nsid>@<semver>` (register() is chainable).
|
|
54
|
-
const registry = new LexiconRegistry();
|
|
55
|
-
registry.register("com.example.note@1.0.0", noteSchema, { title: "Example Note" });
|
|
56
|
-
|
|
57
|
-
// 3a. Validate a record body before signing it.
|
|
58
|
-
const bodyResult = validateBody(
|
|
59
|
-
"com.example.note@1.0.0",
|
|
60
|
-
{ text: "hello world", createdAt: new Date().toISOString() },
|
|
61
|
-
registry,
|
|
62
|
-
);
|
|
63
|
-
if (!bodyResult.ok) console.error(bodyResult.errors); // [{ path, message, received }]
|
|
64
|
-
|
|
65
|
-
// 3b. Or validate a full signed Kash-Event envelope (header.lexicon picks the schema).
|
|
66
|
-
const eventResult = validateEvent(incomingEvent, registry); // incomingEvent: unknown
|
|
67
|
-
if (eventResult.ok) console.log("valid:", eventResult.value.header.lexicon);
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
---
|
|
71
|
-
|
|
72
|
-
## License
|
|
73
|
-
|
|
74
|
-
Apache-2.0. Also covered by SSLA v1.0 Schedule A (Permissive). See [LICENSE](./LICENSE).
|
|
1
|
+
# @kashscript/lexicons
|
|
2
|
+
|
|
3
|
+
> **Zero-dependency lexicon framework — envelope, schema DSL, registry, validator.** Domain-agnostic core; vocabularies ship as opt-in extensions.
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
bun add @kashscript/lexicons
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
A *lexicon* is the Kash equivalent of an AT-Protocol record schema: a
|
|
10
|
+
versioned, NSID-addressed JSON shape that describes what valid `kash.*`
|
|
11
|
+
records look like. This package gives you the primitives to **define**,
|
|
12
|
+
**register**, and **validate** lexicons — but ships zero domain content
|
|
13
|
+
out of the box. The domain extensions (`social`, `trade`, `zkp`,
|
|
14
|
+
`education`, `civic`, `community`) are explicit subpath imports.
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## What's in the box
|
|
19
|
+
|
|
20
|
+
| Subpath | Purpose |
|
|
21
|
+
|----------------------------------------|------------------------------------------------------|
|
|
22
|
+
| `@kashscript/lexicons` | Default — the framework + identity-tier `STANDARD_LIBRARY` |
|
|
23
|
+
| `@kashscript/lexicons/envelope` | Kash-Event envelope shape (header + body + signature) + `RecordRef` |
|
|
24
|
+
| `@kashscript/lexicons/schema` | Schema DSL — the `S` builder (`S.object`, `S.string`, …) + `validate()` |
|
|
25
|
+
| `@kashscript/lexicons/registry` | `LexiconRegistry` — register, lookup, version-resolve |
|
|
26
|
+
| `@kashscript/lexicons/engine` | `validateEvent` / `validateBody` / `getSchemaDefinition` |
|
|
27
|
+
| `@kashscript/lexicons/json-schema` | Export lexicons as JSON Schema (draft 2020-12) |
|
|
28
|
+
| `@kashscript/lexicons/semver` | Strict semver for lexicon evolution |
|
|
29
|
+
| `@kashscript/lexicons/extensions/social` | The `kash.social.*` vocabulary |
|
|
30
|
+
| `@kashscript/lexicons/extensions/trade` | The `kash.trade.*` vocabulary |
|
|
31
|
+
| `@kashscript/lexicons/extensions/zkp` | The `kash.zkp.*` vocabulary |
|
|
32
|
+
| `@kashscript/lexicons/extensions/{education,civic,community}` | Further opt-in vocabularies |
|
|
33
|
+
| `@kashscript/lexicons/extensions/door` | `kash.rule@1.0.0` and `kash.rule@1.1.0` (a door's published rule; 1.1.0 adds its address, drafts, parameter bounds and each criterion's subject) and `kash.adoption@1.0.0` (an anchor adopts a rule with local values within its bounds). All three are public, organisation-authored records (d59). The decision receipt is the person's record, so its shape lives in `@kashscript/predicate` since `0.3.0-alpha.0`. Meaning is checked by `@kashscript/predicate`; see `specs/rule.md`, `specs/adoption.md` and `specs/decision.md` |
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Quickstart
|
|
38
|
+
|
|
39
|
+
```typescript
|
|
40
|
+
import { S } from "@kashscript/lexicons/schema";
|
|
41
|
+
import { LexiconRegistry } from "@kashscript/lexicons/registry";
|
|
42
|
+
import { validateBody, validateEvent } from "@kashscript/lexicons/engine";
|
|
43
|
+
|
|
44
|
+
// 1. Define a body schema with the `S` builder (3rd arg of S.object = required keys).
|
|
45
|
+
const noteSchema = S.object(
|
|
46
|
+
{
|
|
47
|
+
text: S.string({ maxLength: 280 }),
|
|
48
|
+
createdAt: S.string({ format: "iso8601" }),
|
|
49
|
+
},
|
|
50
|
+
["text", "createdAt"],
|
|
51
|
+
);
|
|
52
|
+
|
|
53
|
+
// 2. Register it under `<nsid>@<semver>` (register() is chainable).
|
|
54
|
+
const registry = new LexiconRegistry();
|
|
55
|
+
registry.register("com.example.note@1.0.0", noteSchema, { title: "Example Note" });
|
|
56
|
+
|
|
57
|
+
// 3a. Validate a record body before signing it.
|
|
58
|
+
const bodyResult = validateBody(
|
|
59
|
+
"com.example.note@1.0.0",
|
|
60
|
+
{ text: "hello world", createdAt: new Date().toISOString() },
|
|
61
|
+
registry,
|
|
62
|
+
);
|
|
63
|
+
if (!bodyResult.ok) console.error(bodyResult.errors); // [{ path, message, received }]
|
|
64
|
+
|
|
65
|
+
// 3b. Or validate a full signed Kash-Event envelope (header.lexicon picks the schema).
|
|
66
|
+
const eventResult = validateEvent(incomingEvent, registry); // incomingEvent: unknown
|
|
67
|
+
if (eventResult.ok) console.log("valid:", eventResult.value.header.lexicon);
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## License
|
|
73
|
+
|
|
74
|
+
Apache-2.0. Also covered by SSLA v1.0 Schedule A (Permissive). See [LICENSE](./LICENSE).
|
|
@@ -11,18 +11,34 @@
|
|
|
11
11
|
* organisation-authored. Signed by its author as a DSSE envelope
|
|
12
12
|
* (`application/vnd.kash.rule+json`).
|
|
13
13
|
*
|
|
14
|
-
* kash.
|
|
15
|
-
* The
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
* **It is the person's record, so it is never published** — it is listed in
|
|
20
|
-
* `PERSONAL_LEXICONS`, which muffler's guard refuses.
|
|
14
|
+
* kash.rule@1.1.0 (KS-Q1b; ECOSYSTEM d85(b)–(c))
|
|
15
|
+
* The same rule with its **address** — sector (ISIC Revision 5), anchor
|
|
16
|
+
* family, authority, journey and the seven givens — a **subject** on each
|
|
17
|
+
* criterion, **bounds** on the parameters an adopter may set, and `draft`.
|
|
18
|
+
* Every new field is optional, so every 1.0.0 body is a 1.1.0 body.
|
|
21
19
|
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
20
|
+
* kash.rule@1.2.0 (KS-Q11)
|
|
21
|
+
* The same rule, with `meta.holder: "countersigner"` on a `kash-artifact`
|
|
22
|
+
* query: the presentation is bound to the one key whose acceptance in the
|
|
23
|
+
* countersign bundle verifies (a guest who accepted a host's receipt).
|
|
24
|
+
* Optional, so every 1.1.0 body is a 1.2.0 body; a 1.1.0 reader refuses a
|
|
25
|
+
* rule that names it, rather than binding it to the requester.
|
|
26
|
+
*
|
|
27
|
+
* kash.adoption@1.0.0
|
|
28
|
+
* An anchor — an organisation — adopts one version of a rule with its own
|
|
29
|
+
* values for the parameters the rule bounds. Public, signed by the anchor
|
|
30
|
+
* as DSSE (`application/vnd.kash.adoption+json`). An adoption is the
|
|
31
|
+
* anchor's pact (d85(d)): rulebooks written once, executed locally.
|
|
32
|
+
*
|
|
33
|
+
* Every shape is closed: a field this schema does not name is refused, so none
|
|
34
|
+
* can carry a score or a person's identity. Meaning — the floor's refusals, the
|
|
35
|
+
* FEEL check, bounds, completeness — is checked by `@kashscript/predicate`;
|
|
36
|
+
* this extension is the shape.
|
|
37
|
+
*
|
|
38
|
+
* **The decision receipt is not here** (since 0.3.0): it is the person's own
|
|
39
|
+
* record, a credential they hold, so its schema lives with the package that
|
|
40
|
+
* issues and checks it — `@kashscript/predicate/decision`. d59 makes lexicons
|
|
41
|
+
* the home of public, organisation-authored records only.
|
|
26
42
|
*
|
|
27
43
|
* Import path: `@kashscript/lexicons/extensions/door`.
|
|
28
44
|
*/
|
|
@@ -54,6 +70,13 @@ export interface DcqlMeta {
|
|
|
54
70
|
readonly attestation?: "countersigned" | "issuer-signed";
|
|
55
71
|
/** `kash-artifact`: where in the signed payload the holder's key is named, for the presentation's binding. */
|
|
56
72
|
readonly holder_path?: readonly ClaimPathElement[];
|
|
73
|
+
/**
|
|
74
|
+
* `kash-artifact`, **kash.rule@1.2.0** (KS-Q11): `countersigner` names the
|
|
75
|
+
* holder as the one key whose acceptance in the countersign bundle verifies —
|
|
76
|
+
* the party who countersigned these bytes, not the one who asked. Never with
|
|
77
|
+
* `holder_path`; only with `attestation: countersigned`.
|
|
78
|
+
*/
|
|
79
|
+
readonly holder?: "countersigner";
|
|
57
80
|
}
|
|
58
81
|
export interface DcqlCredentialQuery {
|
|
59
82
|
readonly id: string;
|
|
@@ -176,50 +199,138 @@ export interface RuleBody {
|
|
|
176
199
|
export declare const CRITERION_SCHEMA: ObjectSchema;
|
|
177
200
|
export declare const KASH_RULE_BODY_SCHEMA: ObjectSchema;
|
|
178
201
|
export declare const KASH_RULE_LEXICON: LexiconDef;
|
|
179
|
-
export declare const
|
|
180
|
-
|
|
181
|
-
export
|
|
182
|
-
|
|
183
|
-
|
|
202
|
+
export declare const KASH_RULE_1_1_ID: "kash.rule@1.1.0";
|
|
203
|
+
/** What a criterion is about. d85(b) rule 1 binds when the subject is a person (or an organisation's people). */
|
|
204
|
+
export declare const SUBJECTS: readonly ["person", "organisation", "product", "place"];
|
|
205
|
+
export type Subject = (typeof SUBJECTS)[number];
|
|
206
|
+
export declare const ANCHOR_FAMILIES: readonly ["movement", "knowledge", "work", "community"];
|
|
207
|
+
export declare const AUTHORITY_KINDS: readonly ["floor", "law", "standard", "institution", "community"];
|
|
208
|
+
export declare const JOURNEYS: readonly ["move", "learn", "earn-and-spend", "live", "leisure"];
|
|
209
|
+
export declare const GIVENS: readonly ["area", "spaces", "capitals", "culture", "economy", "time", "relations"];
|
|
210
|
+
export type Given = (typeof GIVENS)[number];
|
|
211
|
+
export declare const SPACE_KINDS: readonly ["premises", "workplace", "campus", "site", "vehicle", "home", "public-space", "online"];
|
|
212
|
+
export declare const CAPITAL_KINDS: readonly ["people", "systems", "resources"];
|
|
213
|
+
export declare const ECONOMY_LEVELS: readonly ["primary", "secondary", "tertiary", "quaternary", "quinary", "uncounted"];
|
|
214
|
+
/** Bounds an adopter may set a parameter within: a range, or a list. */
|
|
215
|
+
export type ParameterBounds = {
|
|
216
|
+
readonly min?: string | number;
|
|
217
|
+
readonly max?: string | number;
|
|
184
218
|
} | {
|
|
185
|
-
readonly
|
|
186
|
-
readonly role: string;
|
|
187
|
-
readonly seat: string;
|
|
188
|
-
readonly signature: string;
|
|
219
|
+
readonly allowed: readonly (string | number | boolean)[];
|
|
189
220
|
};
|
|
190
|
-
export interface
|
|
221
|
+
export interface RuleParameter1_1 extends RuleParameter {
|
|
222
|
+
readonly bounds?: ParameterBounds;
|
|
223
|
+
}
|
|
224
|
+
export interface Criterion1_1 extends Criterion {
|
|
225
|
+
readonly subject?: Subject;
|
|
226
|
+
}
|
|
227
|
+
export interface RuleRef {
|
|
228
|
+
readonly rule: string;
|
|
229
|
+
readonly version?: number;
|
|
230
|
+
}
|
|
231
|
+
export interface Givens {
|
|
232
|
+
readonly area?: {
|
|
233
|
+
readonly text: string;
|
|
234
|
+
readonly anywhere?: boolean;
|
|
235
|
+
readonly countries?: readonly string[];
|
|
236
|
+
readonly places?: readonly string[];
|
|
237
|
+
};
|
|
238
|
+
readonly spaces?: {
|
|
239
|
+
readonly text: string;
|
|
240
|
+
readonly kinds?: readonly (typeof SPACE_KINDS)[number][];
|
|
241
|
+
readonly places?: readonly string[];
|
|
242
|
+
};
|
|
243
|
+
readonly capitals?: {
|
|
244
|
+
readonly text: string;
|
|
245
|
+
readonly needs?: readonly {
|
|
246
|
+
readonly kind: (typeof CAPITAL_KINDS)[number];
|
|
247
|
+
readonly what: string;
|
|
248
|
+
}[];
|
|
249
|
+
};
|
|
250
|
+
readonly culture?: {
|
|
251
|
+
readonly text: string;
|
|
252
|
+
readonly codes?: readonly {
|
|
253
|
+
readonly title: string;
|
|
254
|
+
readonly url?: string;
|
|
255
|
+
}[];
|
|
256
|
+
readonly languages?: readonly string[];
|
|
257
|
+
};
|
|
258
|
+
readonly economy?: {
|
|
259
|
+
readonly text: string;
|
|
260
|
+
readonly level?: (typeof ECONOMY_LEVELS)[number];
|
|
261
|
+
};
|
|
262
|
+
readonly time?: {
|
|
263
|
+
readonly text: string;
|
|
264
|
+
readonly lasts?: string;
|
|
265
|
+
readonly renews?: string;
|
|
266
|
+
};
|
|
267
|
+
readonly relations?: {
|
|
268
|
+
readonly text: string;
|
|
269
|
+
readonly recognises?: readonly RuleRef[];
|
|
270
|
+
readonly within?: readonly {
|
|
271
|
+
readonly id: string;
|
|
272
|
+
}[];
|
|
273
|
+
};
|
|
274
|
+
}
|
|
275
|
+
/** Every rule has an address (d85(c)). */
|
|
276
|
+
export interface RuleAddress {
|
|
277
|
+
/** ISIC Revision 5: a section (A–V) or a two-digit division. */
|
|
278
|
+
readonly sector: {
|
|
279
|
+
readonly classification: "ISIC";
|
|
280
|
+
readonly revision: "5";
|
|
281
|
+
readonly code: string;
|
|
282
|
+
};
|
|
283
|
+
readonly anchorFamily: (typeof ANCHOR_FAMILIES)[number];
|
|
284
|
+
readonly authority: {
|
|
285
|
+
readonly kind: (typeof AUTHORITY_KINDS)[number];
|
|
286
|
+
readonly name?: string;
|
|
287
|
+
readonly url?: string;
|
|
288
|
+
};
|
|
289
|
+
readonly journey: (typeof JOURNEYS)[number];
|
|
290
|
+
/** The seven givens. A rule is complete when all seven are answered. */
|
|
291
|
+
readonly givens: Givens;
|
|
292
|
+
}
|
|
293
|
+
export interface RuleBody1_1 extends Omit<RuleBody, "parameters" | "criteria"> {
|
|
294
|
+
readonly parameters?: Readonly<Record<string, RuleParameter1_1>>;
|
|
295
|
+
readonly criteria: readonly Criterion1_1[];
|
|
296
|
+
readonly address?: RuleAddress;
|
|
297
|
+
/** Published for reading and comment, never decided under. An incomplete rule publishes only as a draft. */
|
|
298
|
+
readonly draft?: boolean;
|
|
299
|
+
}
|
|
300
|
+
export declare const RULE_ADDRESS_SCHEMA: ObjectSchema;
|
|
301
|
+
export declare const CRITERION_1_1_SCHEMA: ObjectSchema;
|
|
302
|
+
export declare const KASH_RULE_1_1_BODY_SCHEMA: ObjectSchema;
|
|
303
|
+
export declare const KASH_RULE_1_1_LEXICON: LexiconDef;
|
|
304
|
+
export declare const KASH_RULE_1_2_ID: "kash.rule@1.2.0";
|
|
305
|
+
/** The DCQL credential query of 1.2.0: 1.1.0's, with `meta.holder`. */
|
|
306
|
+
export declare const DCQL_CREDENTIAL_QUERY_1_2_SCHEMA: ObjectSchema;
|
|
307
|
+
export declare const CRITERION_1_2_SCHEMA: ObjectSchema;
|
|
308
|
+
export declare const KASH_RULE_1_2_BODY_SCHEMA: ObjectSchema;
|
|
309
|
+
export declare const KASH_RULE_1_2_LEXICON: LexiconDef;
|
|
310
|
+
export declare const KASH_ADOPTION_NSID: "kash.adoption";
|
|
311
|
+
export declare const KASH_ADOPTION_ID: "kash.adoption@1.0.0";
|
|
312
|
+
export interface AdoptionBody {
|
|
313
|
+
/** `did:kash:<anchor>/adoption/<slug>`. */
|
|
314
|
+
readonly id: string;
|
|
315
|
+
/** The adopting organisation — the anchor whose door decides under it. */
|
|
316
|
+
readonly anchor: string;
|
|
191
317
|
readonly rule: {
|
|
192
318
|
readonly id: string;
|
|
193
319
|
readonly version: number;
|
|
194
320
|
readonly hash: string;
|
|
195
321
|
};
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
readonly
|
|
200
|
-
readonly
|
|
201
|
-
readonly
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
readonly reliedOn: readonly string[];
|
|
205
|
-
readonly decidedBy: DecidedBy;
|
|
206
|
-
readonly automatic: boolean;
|
|
207
|
-
/** A refusal or a partial grant names the unmet criterion and that the receipts were read (P3). */
|
|
208
|
-
readonly refusal?: {
|
|
209
|
-
readonly unmet: readonly string[];
|
|
210
|
-
readonly receiptsRead: true;
|
|
211
|
-
};
|
|
212
|
-
readonly decidedAt: string;
|
|
213
|
-
readonly contestUntil: string;
|
|
322
|
+
/** Local values for the parameters the rule bounds — nothing else. */
|
|
323
|
+
readonly parameters: Readonly<Record<string, string | number | boolean>>;
|
|
324
|
+
/** It renews and ends, no later than the rule (d43). */
|
|
325
|
+
readonly dates: {
|
|
326
|
+
readonly adopted: string;
|
|
327
|
+
readonly renewBy: string;
|
|
328
|
+
readonly endsAt: string;
|
|
329
|
+
};
|
|
214
330
|
readonly practice?: boolean;
|
|
215
331
|
}
|
|
216
|
-
export declare const
|
|
217
|
-
export declare const
|
|
332
|
+
export declare const KASH_ADOPTION_BODY_SCHEMA: ObjectSchema;
|
|
333
|
+
export declare const KASH_ADOPTION_LEXICON: LexiconDef;
|
|
334
|
+
/** Every door lexicon: the rule at 1.0.0, 1.1.0 and 1.2.0, and the adoption. All public and organisation-authored (d59). */
|
|
218
335
|
export declare const DOOR_LEXICONS: readonly LexiconDef[];
|
|
219
|
-
/**
|
|
220
|
-
* NSIDs whose records belong to a person and are never published. muffler's
|
|
221
|
-
* guard (KS-N1) refuses them; d59: muffler and the lexicons publish public,
|
|
222
|
-
* organisation-authored records only.
|
|
223
|
-
*/
|
|
224
|
-
export declare const PERSONAL_LEXICONS: readonly string[];
|
|
225
336
|
//# sourceMappingURL=door.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"door.d.ts","sourceRoot":"","sources":["../../src/extensions/door.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"door.d.ts","sourceRoot":"","sources":["../../src/extensions/door.ts"],"names":[],"mappings":"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"}
|