# shared/manifests/sentence.manifest.ts

> 124 lines of code and 15 definitions.

Tree: Governance tree
Language: typescript
Layer: infrastructure
Canonical: https://banes-lab.com/anatomy/governance#file-governance-shared-manifests-sentence-manifest-ts
Source text: https://banes-lab.com/source/governance/shared/manifests/sentence.manifest.ts.txt

Listed in [shared/manifests](https://banes-lab.com/api/source/governance/shared/manifests.md), after [shared/manifests/punctuation.manifest.ts](https://banes-lab.com/source/governance/shared/manifests/punctuation.manifest.ts.md) and before [shared/manifests/taxonomy.manifest.ts](https://banes-lab.com/source/governance/shared/manifests/taxonomy.manifest.ts.md).

## Definitions

- `SENTENCE_CAP` (lexical_declaration, line 1, exported)
- `JOIN_CAP` (lexical_declaration, line 3, exported)
- `SENTENCE_TERMINALS` (lexical_declaration, line 5, exported)
- `SENTENCE_WORD_STOPS` (lexical_declaration, line 7, exported)
- `COORDINATORS` (lexical_declaration, line 26, exported)
- `PASSIVE_AUXILIARIES` (lexical_declaration, line 28, exported)
- `PASSIVE_ADVERB_SUFFIX` (lexical_declaration, line 30, exported)
- `PASSIVE_ADVERBS` (lexical_declaration, line 32, exported)
- `PARTICIPLE_SUFFIX` (lexical_declaration, line 34, exported)
- `PARTICIPLE_MIN_LENGTH` (lexical_declaration, line 36, exported)
- `NOT_PARTICIPLES` (lexical_declaration, line 38, exported)
- `IRREGULAR_PARTICIPLES` (lexical_declaration, line 40, exported)
- `AGENT_MARKER` (lexical_declaration, line 83, exported)
- `NON_IMPERATIVE_OPENERS` (lexical_declaration, line 85, exported)
- `IMPERATIVE_OPENERS` (lexical_declaration, line 109, exported)

## Source

```typescript
export const SENTENCE_CAP = 54;

export const JOIN_CAP = 1;

export const SENTENCE_TERMINALS: ReadonlySet<string> = new Set([".", "!", "?"]);

export const SENTENCE_WORD_STOPS: ReadonlySet<string> = new Set([
    " ",
    "\n",
    "\t",
    ",",
    ".",
    ";",
    ":",
    "!",
    "?",
    "(",
    ")",
    '"',
    "'",
    "—",
    "*",
    "`",
]);

export const COORDINATORS: ReadonlySet<string> = new Set(["and", "then", "or", "but"]);

export const PASSIVE_AUXILIARIES: ReadonlySet<string> = new Set(["is", "are", "was", "were", "be", "been", "being"]);

export const PASSIVE_ADVERB_SUFFIX = "ly";

export const PASSIVE_ADVERBS: ReadonlySet<string> = new Set(["not", "never", "also", "always", "already", "still"]);

export const PARTICIPLE_SUFFIX = "ed";

export const PARTICIPLE_MIN_LENGTH = 4;

export const NOT_PARTICIPLES: ReadonlySet<string> = new Set(["hundred", "indeed", "naked", "sacred", "wicked"]);

export const IRREGULAR_PARTICIPLES: ReadonlySet<string> = new Set([
    "begun",
    "bound",
    "broken",
    "brought",
    "built",
    "caught",
    "chosen",
    "done",
    "drawn",
    "driven",
    "found",
    "given",
    "held",
    "hidden",
    "kept",
    "known",
    "left",
    "lost",
    "made",
    "meant",
    "met",
    "paid",
    "read",
    "run",
    "said",
    "seen",
    "sent",
    "set",
    "shown",
    "split",
    "spoken",
    "spread",
    "taken",
    "taught",
    "thought",
    "thrown",
    "told",
    "torn",
    "understood",
    "written",
]);

export const AGENT_MARKER = "by";

export const NON_IMPERATIVE_OPENERS: ReadonlySet<string> = new Set([
    "a",
    "an",
    "the",
    "this",
    "that",
    "these",
    "those",
    "it",
    "its",
    "there",
    "i",
    "we",
    "you",
    "he",
    "she",
    "they",
    "when",
    "if",
    "because",
    "while",
    "since",
]);

export const IMPERATIVE_OPENERS: ReadonlySet<string> = new Set([
    "add",
    "ask",
    "avoid",
    "check",
    "delete",
    "do",
    "fix",
    "give",
    "hold",
    "keep",
    "let",
    "make",
    "measure",
    "move",
    "name",
    "never",
    "prefer",
    "put",
    "read",
    "report",
    "run",
    "set",
    "split",
    "state",
    "treat",
    "use",
    "verify",
    "write",
]);
```
