UNPKG

2.47 kBTypeScriptView Raw
1import { OptionalTeamAssignable, TokenOverridable } from './common';
2interface ReminderRecurrenceDailyMonthlyYearly {
3 /** @description Specifies the repeating behavior of a reminder. */
4 frequency: 'daily' | 'monthly' | 'yearly';
5}
6type DaysOfTheWeek = 'monday' | 'tuesday' | 'wednesday' | 'thursday' | 'friday' | 'saturday' | 'sunday';
7interface ReminderRecurrenceWeekly {
8 /** @description Specifies the repeating behavior of a reminder. */
9 frequency: 'weekly';
10 /** @description Specifies the day-of-the-week repeating behaviour when `frequency` is set to `weekly`. */
11 weekdays: [DaysOfTheWeek, ...DaysOfTheWeek[]];
12}
13type ReminderRecurrence = ReminderRecurrenceWeekly | ReminderRecurrenceDailyMonthlyYearly;
14export interface RemindersAddArguments extends TokenOverridable, OptionalTeamAssignable {
15 /** @description The content of the reminder. */
16 text: string;
17 /**
18 * @description When this reminder should happen, one of:
19 * - the Unix timestamp (up to five years from now),
20 * - the number of seconds until the reminder (if within 24 hours), or
21 * - a natural language description (Ex. "in 15 minutes," or "every Thursday").
22 */
23 time: string | number;
24 /**
25 * @description No longer supported - reminders cannot be set for other users.
26 * @deprecated
27 * @see {@link https://api.slack.com/changelog/2023-07-its-later-already-for-stars-and-reminders#what Changes to `reminders.*` APIs announcement}.
28 */
29 user?: string;
30 /**
31 * @description Specify the repeating behavior of a reminder. If you set the sub-property `frequency` to `weekly`,
32 * you must also set the `weekdays` array to specify which days of the week to recur on.
33 */
34 recurrence?: ReminderRecurrence;
35}
36export interface RemindersCompleteArguments extends TokenOverridable, OptionalTeamAssignable {
37 /** @description The ID of the reminder to be marked as complete. */
38 reminder: string;
39}
40export interface RemindersDeleteArguments extends TokenOverridable, OptionalTeamAssignable {
41 /** @description The ID of the reminder to delete. */
42 reminder: string;
43}
44export interface RemindersInfoArguments extends TokenOverridable, OptionalTeamAssignable {
45 /** @description The ID of the reminder to retrieve information about. */
46 reminder: string;
47}
48export interface RemindersListArguments extends TokenOverridable, OptionalTeamAssignable {
49}
50export {};
51//# sourceMappingURL=reminders.d.ts.map
\No newline at end of file