@deadair/sdk 0.7.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 (155) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +109 -0
  3. package/dist/activity/activity.client.d.ts +12 -0
  4. package/dist/activity/activity.client.d.ts.map +1 -0
  5. package/dist/activity/types/activity.types.d.ts +60 -0
  6. package/dist/activity/types/activity.types.d.ts.map +1 -0
  7. package/dist/activity/types/index.d.ts +2 -0
  8. package/dist/activity/types/index.d.ts.map +1 -0
  9. package/dist/art/art.client.d.ts +21 -0
  10. package/dist/art/art.client.d.ts.map +1 -0
  11. package/dist/authentication/authentication.client.d.ts +33 -0
  12. package/dist/authentication/authentication.client.d.ts.map +1 -0
  13. package/dist/authentication/authentication.factor.client.d.ts +41 -0
  14. package/dist/authentication/authentication.factor.client.d.ts.map +1 -0
  15. package/dist/authentication/authentication.sessions.client.d.ts +20 -0
  16. package/dist/authentication/authentication.sessions.client.d.ts.map +1 -0
  17. package/dist/authentication/types/authentication.types.d.ts +846 -0
  18. package/dist/authentication/types/authentication.types.d.ts.map +1 -0
  19. package/dist/authentication/types/index.d.ts +3 -0
  20. package/dist/authentication/types/index.d.ts.map +1 -0
  21. package/dist/authentication/types/registration.types.d.ts +336 -0
  22. package/dist/authentication/types/registration.types.d.ts.map +1 -0
  23. package/dist/catalog/catalog.client.d.ts +96 -0
  24. package/dist/catalog/catalog.client.d.ts.map +1 -0
  25. package/dist/catalog/types/catalog.types.d.ts +593 -0
  26. package/dist/catalog/types/catalog.types.d.ts.map +1 -0
  27. package/dist/catalog/types/index.d.ts +2 -0
  28. package/dist/catalog/types/index.d.ts.map +1 -0
  29. package/dist/charts/charts.client.d.ts +17 -0
  30. package/dist/charts/charts.client.d.ts.map +1 -0
  31. package/dist/charts/types/charts.types.d.ts +54 -0
  32. package/dist/charts/types/charts.types.d.ts.map +1 -0
  33. package/dist/charts/types/index.d.ts +2 -0
  34. package/dist/charts/types/index.d.ts.map +1 -0
  35. package/dist/deadair.sdk.d.ts +49 -0
  36. package/dist/deadair.sdk.d.ts.map +1 -0
  37. package/dist/director/director.client.d.ts +98 -0
  38. package/dist/director/director.client.d.ts.map +1 -0
  39. package/dist/director/types/clock.types.d.ts +57 -0
  40. package/dist/director/types/clock.types.d.ts.map +1 -0
  41. package/dist/director/types/director.types.d.ts +212 -0
  42. package/dist/director/types/director.types.d.ts.map +1 -0
  43. package/dist/director/types/index.d.ts +3 -0
  44. package/dist/director/types/index.d.ts.map +1 -0
  45. package/dist/history/history.client.d.ts +12 -0
  46. package/dist/history/history.client.d.ts.map +1 -0
  47. package/dist/history/types/history.types.d.ts +44 -0
  48. package/dist/history/types/history.types.d.ts.map +1 -0
  49. package/dist/history/types/index.d.ts +2 -0
  50. package/dist/history/types/index.d.ts.map +1 -0
  51. package/dist/index.d.ts +49 -0
  52. package/dist/index.d.ts.map +1 -0
  53. package/dist/index.js +3509 -0
  54. package/dist/index.js.map +1 -0
  55. package/dist/news/news.client.d.ts +17 -0
  56. package/dist/news/news.client.d.ts.map +1 -0
  57. package/dist/news/types/index.d.ts +2 -0
  58. package/dist/news/types/index.d.ts.map +1 -0
  59. package/dist/news/types/news.types.d.ts +61 -0
  60. package/dist/news/types/news.types.d.ts.map +1 -0
  61. package/dist/nowplaying/nowplaying.client.d.ts +12 -0
  62. package/dist/nowplaying/nowplaying.client.d.ts.map +1 -0
  63. package/dist/nowplaying/types/index.d.ts +2 -0
  64. package/dist/nowplaying/types/index.d.ts.map +1 -0
  65. package/dist/nowplaying/types/nowplaying.types.d.ts +59 -0
  66. package/dist/nowplaying/types/nowplaying.types.d.ts.map +1 -0
  67. package/dist/onboarding/onboarding.client.d.ts +11 -0
  68. package/dist/onboarding/onboarding.client.d.ts.map +1 -0
  69. package/dist/onboarding/types/index.d.ts +2 -0
  70. package/dist/onboarding/types/index.d.ts.map +1 -0
  71. package/dist/onboarding/types/onboarding.types.d.ts +41 -0
  72. package/dist/onboarding/types/onboarding.types.d.ts.map +1 -0
  73. package/dist/personas/personas.client.d.ts +167 -0
  74. package/dist/personas/personas.client.d.ts.map +1 -0
  75. package/dist/personas/types/index.d.ts +2 -0
  76. package/dist/personas/types/index.d.ts.map +1 -0
  77. package/dist/personas/types/personas.types.d.ts +545 -0
  78. package/dist/personas/types/personas.types.d.ts.map +1 -0
  79. package/dist/playlists/playlists.client.d.ts +17 -0
  80. package/dist/playlists/playlists.client.d.ts.map +1 -0
  81. package/dist/playlists/types/index.d.ts +2 -0
  82. package/dist/playlists/types/index.d.ts.map +1 -0
  83. package/dist/playlists/types/playlists.types.d.ts +71 -0
  84. package/dist/playlists/types/playlists.types.d.ts.map +1 -0
  85. package/dist/playout/playout.client.d.ts +37 -0
  86. package/dist/playout/playout.client.d.ts.map +1 -0
  87. package/dist/playout/types/index.d.ts +2 -0
  88. package/dist/playout/types/index.d.ts.map +1 -0
  89. package/dist/playout/types/playout.types.d.ts +163 -0
  90. package/dist/playout/types/playout.types.d.ts.map +1 -0
  91. package/dist/plugins/plugins.client.d.ts +107 -0
  92. package/dist/plugins/plugins.client.d.ts.map +1 -0
  93. package/dist/plugins/types/index.d.ts +2 -0
  94. package/dist/plugins/types/index.d.ts.map +1 -0
  95. package/dist/plugins/types/plugins.types.d.ts +330 -0
  96. package/dist/plugins/types/plugins.types.d.ts.map +1 -0
  97. package/dist/productions/productions.client.d.ts +22 -0
  98. package/dist/productions/productions.client.d.ts.map +1 -0
  99. package/dist/productions/types/index.d.ts +2 -0
  100. package/dist/productions/types/index.d.ts.map +1 -0
  101. package/dist/productions/types/productions.types.d.ts +90 -0
  102. package/dist/productions/types/productions.types.d.ts.map +1 -0
  103. package/dist/render/render.client.d.ts +210 -0
  104. package/dist/render/render.client.d.ts.map +1 -0
  105. package/dist/render/types/index.d.ts +2 -0
  106. package/dist/render/types/index.d.ts.map +1 -0
  107. package/dist/render/types/render.types.d.ts +518 -0
  108. package/dist/render/types/render.types.d.ts.map +1 -0
  109. package/dist/schedule/schedule.client.d.ts +37 -0
  110. package/dist/schedule/schedule.client.d.ts.map +1 -0
  111. package/dist/schedule/types/index.d.ts +2 -0
  112. package/dist/schedule/types/index.d.ts.map +1 -0
  113. package/dist/schedule/types/schedule.types.d.ts +119 -0
  114. package/dist/schedule/types/schedule.types.d.ts.map +1 -0
  115. package/dist/sdk-options.d.ts +45 -0
  116. package/dist/sdk-options.d.ts.map +1 -0
  117. package/dist/settings/settings.client.d.ts +17 -0
  118. package/dist/settings/settings.client.d.ts.map +1 -0
  119. package/dist/settings/types/index.d.ts +2 -0
  120. package/dist/settings/types/index.d.ts.map +1 -0
  121. package/dist/settings/types/settings.types.d.ts +35 -0
  122. package/dist/settings/types/settings.types.d.ts.map +1 -0
  123. package/dist/shared/types/index.d.ts +2 -0
  124. package/dist/shared/types/index.d.ts.map +1 -0
  125. package/dist/shared/types/pagination.d.ts +34 -0
  126. package/dist/shared/types/pagination.d.ts.map +1 -0
  127. package/dist/station/station.client.d.ts +49 -0
  128. package/dist/station/station.client.d.ts.map +1 -0
  129. package/dist/station/types/index.d.ts +4 -0
  130. package/dist/station/types/index.d.ts.map +1 -0
  131. package/dist/station/types/logs.types.d.ts +73 -0
  132. package/dist/station/types/logs.types.d.ts.map +1 -0
  133. package/dist/station/types/station.types.d.ts +120 -0
  134. package/dist/station/types/station.types.d.ts.map +1 -0
  135. package/dist/station/types/traces.types.d.ts +91 -0
  136. package/dist/station/types/traces.types.d.ts.map +1 -0
  137. package/dist/storage/storage.client.d.ts +12 -0
  138. package/dist/storage/storage.client.d.ts.map +1 -0
  139. package/dist/storage/types/index.d.ts +2 -0
  140. package/dist/storage/types/index.d.ts.map +1 -0
  141. package/dist/storage/types/storage.types.d.ts +59 -0
  142. package/dist/storage/types/storage.types.d.ts.map +1 -0
  143. package/dist/stream/stream.client.d.ts +32 -0
  144. package/dist/stream/stream.client.d.ts.map +1 -0
  145. package/dist/stream/types/index.d.ts +2 -0
  146. package/dist/stream/types/index.d.ts.map +1 -0
  147. package/dist/stream/types/stream.types.d.ts +47 -0
  148. package/dist/stream/types/stream.types.d.ts.map +1 -0
  149. package/dist/topics/topics.client.d.ts +32 -0
  150. package/dist/topics/topics.client.d.ts.map +1 -0
  151. package/dist/topics/types/index.d.ts +2 -0
  152. package/dist/topics/types/index.d.ts.map +1 -0
  153. package/dist/topics/types/topics.types.d.ts +65 -0
  154. package/dist/topics/types/topics.types.d.ts.map +1 -0
  155. package/package.json +53 -0
