aurival 0.2.1 → 0.4.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/dist/events.d.ts CHANGED
@@ -1,10 +1,16 @@
1
1
  /**
2
- * Plain data a command handler receives (CONTRACT-V1 §3, §3.1).
2
+ * Plain data a handler receives (CONTRACT-V1 §3, §3.1).
3
3
  *
4
- * `Event` is the raw wire frame; `Context` is what `bot.ts` hands to a handler,
5
- * built from one. `Context` holds an `HttpClient` for `reply()` and nothing else
6
- * network-shaped — never the seed, a token, or the `Auth` object (SDK-33).
4
+ * `Event` is the raw wire frame; a context is what `bot.ts` hands to a
5
+ * handler, built from one. There is one context class per event family
6
+ * (BA-R68): `Context` for commands, `MemberContext`, `BotContext`,
7
+ * `ReactionContext`, and `EventContext` for a type this SDK does not name.
8
+ * Each carries only the fields its family delivers, so an editor can tell a
9
+ * developer what `ctx` holds without them opening the docs. Every context
10
+ * holds an `HttpClient` for its actions and nothing else network-shaped —
11
+ * never the seed, a token, or the `Auth` object (SDK-33).
7
12
  */
13
+ import type { Button, ButtonLike, ButtonUsed, Embed, EmbedLike } from './embeds.js';
8
14
  import type { HttpClient } from './http.js';