@@ -0,0 +1,545 @@
1
+ /**
2
+ * Who the station is when it opens its mouth: the character a model writes in, the phrasings underneath it, the voice that says them, and what it plays
3
+ * generated from [Persona](../../../../../apps/api/data/contracts/personas/personas.types.ck#L8)
4
+ */
5
+ export interface Persona {
6
+ id: string;
7
+ /** A stable slug, unique per station. What a log line names and what a seeded persona is recognised by */
8
+ key: string;
9
+ /** What this character is FOR. `host` is the station's own voice; a `caller` phones in to a production, is cast per programme, and can never be put on air. Absent means `host`, so a form written before callers existed still means what it meant */
10
+ kind?: 'host' | 'caller';
11
+ label: string;
12
+ /** Completes "You are …". Who they ARE; the sheet below carries how they talk */
13
+ style: string;
14
+ /** The name this character goes by on air, overriding the station's own while it is active */
15
+ djName?: string;
16
+ /** The station voice that speaks this persona, as the id a speech plugin maps. Empty means that plugin's default */
17
+ voice?: string;
18
+ /** The soundboard this character has to hand, as the name of a board in the pad library. Empty for a presenter who works without one. What reaches a model is the names of the pads on that board, never this word */
19
+ soundboard?: string;
20
+ /** The dialect: grammar and substitutions that apply to every sentence rather than to a subject */
21
+ diction?: string[];
22
+ /** Words whose presence proves the dialect survived. What a model's answer is checked against */
23
+ dictionMarkers?: string[];
24
+ /** What they always and never do on air */
25
+ quirks?: string[];
26
+ /** The standing subjects they keep coming back to. Exactly ONE reaches any one break, chosen by rotation, which is what makes a character sound like it has things on its mind rather than one thing */
27
+ preoccupations?: string[];
28
+ /** Signature phrases, asked for sparingly */
29
+ catchphrases?: string[];
30
+ /** Wording that breaks the character */
31
+ avoid?: string[];
32
+ /** A couple of grounded facts they may self-reference */
33
+ background?: string;
34
+ /** How much this character says. Absent for the station's ordinary length; the rung above it is `latitude`, which is a different kind of thing rather than a longer one */
35
+ brevity?: 'short' | 'one-line';
36
+ /** How much room this character is given, above the station's ordinary discipline: a bigger word ceiling, a licence to follow the thought instead of making one point, and at `unleashed` no restraint on how it says it. Offered only by the ordinary talk break, always outranked by the station's content policy, and it switches off no refusal */
37
+ latitude?: 'loose' | 'unleashed';
38
+ /** How often this character talks, as a scale on the station's own interval between breaks. Absent is `ordinary`, which is that interval unchanged. The quietest rung is half as often and never silence: turning the station's breaks off is a station setting, and two switches for one thing can disagree */
39
+ chattiness?: 'reserved' | 'sparing' | 'ordinary' | 'chatty' | 'relentless';
40
+ /** How readily this character works one of its own stories into an ordinary talk break. Absent is `occasionally`, which offers one only where the station knows nothing about the records either side. The stories themselves are their own list, and a `story` band on the clock outranks this whatever it says */
41
+ storytelling?: 'never' | 'occasionally' | 'often';
42
+ /** Lines in their own voice, used as examples and as a console preview */
43
+ samples?: string[];
44
+ /** This character's own break phrasings, one per line. Empty means the station's global ones */
45
+ templates?: string;
46
+ /** Whether this is the one on air. At most one per station */
47
+ active: boolean;
48
+ }
49
+ export interface PersonaInput {
50
+ /** A stable slug, unique per station. What a log line names and what a seeded persona is recognised by */
51
+ key: string;
52
+ /** What this character is FOR. `host` is the station's own voice; a `caller` phones in to a production, is cast per programme, and can never be put on air. Absent means `host`, so a form written before callers existed still means what it meant */
53
+ kind?: 'host' | 'caller';
54
+ label: string;
55
+ /** Completes "You are …". Who they ARE; the sheet below carries how they talk */
56
+ style: string;
57
+ /** The name this character goes by on air, overriding the station's own while it is active */
58
+ djName?: string;
59
+ /** The station voice that speaks this persona, as the id a speech plugin maps. Empty means that plugin's default */
60
+ voice?: string;
61
+ /** The soundboard this character has to hand, as the name of a board in the pad library. Empty for a presenter who works without one. What reaches a model is the names of the pads on that board, never this word */
62
+ soundboard?: string;
63
+ /** The dialect: grammar and substitutions that apply to every sentence rather than to a subject */
64
+ diction?: string[];
65
+ /** Words whose presence proves the dialect survived. What a model's answer is checked against */
66
+ dictionMarkers?: string[];
67
+ /** What they always and never do on air */
68
+ quirks?: string[];
69
+ /** The standing subjects they keep coming back to. Exactly ONE reaches any one break, chosen by rotation, which is what makes a character sound like it has things on its mind rather than one thing */
70
+ preoccupations?: string[];
71
+ /** Signature phrases, asked for sparingly */
72
+ catchphrases?: string[];
73
+ /** Wording that breaks the character */
74
+ avoid?: string[];
75
+ /** A couple of grounded facts they may self-reference */
76
+ background?: string;
77
+ /** How much this character says. Absent for the station's ordinary length; the rung above it is `latitude`, which is a different kind of thing rather than a longer one */
78
+ brevity?: 'short' | 'one-line';
79
+ /** How much room this character is given, above the station's ordinary discipline: a bigger word ceiling, a licence to follow the thought instead of making one point, and at `unleashed` no restraint on how it says it. Offered only by the ordinary talk break, always outranked by the station's content policy, and it switches off no refusal */
80
+ latitude?: 'loose' | 'unleashed';
81
+ /** How often this character talks, as a scale on the station's own interval between breaks. Absent is `ordinary`, which is that interval unchanged. The quietest rung is half as often and never silence: turning the station's breaks off is a station setting, and two switches for one thing can disagree */
82
+ chattiness?: 'reserved' | 'sparing' | 'ordinary' | 'chatty' | 'relentless';
83
+ /** How readily this character works one of its own stories into an ordinary talk break. Absent is `occasionally`, which offers one only where the station knows nothing about the records either side. The stories themselves are their own list, and a `story` band on the clock outranks this whatever it says */
84
+ storytelling?: 'never' | 'occasionally' | 'often';
85
+ /** Lines in their own voice, used as examples and as a console preview */
86
+ samples?: string[];
87
+ /** This character's own break phrasings, one per line. Empty means the station's global ones */
88
+ templates?: string;
89
+ }
90
+ /**
91
+ * A description of a character, in the operator's own words
92
+ * generated from [PersonaRequest](../../../../../apps/api/data/contracts/personas/personas.types.ck#L38)
93
+ */
94
+ export interface PersonaRequest {
95
+ description: string;
96
+ }
97
+ /**
98
+ * A persona as a form's contents rather than a row: no id and not on air, because nothing has been
99
+ * saved. The console opens this in the editor and the operator saves it through POST /personas, which
100
+ * is what keeps generating a way of filling in the form rather than a second writer of the table
101
+ * generated from [PersonaDraftView](../../../../../apps/api/data/contracts/personas/personas.types.ck#L45)
102
+ */
103
+ export interface PersonaDraftView {
104
+ key: string;
105
+ label: string;
106
+ style: string;
107
+ djName?: string;
108
+ voice?: string;
109
+ soundboard?: string;
110
+ diction?: string[];
111
+ dictionMarkers?: string[];
112
+ quirks?: string[];
113
+ preoccupations?: string[];
114
+ catchphrases?: string[];
115
+ avoid?: string[];
116
+ background?: string;
117
+ brevity?: 'short' | 'one-line';
118
+ latitude?: 'loose' | 'unleashed';
119
+ chattiness?: 'reserved' | 'sparing' | 'ordinary' | 'chatty' | 'relentless';
120
+ storytelling?: 'never' | 'occasionally' | 'often';
121
+ samples?: string[];
122
+ templates?: string;
123
+ }
124
+ /**
125
+ * One thing this character has accumulated that its sheet does not hold. Two kinds and they are two
126
+ * different claims: `said` records something it actually put on air and carries the script as its
127
+ * evidence, so it is a record and goes straight into use; `trait` infers who the character is
128
+ * becoming, which nothing can verify, so a model's arrives `suggested` and the operator is the check
129
+ * generated from [PersonaNote](../../../../../apps/api/data/contracts/personas/personas.types.ck#L79)
130
+ */
131
+ export interface PersonaNote {
132
+ id: string;
133
+ /** `said` is what this character did, rendered beside the show's memory. `trait` is who it has become, rendered beside the sheet */
134
+ kind: 'said' | 'trait';
135
+ /** One sentence, because it shares a system turn with the grounding rules */
136
+ note: string;
137
+ /** `active` is carried into breaks. `rejected` outlives the pass that proposed it, or the same scripts propose it again forever */
138
+ state: 'active' | 'suggested' | 'rejected';
139
+ /** Who says so. `model` is the distil pass reading this character's own history back */
140
+ origin: 'operator' | 'model';
141
+ /** The attempt this was drawn from, while that row still exists. The nightly sweep takes it and the quote below stays */
142
+ sourceScriptId?: string;
143
+ /** The words that support it, as the station said them. What an operator actually accepts or rejects on, and required of anything a model wrote */
144
+ sourceQuote?: string;
145
+ /** When it was last carried into a break. Absent means never, which is what puts it at the front of the rotation */
146
+ lastUsedAt?: string;
147
+ createdAt: string;
148
+ }
149
+ export interface PersonaNoteInput {
150
+ /** `said` is what this character did, rendered beside the show's memory. `trait` is who it has become, rendered beside the sheet */
151
+ kind: 'said' | 'trait';
152
+ /** One sentence, because it shares a system turn with the grounding rules */
153
+ note: string;
154
+ }
155
+ /**
156
+ * A note an operator is writing by hand. Always active and always theirs; a proposal is something only the distil pass creates
157
+ * generated from [PersonaNoteWrite](../../../../../apps/api/data/contracts/personas/personas.types.ck#L96)
158
+ */
159
+ export interface PersonaNoteWrite {
160
+ kind: 'said' | 'trait';
161
+ note: string;
162
+ }
163
+ /**
164
+ * Accepting a proposal, turning one down, or taking a note out of use without losing it
165
+ * generated from [PersonaNoteState](../../../../../apps/api/data/contracts/personas/personas.types.ck#L101)
166
+ */
167
+ export interface PersonaNoteState {
168
+ state: 'active' | 'suggested' | 'rejected';
169
+ }
170
+ /**
171
+ * One thing a story has picked up since it was written. A row rather than a rewrite, so an invented clause can be turned down without losing the story
172
+ * generated from [PersonaStoryDetail](../../../../../apps/api/data/contracts/personas/personas.types.ck#L122)
173
+ */
174
+ export interface PersonaStoryDetail {
175
+ id: string;
176
+ detail: string;
177
+ state: 'active' | 'suggested' | 'rejected';
178
+ origin: 'operator' | 'model';
179
+ source?: string;
180
+ createdAt: string;
181
+ }
182
+ export interface PersonaStoryDetailInput {
183
+ detail: string;
184
+ }
185
+ /**
186
+ * A story an operator is writing by hand. Always active and always theirs; a proposal is something only the enrichment pass creates
187
+ * generated from [PersonaStoryWrite](../../../../../apps/api/data/contracts/personas/personas.types.ck#L136)
188
+ */
189
+ export interface PersonaStoryWrite {
190
+ title: string;
191
+ story: string;
192
+ }
193
+ /**
194
+ * One thing to add to a story that already exists
195
+ * generated from [PersonaStoryDetailWrite](../../../../../apps/api/data/contracts/personas/personas.types.ck#L141)
196
+ */
197
+ export interface PersonaStoryDetailWrite {
198
+ detail: string;
199
+ }
200
+ /**
201
+ * Accepting a proposal, turning one down, or taking a story out of the rotation without losing it
202
+ * generated from [PersonaStoryState](../../../../../apps/api/data/contracts/personas/personas.types.ck#L145)
203
+ */
204
+ export interface PersonaStoryState {
205
+ state: 'active' | 'suggested' | 'rejected';
206
+ }
207
+ /**
208
+ * One thing a story picked up after it was written, carried the same way and for the same reasons
209
+ * generated from [PersonaFileStoryDetail](../../../../../apps/api/data/contracts/personas/personas.types.ck#L178)
210
+ */
211
+ export interface PersonaFileStoryDetail {
212
+ detail: string;
213
+ state?: 'active' | 'rejected';
214
+ }
215
+ /**
216
+ * Something to know before pressing Import. Not a refusal: every one of these describes a state the
217
+ * station can be in perfectly well, and the point of saying it is that each one is otherwise
218
+ * discovered by putting the character on air
219
+ * generated from [PersonaImportNotice](../../../../../apps/api/data/contracts/personas/personas.types.ck#L226)
220
+ */
221
+ export interface PersonaImportNotice {
222
+ /** Which sort, so a console can group or ignore by it rather than parsing the sentence */
223
+ kind: 'format' | 'duplicate' | 'on-air' | 'clears' | 'voice' | 'soundboard' | 'phrasing' | 'markers';
224
+ /** The whole of it, in the station's own words, because its destination is a person */
225
+ message: string;
226
+ }
227
+ export interface PersonaImportNoticeInput {
228
+ }
229
+ /**
230
+ * One writer's turn at a rehearsal. Every writer asked is reported and not only the one that won: a
231
+ * model that declined and a floor that covered for it are two facts, and the second on its own reads
232
+ * as a station that never had a model configured
233
+ * generated from [PersonaRehearsalAttempt](../../../../../apps/api/data/contracts/personas/personas.types.ck#L243)
234
+ */
235
+ export interface PersonaRehearsalAttempt {
236
+ /** Which binding was asked, as `segments.writer` would record it */
237
+ writer: string;
238
+ /** written, declined or failed. Declined is the station working; failed is something to go and fix */
239
+ outcome: string;
240
+ /** Kept for every writer rather than only a slow one: "the model got slower" can only be asked of numbers gathered before anybody suspected it */
241
+ durationMs: number;
242
+ /** What it produced, when it produced anything usable */
243
+ script?: string;
244
+ /** Why it did not, when it did not. A sentence, because its destination is a person */
245
+ reason?: string;
246
+ }
247
+ /**
248
+ * What an operator asks for when they put a character through a playlist. The playlist is READ at the
249
+ * moment of asking and its records are stored on the run, so a list edited at the provider afterwards
250
+ * does not change what was measured
251
+ * generated from [PersonaAuditionRequest](../../../../../apps/api/data/contracts/personas/personas.types.ck#L265)
252
+ */
253
+ export interface PersonaAuditionRequest {
254
+ /** Which catalog plugin the playlist belongs to */
255
+ pluginId: string;
256
+ playlistId: string;
257
+ /** What the playlist is called, kept as a caption for the run. The console already holds it, and a run whose playlist is later renamed or deleted stays readable */
258
+ name?: string;
259
+ /** How many breaks to write. One more record than this is taken off the playlist, since a break sits between two */
260
+ limit?: number;
261
+ }
262
+ /**
263
+ * Where the records came from. A snapshot of the name rather than a reference, so a playlist renamed
264
+ * or deleted at the provider leaves a finished audition readable
265
+ * generated from [PersonaAuditionSource](../../../../../apps/api/data/contracts/personas/personas.types.ck#L274)
266
+ */
267
+ export interface PersonaAuditionSource {
268
+ pluginId: string;
269
+ playlistId: string;
270
+ name?: string;
271
+ }
272
+ /**
273
+ * One record, exactly as the writers were shown it
274
+ * generated from [PersonaAuditionRecord](../../../../../apps/api/data/contracts/personas/personas.types.ck#L281)
275
+ */
276
+ export interface PersonaAuditionRecord {
277
+ title: string;
278
+ /** The lead, as it should be read */
279
+ artist: string;
280
+ /** The catalog row, when the station holds this copy. Absent for a record it has never seen */
281
+ trackId?: string;
282
+ year?: number;
283
+ album?: string;
284
+ durationMs?: number;
285
+ }
286
+ /**
287
+ * generated from [PersonaList](../../../../../apps/api/data/contracts/personas/personas.types.ck#L33)
288
+ */
289
+ export interface PersonaList {
290
+ personas: Persona[];
291
+ }
292
+ export interface PersonaListInput {
293
+ personas: PersonaInput[];
294
+ }
295
+ /**
296
+ * One character's whole notebook, oldest first, in every state
297
+ * generated from [PersonaNoteList](../../../../../apps/api/data/contracts/personas/personas.types.ck#L91)
298
+ */
299
+ export interface PersonaNoteList {
300
+ personaId: string;
301
+ notes: PersonaNote[];
302
+ }
303
+ export interface PersonaNoteListInput {
304
+ personaId: string;
305
+ notes: PersonaNoteInput[];
306
+ }
307
+ /**
308
+ * Something that happened to this character, in its own telling. Not a claim about the world and never
309
+ * checked as one: `source` says where a proposal came from, for the operator reading it, and nothing
310
+ * downstream reads it as evidence — see `persona.story.ts` for why that is the load-bearing difference
311
+ * from a fact
312
+ * generated from [PersonaStory](../../../../../apps/api/data/contracts/personas/personas.types.ck#L109)
313
+ */
314
+ export interface PersonaStory {
315
+ id: string;
316
+ /** A short handle. Never spoken; what this list is read by and what a proposal names */
317
+ title: string;
318
+ /** The telling itself, in the character's voice. Already speakable, because the floor reads it as it stands */
319
+ story: string;
320
+ /** `active` can be told. `rejected` outlives the pass that proposed it, or the same catalogue proposes it forever */
321
+ state: 'active' | 'suggested' | 'rejected';
322
+ /** Who says so. `model` is the enrichment pass writing from what the station already holds */
323
+ origin: 'operator' | 'model';
324
+ /** Where a proposal came from, in the station's own words. Absent for anything an operator wrote */
325
+ source?: string;
326
+ /** What it has picked up since, in every state */
327
+ details: PersonaStoryDetail[];
328
+ /** Absent means never told, which is what puts it at the front of the rotation */
329
+ lastToldAt?: string;
330
+ /** How often it has gone out, which changes how the model is asked to tell it */
331
+ timesTold: number;
332
+ createdAt: string;
333
+ }
334
+ export interface PersonaStoryInput {
335
+ /** A short handle. Never spoken; what this list is read by and what a proposal names */
336
+ title: string;
337
+ /** The telling itself, in the character's voice. Already speakable, because the floor reads it as it stands */
338
+ story: string;
339
+ }
340
+ /**
341
+ * What a model wrote, and what had to be dropped to make it usable
342
+ * generated from [GeneratedPersona](../../../../../apps/api/data/contracts/personas/personas.types.ck#L68)
343
+ */
344
+ export interface GeneratedPersona {
345
+ persona: PersonaDraftView;
346
+ /** A couple of things that have happened to this character. Beside the form rather than in it, because they are their own table: the console saves the persona and then writes these through the stories route, so they go through the same validation an operator's own typing does */
347
+ stories: PersonaStoryWrite[];
348
+ /** Words the model called markers that its own sample lines never used. Dropped, because the samples are the evidence and the marker list is the claim — a marker nothing says declines every break and looks exactly like a model that is switched off */
349
+ droppedMarkers: string[];
350
+ /** Phrasings naming a value the vocabulary does not have. Dropped by the LINE, since five good phrasings and one broken one is five phrasings */
351
+ droppedTemplates: string[];
352
+ }
353
+ /**
354
+ * Something that happened to this character, as a file carries it. No `origin` and no `source`,
355
+ * unlike the stored row: whoever exported this stood behind every story in it, so on the far side
356
+ * they are the receiving operator's own, and a sentence about where a proposal came from names a
357
+ * catalogue that station does not have
358
+ * generated from [PersonaFileStory](../../../../../apps/api/data/contracts/personas/personas.types.ck#L171)
359
+ */
360
+ export interface PersonaFileStory {
361
+ title: string;
362
+ story: string;
363
+ /** Absent means `active`. A turned-down story travels so the enrichment pass does not propose it again on the far side; an undecided one does not travel at all, because nobody has decided it yet */
364
+ state?: 'active' | 'rejected';
365
+ details: PersonaFileStoryDetail[];
366
+ }
367
+ /**
368
+ * One character in a file, and what would become of it here
369
+ * generated from [PersonaImportEntry](../../../../../apps/api/data/contracts/personas/personas.types.ck#L197)
370
+ */
371
+ export interface PersonaImportEntry {
372
+ /** What identifies this character across two installs */
373
+ key: string;
374
+ label: string;
375
+ kind?: 'host' | 'caller';
376
+ /** Whether this station holds a character under this key already. An update rewrites the sheet and adds stories; it never deletes one the operator here wrote */
377
+ outcome: 'create' | 'update';
378
+ storiesNew: number;
379
+ /** Already here under the same handle, so importing would skip them */
380
+ storiesHeld: number;
381
+ detailsNew: number;
382
+ detailsHeld: number;
383
+ notices: PersonaImportNotice[];
384
+ }
385
+ export interface PersonaImportEntryInput {
386
+ }
387
+ /**
388
+ * What a persona says when it is asked for a break it will never air
389
+ * generated from [PersonaRehearsal](../../../../../apps/api/data/contracts/personas/personas.types.ck#L252)
390
+ */
391
+ export interface PersonaRehearsal {
392
+ personaId: string;
393
+ /** The invented record the break follows. Fixed, so two readings of the same sheet can be compared */
394
+ previous: string;
395
+ /** The invented record it leads into */
396
+ next: string;
397
+ attempts: PersonaRehearsalAttempt[];
398
+ /** The words a listener would have heard, from whichever writer answered first */
399
+ script?: string;
400
+ /** Which one that was. Present exactly when `script` is */
401
+ writer?: string;
402
+ /** Why there are no words, when every writer had nothing. Not a fault: a break nothing could write is one the station does not take */
403
+ reason?: string;
404
+ }
405
+ /**
406
+ * A run of one character over one playlist, without its breaks: what a list draws
407
+ * generated from [PersonaAuditionSummary](../../../../../apps/api/data/contracts/personas/personas.types.ck#L304)
408
+ */
409
+ export interface PersonaAuditionSummary {
410
+ id: string;
411
+ personaId: string;
412
+ /** The character's own key, as `script_history` records it */
413
+ personaKey: string;
414
+ source: PersonaAuditionSource;
415
+ /** `cancelled` keeps whatever breaks were already written */
416
+ state: 'queued' | 'running' | 'done' | 'failed' | 'cancelled';
417
+ /** How many breaks this run writes in total */
418
+ transitions: number;
419
+ /** How many it has written so far, which is how far along it is */
420
+ written: number;
421
+ /** Why writing it stopped, when it did */
422
+ error?: string;
423
+ /** ISO-8601 */
424
+ cancelledAt?: string;
425
+ /** ISO-8601, whichever way the run ended */
426
+ finishedAt?: string;
427
+ /** ISO-8601 */
428
+ createdAt: string;
429
+ }
430
+ /**
431
+ * One transition, and everything the writers said about it. Every writer asked is reported and not
432
+ * only the one that won, on the rehearsal's own argument: a model that declined and a floor that
433
+ * covered for it are two facts
434
+ * generated from [PersonaAuditionBreak](../../../../../apps/api/data/contracts/personas/personas.types.ck#L293)
435
+ */
436
+ export interface PersonaAuditionBreak {
437
+ /** Which transition, from 0 */
438
+ ordinal: number;
439
+ /** The record this break follows */
440
+ previous: PersonaAuditionRecord;
441
+ /** The one it leads into */
442
+ next: PersonaAuditionRecord;
443
+ attempts: PersonaRehearsalAttempt[];
444
+ /** The words a listener would have heard, from whichever writer answered first */
445
+ script?: string;
446
+ /** Which one that was. Present exactly when `script` is */
447
+ writer?: string;
448
+ /** Why there are none, when every writer had nothing. On air this break is skipped */
449
+ reason?: string;
450
+ }
451
+ /**
452
+ * Every story one character holds, oldest first, in every state
453
+ * generated from [PersonaStoryList](../../../../../apps/api/data/contracts/personas/personas.types.ck#L131)
454
+ */
455
+ export interface PersonaStoryList {
456
+ personaId: string;
457
+ stories: PersonaStory[];
458
+ }
459
+ export interface PersonaStoryListInput {
460
+ personaId: string;
461
+ stories: PersonaStoryInput[];
462
+ }
463
+ /**
464
+ * One character in a file. `PersonaDraftView` is the sheet with no id and not on air, which is
465
+ * exactly what travels, plus the two fields a model is deliberately not asked for and a real install
466
+ * always knows: what the character is FOR, and which rack it has to hand
467
+ * generated from [PersonaFilePersona](../../../../../apps/api/data/contracts/personas/personas.types.ck#L161)
468
+ */
469
+ export interface PersonaFilePersona extends Omit<PersonaDraftView, 'soundboard'> {
470
+ /** Absent means `host`, as everywhere else */
471
+ kind?: 'host' | 'caller';
472
+ /** The board this character reaches for. Carried even though the receiving station may not hold it: a persona naming a rack that does not exist and one with no rack are the same state, and the import says which it got */
473
+ soundboard?: string;
474
+ stories: PersonaFileStory[];
475
+ }
476
+ /**
477
+ * What importing a file WOULD do, worked out against this station and written nowhere.
478
+ *
479
+ * The same code the import itself runs, so what this reports is what will happen rather than a second
480
+ * opinion about it. It answers two questions an operator cannot get from the file alone: which
481
+ * characters are new here and which would be rewritten, and what this station cannot honour about them
482
+ * generated from [PersonaImportPlan](../../../../../apps/api/data/contracts/personas/personas.types.ck#L188)
483
+ */
484
+ export interface PersonaImportPlan {
485
+ /** What the file said it was. Reported rather than enforced: this repo edits migrations in place, so a version stamp cannot promise a shape, and the shapes are what was actually validated */
486
+ format: string;
487
+ /** The station it was taken from, when it said */
488
+ station?: string;
489
+ /** When it was taken, when it said */
490
+ takenAt?: string;
491
+ /** About the FILE rather than any one character in it */
492
+ notices: PersonaImportNotice[];
493
+ personas: PersonaImportEntry[];
494
+ }
495
+ export interface PersonaImportPlanInput {
496
+ }
497
+ /**
498
+ * generated from [PersonaAuditionList](../../../../../apps/api/data/contracts/personas/personas.types.ck#L323)
499
+ */
500
+ export interface PersonaAuditionList {
501
+ auditions: PersonaAuditionSummary[];
502
+ }
503
+ /**
504
+ * The same run with every break it has written so far, in order
505
+ * generated from [PersonaAudition](../../../../../apps/api/data/contracts/personas/personas.types.ck#L319)
506
+ */
507
+ export interface PersonaAudition extends PersonaAuditionSummary {
508
+ breaks: PersonaAuditionBreak[];
509
+ }
510
+ /**
511
+ * A character as a file: everything somebody would have to send to put this presenter on another
512
+ * station, and nothing that belongs to the station it came from
513
+ * generated from [PersonaFile](../../../../../apps/api/data/contracts/personas/personas.types.ck#L151)
514
+ */
515
+ export interface PersonaFile {
516
+ /** What shape this is, so a file from a later build says so rather than being read wrongly. The shapes below are what an import actually validates; this is for the human reading the failure */
517
+ format: string;
518
+ /** When it was exported, ISO-8601 */
519
+ takenAt: string;
520
+ /** The station it was taken from. Provenance only: an import writes into whichever station it is running as, and the two need not match */
521
+ station?: string;
522
+ personas: PersonaFilePersona[];
523
+ }
524
+ /**
525
+ * What importing actually did, with the plan it did it from.
526
+ *
527
+ * All or nothing: a file whose import failed part-way leaves the station exactly as it was, on
528
+ * `PUT /settings`' own rule. The preview is what stands between an operator and a surprise, so a
529
+ * partial landing would be the one outcome nothing had described
530
+ * generated from [PersonaImportResult](../../../../../apps/api/data/contracts/personas/personas.types.ck#L214)
531
+ */
532
+ export interface PersonaImportResult {
533
+ /** What it decided to do, notices and all, so the answer carries its own explanation */
534
+ plan: PersonaImportPlan;
535
+ created: number;
536
+ /** Characters whose sheet was rewritten. An update replaces the sheet and ADDS stories; it never deletes one the operator here wrote */
537
+ updated: number;
538
+ storiesWritten: number;
539
+ detailsWritten: number;
540
+ /** The roster as it now stands, on this file's own rule: every mutation answers the whole list, because more than the named row can change */
541
+ personas: PersonaList;
542
+ }
543
+ export interface PersonaImportResultInput {
544
+ }
545
+ //# sourceMappingURL=personas.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"personas.types.d.ts","sourceRoot":"","sources":["../../../src/personas/types/personas.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { SdkFetch } from '../sdk-options.js';
2
+ import type { CatalogPlaylistPage, CatalogPlaylistTracks } from './types/playlists.types.js';
3
+ export declare class PlaylistsClient {
4
+ private fetch;
5
+ constructor(fetch: SdkFetch);
6
+ /**
7
+ * @name List importable playlists
8
+ * @description Fans out across every installed plugin that declares AND implements the `catalog` capability
9
+ */
10
+ listImportablePlaylists(): Promise<CatalogPlaylistPage>;
11
+ /**
12
+ * @name Get playlist tracks
13
+ * @description One playlist's tracks from one plugin
14
+ */
15
+ getPlaylistTracks(pluginId: string, playlistId: string): Promise<CatalogPlaylistTracks>;
16
+ }
17
+ //# sourceMappingURL=playlists.client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"playlists.client.d.ts","sourceRoot":"","sources":["../../src/playlists/playlists.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAE7F,qBAAa,eAAe;IACZ,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,QAAQ;IAEnC;;;OAGG;IACG,uBAAuB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAK7D;;;OAGG;IACG,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;CAIhG"}
@@ -0,0 +1,2 @@
1
+ export * from './playlists.types.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/playlists/types/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC"}