9
15
  export interface User {
10
16
  id: string;
@@ -29,12 +35,26 @@ export interface Command {
29
35
  name: string;
30
36
  description: string;
31
37
  }
38
+ /**
39
+ * A message. Events carry one under `invoking_message` (with `sent_at` and a
40
+ * full `sender`); the REST side returns the stored entity (with `created_at`
41
+ * and `sender` as a bare `usr_…` id) — `reply()`, `send()` and `edit()` all
42
+ * decode that into this same shape, so `sent.id` is what you hand back to
43
+ * `edit()`, `delete()` and `react()`. A `sender` known only by id has empty
44
+ * `handle` and `name`.
45
+ */
32
46
  export interface Message {
33
47
  id: string;
34
48
  text: string;
35
49
  sent_at: string;
36
50
  sender: User | null;
37
51
  reply_to: string | null;
52
+ /** `[]` when the wire omits the key or sends `null` (AMENDMENT-05 §3) — never `null`/`undefined`. */
53
+ embeds: Embed[];
54
+ /** `[]` when the wire omits the key or sends `null` — never `null`/`undefined`. */
55
+ buttons: Button[];
56
+ /** `null` when the wire omits the key, sends `null`, or the message never carried a button. */
57
+ button_used: ButtonUsed | null;
38
58
  }
39
59
  export interface EventInit {
40
60
  id: string;
@@ -74,6 +94,15 @@ export declare function mention(user: User): Mention;
74
94
  export type MentionLike = Mention | User | {
75
95
  user: string;
76
96
  };
97
+ /** What `reply()` takes besides the text: the card to hang on the message. */
98
+ export interface ReplyOptions {
99
+ embeds?: ReadonlyArray<EmbedLike>;
100
+ buttons?: ReadonlyArray<ButtonLike>;
101
+ }
102
+ /** `send()` takes the same, plus who the `@handle` tokens in `text` point at. */
103
+ export interface SendOptions extends ReplyOptions {
104
+ mentions?: MentionLike[];
105
+ }
77
106
  /**
78
107
  * One page of `GET /v1/chats/{chat}/members` (CONTRACT-V1 §4, §5.0.1). No
79
108
  * auto-loading iterator. `MemberPage` is SDK-constructed — decoded from the
@@ -94,88 +123,208 @@ export interface MemberPage {
94
123
  hasMore: boolean;
95
124
  nextCursor: string | null;
96
125
  }
97
- export interface ContextInit {
98
- command: string;
99
- arguments: string;
126
+ /** `member.joined` / `member.left` — group chats only, human members only. */
127
+ export type MemberEventType = 'member.joined' | 'member.left';
128
+ /** `bot.added` / `bot.removed` — this bot, in that chat, with who did it. */
129
+ export type BotEventType = 'bot.added' | 'bot.removed';
130
+ /** `reaction.added` — on one of this bot's own messages. There is no `reaction.removed`. */
131
+ export type ReactionEventType = 'reaction.added';
132
+ /** `button.pressed` — someone pressed a button on one of this bot's own messages (AMENDMENT-05). */
133
+ export type ButtonEventType = 'button.pressed';
134
+ /** Every event type `bot.on()` names. `command.invoked` goes through `bot.command()`. */
135
+ export type EventType = MemberEventType | BotEventType | ReactionEventType | ButtonEventType;
136
+ interface BaseInit {
100
137
  chat: Chat;
101
- sender: User | null;
102
- /** Populated only for `member.joined` / `member.left`. */
103
- user: User | null;
104
- /** Populated only for `bot.added` / `bot.removed`. */
105
- actor: User | null;
106
- /** Populated only for `reaction.added`. */
107
- emoji: string | null;
108
138
  event: Event;
109
- message: Message | null;
110
139
  http: HttpClient;
111
140
  }
112
141
  /**
113
- * What a handler receives. Built by `bot.ts`'s dispatch closure from one
114
- * `Event` — `Socket` never constructs one. ONE class for every event type
115
- * (R6): `chat`/`sender`/`user`/`actor`/`message`/`emoji` are each populated
116
- * only for the event types that carry them —
117
- *
118
- * - `command.invoked`: `chat`, `sender`, `message`
119
- * - `member.joined` / `member.left`: `chat`, `user`
120
- * - `bot.added` / `bot.removed`: `chat`, `actor`
121
- * - `reaction.added`: `chat`, `sender`, `message`, `emoji`
122
- *
123
- * — everything else on a given `Context` is `null`. An unhandled or future
124
- * event type never throws building one: every field is read defensively off
125
- * `event.data` and falls back to `null`.
142
+ * What every context shares: the chat the event happened in, the raw event,
143
+ * and the actions. Subclasses add the fields their family delivers. The
144
+ * actions live here so `ctx.reply()` reads the same in every handler; a
145
+ * subclass that knows which message to quote says so through `quotes()`.
126
146
  */
127
- export declare class Context {
147
+ export declare class BaseContext {
128
148
  #private;
129
- readonly command: string;
130
- readonly arguments: string;
131
149
  readonly chat: Chat;
132
- readonly sender: User | null;
133
- readonly user: User | null;
134
- readonly actor: User | null;
135
- readonly emoji: string | null;
136
150
  readonly event: Event;
137
- readonly message: Message | null;
138
- constructor(init: ContextInit);
139
- /** Build straight from a `command.invoked` event's raw `data`. */
140
- static fromEvent(event: Event, http: HttpClient): Context;
151
+ constructor(init: BaseInit);
152
+ /** The message id `reply()` quotes, or `null` to send the reply free-standing. */
153
+ protected quotes(): string | null;
141
154
  /**
142
- * Build from any non-`command.invoked` event `bot.on(type, fn)` registered
143
- * for — `member.joined`/`member.left`, `bot.added`/`bot.removed`,
144
- * `reaction.added`, or a type this SDK does not yet know the shape of.
155
+ * Send a message to this chat, quoting the message this event is about
156
+ * when there is one (BA-R27). Returns the stored message, so `sent.id` is
157
+ * ready for `edit()`, `delete()` and `react()`.
145
158
  *
146
- * For a KNOWN type, the field set is pinned by CONTRACT-V1 §3.1: only the
147
- * fields that type actually carries are read off `data`, and every other
148
- * field is forced `null` even if the payload happens to carry a stray one
149
- * (a `member.joined` frame with a stray `sender` must not populate
150
- * `ctx.sender` — matches python). For a type this SDK does not recognize,
151
- * every field is read defensively and opportunistically — there is no
152
- * contract to pin it to, so whatever the frame happens to carry is
153
- * surfaced rather than discarded. `chat` itself falls back to an empty one
154
- * rather than throwing, for both cases.
159
+ * A fresh `Idempotency-Key` per call, reused across that call's retries by
160
+ * `HttpClient.request` itself. When the event carried no message id the
161
+ * `reply_to` field is omitted and the reply floats free.
155
162
  */
156
- static fromGenericEvent(event: Event, http: HttpClient): Context;
163
+ reply(text: string, options?: ReplyOptions): Promise<Message>;
164
+ reply(options: ReplyOptions): Promise<Message>;
157
165
  /**
158
- * `POST /v1/messages`, quoting the message that invoked the command
159
- * (BA-R27, reversing SDK-30). One method, no flag. When the event carried no
160
- * message id the field is omitted and the reply floats free.
161
- *
162
- * A fresh `Idempotency-Key` per call, reused across that call's retries by
163
- * `HttpClient.request` itself.
166
+ * Send a message to any chat this bot is in — this one or another.
167
+ * `mentions` names who `@handle` tokens in `text` point at: pass
168
+ * `mention(user)`, a `User`, or `{ user: 'usr_…' }`. `embeds`/`buttons`
169
+ * accept a builder or a plain object literal, validated the same either
170
+ * way. Returns the stored message.
171
+ */
172
+ send(chat: Chat | string, text: string, options?: SendOptions): Promise<Message>;
173
+ send(chat: Chat | string, options: SendOptions): Promise<Message>;
174
+ /**
175
+ * Show or clear "is thinking…" in this chat. `POST /v1/chats/{chat}/typing`
176
+ * with `{"is_typing": bool}`. Command handlers get this automatically
177
+ * (auto-typing); reach for `withTyping()` when you want it yourself.
164
178
  */
165
- reply(text: string): Promise<Record<string, unknown>>;
166
- /** `POST /v1/chats/{chat}/typing` — `is_typing` only, no `state` spelling. */
167
179
  typing(isTyping: boolean): Promise<void>;
168
- /** Sends `true` on entry, `false` on exit — ALWAYS, including on throw. */
180
+ /** Runs `fn` with the indicator on: `true` on entry, `false` on exit — ALWAYS, including on throw. */
169
181
  withTyping<T>(fn: () => Promise<T>): Promise<T>;
170
- edit(message: Message | string, text: string): Promise<Record<string, unknown>>;
182
+ /**
183
+ * Change the text of one of this bot's own messages. Pass what `reply()`
184
+ * or `send()` returned, or its id. Someone else's message is
185
+ * `MessageNotYours`. Returns the updated message.
186
+ */
187
+ edit(message: Message | string, text: string): Promise<Message>;
188
+ /** Delete one of this bot's own messages. Someone else's is `MessageNotYours`. */
171
189
  delete(message: Message | string): Promise<void>;
190
+ /**
191
+ * Put a reaction on a message, one emoji at a time. Reacting twice with the
192
+ * same emoji is a no-op; a string longer than one emoji is
193
+ * `ReactionEmojiTooLong`.
194
+ */
172
195
  react(message: Message | string, emoji: string): Promise<void>;
196
+ /** Take a reaction off. Removing one that is not there is a no-op. */
173
197
  unreact(message: Message | string, emoji: string): Promise<void>;
174
- send(chat: Chat | string, text: string, options?: {
175
- mentions?: MentionLike[];
176
- }): Promise<Record<string, unknown>>;
198
+ /**
199
+ * One page of who is in a chat, bots included — this chat by default.
200
+ * Check `hasMore` and pass `nextCursor` back as `cursor` for the next page;
201
+ * `ctx.chat.member_count` is the total without a call.
202
+ */
177
203
  members(chat?: Chat | string, options?: {
178
204
  cursor?: string;
179
205
  }): Promise<MemberPage>;
180
206
  }
207
+ export interface ContextInit extends BaseInit {
208
+ command: string;
209
+ arguments: string;
210
+ sender: User;
211
+ message: Message;
212
+ }
213
+ /**
214
+ * What a `bot.command()` handler receives. Built by `bot.ts`'s dispatch
215
+ * closure from one `command.invoked` event — `Socket` never constructs one.
216
+ * `sender` and `message` are always set: the server never emits a command
217
+ * without both.
218
+ */
219
+ export declare class Context extends BaseContext {
220
+ /** The command name as the server matched it, without the slash. */
221
+ readonly command: string;
222
+ /** Everything after the command name, untrimmed of its inner spaces. `''` when there was nothing. */
223
+ readonly arguments: string;
224
+ /** Who typed the command. */
225
+ readonly sender: User;
226
+ /** The message that carried the command. `reply()` quotes it. */
227
+ readonly message: Message;
228
+ constructor(init: ContextInit);
229
+ protected quotes(): string | null;
230
+ /** Build straight from a `command.invoked` event's raw `data`. */
231
+ static fromEvent(event: Event, http: HttpClient): Context;
232
+ }
233
+ export interface MemberContextInit extends BaseInit {
234
+ user: User;
235
+ }
236
+ /** `member.joined` / `member.left`: someone came into, or left, a group chat this bot is in. */
237
+ export declare class MemberContext extends BaseContext {
238
+ /** Who joined or left. Never the bot itself — that is `bot.added` / `bot.removed`. */
239
+ readonly user: User;
240
+ constructor(init: MemberContextInit);
241
+ static fromEvent(event: Event, http: HttpClient): MemberContext;
242
+ }
243
+ export interface BotContextInit extends BaseInit {
244
+ actor: User;
245
+ }
246
+ /** `bot.added` / `bot.removed`: this bot was put into, or taken out of, a chat. */
247
+ export declare class BotContext extends BaseContext {
248
+ /** The person who added or removed the bot. */
249
+ readonly actor: User;
250
+ constructor(init: BotContextInit);
251
+ static fromEvent(event: Event, http: HttpClient): BotContext;
252
+ }
253
+ export interface ReactionContextInit extends BaseInit {
254
+ sender: User;
255
+ message: Message;
256
+ emoji: string;
257
+ }
258
+ /** `reaction.added`: someone reacted to one of this bot's own messages. */
259
+ export declare class ReactionContext extends BaseContext {
260
+ /** Who reacted. */
261
+ readonly sender: User;
262
+ /** The bot's message they reacted to — id only; the text is not re-sent. `reply()` quotes it. */
263
+ readonly message: Message;
264
+ /** The emoji, as one string. */
265
+ readonly emoji: string;
266
+ constructor(init: ReactionContextInit);
267
+ protected quotes(): string | null;
268
+ static fromEvent(event: Event, http: HttpClient): ReactionContext;
269
+ }
270
+ export interface ButtonContextInit extends BaseInit {
271
+ user: User;
272
+ message: Message;
273
+ button: string;
274
+ interaction: string;
275
+ }
276
+ /** `button.pressed`: someone pressed a button on one of this bot's own messages (AMENDMENT-05). */
277
+ export declare class ButtonContext extends BaseContext {
278
+ #private;
279
+ /** Who pressed the button. */
280
+ readonly user: User;
281
+ /** The bot's message the button lives on — id only; the text is not re-sent. `reply()` quotes it. */
282
+ readonly message: Message;
283
+ /** The pressed button's id. */
284
+ readonly button: string;
285
+ /** The interaction id — `ack()` posts to `/v1/interactions/{interaction}/ack`. */
286
+ readonly interaction: string;
287
+ constructor(init: ButtonContextInit);
288
+ protected quotes(): string | null;
289
+ /**
290
+ * Acknowledge the button press — `POST /v1/interactions/{interaction}/ack`,
291
+ * 204 no body. Acking twice is `InteractionAlreadyUsed` (surfaced through
292
+ * the existing code -> class mapping; there is no dedicated class here).
293
+ */
294
+ ack(): Promise<void>;
295
+ static fromEvent(event: Event, http: HttpClient): ButtonContext;
296
+ }
297
+ export interface EventContextInit extends BaseInit {
298
+ sender: User | null;
299
+ user: User | null;
300
+ actor: User | null;
301
+ message: Message | null;
302
+ emoji: string | null;
303
+ }
304
+ /**
305
+ * An event type this SDK does not name yet. Nothing is pinned, so every
306
+ * field is read off the frame if it is there and `null` if it is not —
307
+ * whatever the wire carries is surfaced rather than discarded, and building
308
+ * one never throws.
309
+ */
310
+ export declare class EventContext extends BaseContext {
311
+ readonly sender: User | null;
312
+ readonly user: User | null;
313
+ readonly actor: User | null;
314
+ readonly message: Message | null;
315
+ readonly emoji: string | null;
316
+ constructor(init: EventContextInit);
317
+ protected quotes(): string | null;
318
+ static fromEvent(event: Event, http: HttpClient): EventContext;
319
+ }
320
+ /** Any context a handler can receive. What `bot.onError()` sees beside the error. */
321
+ export type AnyContext = Context | MemberContext | BotContext | ReactionContext | ButtonContext | EventContext;
322
+ /**
323
+ * The context class for an event, by its type. `command.invoked` gets
324
+ * `Context`; the four named families get theirs; anything else gets
325
+ * `EventContext`. The dispatch side of BA-R68 — `bot.ts` calls this and
326
+ * hands the result to every handler registered for the type.
327
+ */
328
+ export declare function contextFor(event: Event, http: HttpClient): AnyContext;
329
+ export {};
181
330
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}