Skip to content

Commit ca0e64a

Browse files
committed
feat: remaining slack lists methods
1 parent 4a732f7 commit ca0e64a

16 files changed

+443
-1
lines changed

packages/web-api/src/methods.ts

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,18 @@ import type {
219219
SearchAllArguments,
220220
SearchFilesArguments,
221221
SearchMessagesArguments,
222+
SlackListsAccessDeleteArguments,
223+
SlackListsAccessSetArguments,
222224
SlackListsCreateArguments,
225+
SlackListsDownloadGetArguments,
226+
SlackListsDownloadStartArguments,
227+
SlackListsItemsCreateArguments,
228+
SlackListsItemsDeleteArguments,
229+
SlackListsItemsDeleteMultipleArguments,
230+
SlackListsItemsInfoArguments,
231+
SlackListsItemsListArguments,
232+
SlackListsItemsUpdateArguments,
233+
SlackListsUpdateArguments,
223234
StarsAddRemoveArguments,
224235
StarsListArguments,
225236
TeamAccessLogsArguments,
@@ -480,7 +491,18 @@ import type {
480491
SearchAllResponse,
481492
SearchFilesResponse,
482493
SearchMessagesResponse,
494+
SlackListsAccessDeleteResponse,
495+
SlackListsAccessSetResponse,
483496
SlackListsCreateResponse,
497+
SlackListsDownloadGetResponse,
498+
SlackListsDownloadStartResponse,
499+
SlackListsItemsCreateResponse,
500+
SlackListsItemsDeleteMultipleResponse,
501+
SlackListsItemsDeleteResponse,
502+
SlackListsItemsInfoResponse,
503+
SlackListsItemsListResponse,
504+
SlackListsItemsUpdateResponse,
505+
SlackListsUpdateResponse,
484506
StarsAddResponse,
485507
StarsListResponse,
486508
StarsRemoveResponse,
@@ -2173,11 +2195,90 @@ export abstract class Methods extends EventEmitter<WebClientEvent> {
21732195
};
21742196

21752197
public readonly slackLists = {
2198+
access: {
2199+
/**
2200+
* @description Delete access for specified entities.
2201+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.access.delete `slackLists.access.delete` API reference}.
2202+
*/
2203+
delete: bindApiCall<SlackListsAccessDeleteArguments, SlackListsAccessDeleteResponse>(
2204+
this,
2205+
'slackLists.access.delete',
2206+
),
2207+
/**
2208+
* @description Set access level for specified entities.
2209+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.access.set `slackLists.access.set` API reference}.
2210+
*/
2211+
set: bindApiCall<SlackListsAccessSetArguments, SlackListsAccessSetResponse>(this, 'slackLists.access.set'),
2212+
},
21762213
/**
21772214
* @description Create a List.
21782215
* @see {@link https://docs.slack.dev/reference/methods/slackLists.create `slackLists.create` API reference}.
21792216
*/
21802217
create: bindApiCall<SlackListsCreateArguments, SlackListsCreateResponse>(this, 'slackLists.create'),
2218+
download: {
2219+
/**
2220+
* @description Get download job status.
2221+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.download.get `slackLists.download.get` API reference}.
2222+
*/
2223+
get: bindApiCall<SlackListsDownloadGetArguments, SlackListsDownloadGetResponse>(this, 'slackLists.download.get'),
2224+
/**
2225+
* @description Start a download job for a list.
2226+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.download.start `slackLists.download.start` API reference}.
2227+
*/
2228+
start: bindApiCall<SlackListsDownloadStartArguments, SlackListsDownloadStartResponse>(
2229+
this,
2230+
'slackLists.download.start',
2231+
),
2232+
},
2233+
items: {
2234+
/**
2235+
* @description Create a list item.
2236+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.items.create `slackLists.items.create` API reference}.
2237+
*/
2238+
create: bindApiCall<SlackListsItemsCreateArguments, SlackListsItemsCreateResponse>(
2239+
this,
2240+
'slackLists.items.create',
2241+
),
2242+
/**
2243+
* @description Delete a list item.
2244+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.items.delete `slackLists.items.delete` API reference}.
2245+
*/
2246+
delete: bindApiCall<SlackListsItemsDeleteArguments, SlackListsItemsDeleteResponse>(
2247+
this,
2248+
'slackLists.items.delete',
2249+
),
2250+
/**
2251+
* @description Delete multiple list items.
2252+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.items.deleteMultiple `slackLists.items.deleteMultiple` API reference}.
2253+
*/
2254+
deleteMultiple: bindApiCall<SlackListsItemsDeleteMultipleArguments, SlackListsItemsDeleteMultipleResponse>(
2255+
this,
2256+
'slackLists.items.deleteMultiple',
2257+
),
2258+
/**
2259+
* @description Get info about a list item.
2260+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.items.info `slackLists.items.info` API reference}.
2261+
*/
2262+
info: bindApiCall<SlackListsItemsInfoArguments, SlackListsItemsInfoResponse>(this, 'slackLists.items.info'),
2263+
/**
2264+
* @description List items in a list.
2265+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.items.list `slackLists.items.list` API reference}.
2266+
*/
2267+
list: bindApiCall<SlackListsItemsListArguments, SlackListsItemsListResponse>(this, 'slackLists.items.list'),
2268+
/**
2269+
* @description Update a list item.
2270+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.items.update `slackLists.items.update` API reference}.
2271+
*/
2272+
update: bindApiCall<SlackListsItemsUpdateArguments, SlackListsItemsUpdateResponse>(
2273+
this,
2274+
'slackLists.items.update',
2275+
),
2276+
},
2277+
/**
2278+
* @description Update a list.
2279+
* @see {@link https://docs.slack.dev/reference/methods/slackLists.update `slackLists.update` API reference}.
2280+
*/
2281+
update: bindApiCall<SlackListsUpdateArguments, SlackListsUpdateResponse>(this, 'slackLists.update'),
21812282
};
21822283

21832284
public readonly team = {

packages/web-api/src/types/request/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ export type {
275275
SearchFilesArguments,
276276
SearchMessagesArguments,
277277
} from './search';
278-
export type { SlackListsCreateArguments } from './slacklists';
278+
export type { SlackListsAccessDeleteArguments, SlackListsAccessSetArguments, SlackListsCreateArguments, SlackListsDownloadGetArguments, SlackListsDownloadStartArguments, SlackListsItemsCreateArguments, SlackListsItemsDeleteArguments, SlackListsItemsDeleteMultipleArguments, SlackListsItemsInfoArguments, SlackListsItemsListArguments, SlackListsItemsUpdateArguments, SlackListsUpdateArguments } from './slacklists';
279279
export type {
280280
StarsAddRemoveArguments,
281281
StarsListArguments,

packages/web-api/src/types/request/slacklists.ts

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,21 @@ import type { RichTextBlock } from '@slack/types';
22

33
import type { TokenOverridable } from './common';
44

5+
// https://docs.slack.dev/reference/methods/slackLists.access.delete
6+
export interface SlackListsAccessDeleteArguments extends TokenOverridable {
7+
list_id: string;
8+
channel_ids?: string[];
9+
user_ids?: string[];
10+
}
11+
12+
// https://docs.slack.dev/reference/methods/slackLists.access.set
13+
export interface SlackListsAccessSetArguments extends TokenOverridable {
14+
list_id: string;
15+
access_level: string;
16+
channel_ids?: string[];
17+
user_ids?: string[];
18+
}
19+
520
// https://docs.slack.dev/reference/methods/slackLists.create
621
export interface SlackListsCreateArguments extends TokenOverridable {
722
name: string;
@@ -11,3 +26,64 @@ export interface SlackListsCreateArguments extends TokenOverridable {
1126
include_copied_list_records?: boolean;
1227
todo_mode?: boolean;
1328
}
29+
30+
// https://docs.slack.dev/reference/methods/slackLists.download.get
31+
export interface SlackListsDownloadGetArguments extends TokenOverridable {
32+
list_id: string;
33+
job_id: string;
34+
}
35+
36+
// https://docs.slack.dev/reference/methods/slackLists.download.start
37+
export interface SlackListsDownloadStartArguments extends TokenOverridable {
38+
list_id: string;
39+
include_archived?: boolean;
40+
}
41+
42+
// https://docs.slack.dev/reference/methods/slackLists.items.create
43+
export interface SlackListsItemsCreateArguments extends TokenOverridable {
44+
list_id: string;
45+
duplicated_item_id?: string;
46+
parent_item_id?: string;
47+
initial_fields?: Array<Record<string, unknown>>;
48+
}
49+
50+
// https://docs.slack.dev/reference/methods/slackLists.items.delete
51+
export interface SlackListsItemsDeleteArguments extends TokenOverridable {
52+
list_id: string;
53+
id: string;
54+
}
55+
56+
// https://docs.slack.dev/reference/methods/slackLists.items.deletemultiple
57+
export interface SlackListsItemsDeleteMultipleArguments extends TokenOverridable {
58+
list_id: string;
59+
ids: string[];
60+
}
61+
62+
// https://docs.slack.dev/reference/methods/slackLists.items.info
63+
export interface SlackListsItemsInfoArguments extends TokenOverridable {
64+
list_id: string;
65+
id: string;
66+
include_is_subscribed?: boolean;
67+
}
68+
69+
// https://docs.slack.dev/reference/methods/slackLists.items.list
70+
export interface SlackListsItemsListArguments extends TokenOverridable {
71+
list_id: string;
72+
limit?: number;
73+
cursor?: string;
74+
archived?: boolean;
75+
}
76+
77+
// https://docs.slack.dev/reference/methods/slackLists.items.update
78+
export interface SlackListsItemsUpdateArguments extends TokenOverridable {
79+
list_id: string;
80+
cells: Array<Record<string, unknown>>;
81+
}
82+
83+
// https://docs.slack.dev/reference/methods/slackLists.update
84+
export interface SlackListsUpdateArguments extends TokenOverridable {
85+
id: string;
86+
name?: string;
87+
description_blocks?: Array<RichTextBlock>;
88+
todo_mode?: boolean;
89+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { WebAPICallResult } from '../../WebClient';
2+
3+
export type SlackListsAccessDeleteResponse = WebAPICallResult & {
4+
channel?: string;
5+
error?: string;
6+
needed?: string;
7+
ok?: boolean;
8+
provided?: string;
9+
ts?: string;
10+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { WebAPICallResult } from '../../WebClient';
2+
3+
export type SlackListsAccessSetResponse = WebAPICallResult & {
4+
channel?: string;
5+
error?: string;
6+
needed?: string;
7+
ok?: boolean;
8+
provided?: string;
9+
ts?: string;
10+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { WebAPICallResult } from '../../WebClient';
2+
3+
export type SlackListsDownloadGetResponse = WebAPICallResult & {
4+
channel?: string;
5+
error?: string;
6+
needed?: string;
7+
ok?: boolean;
8+
provided?: string;
9+
ts?: string;
10+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { WebAPICallResult } from '../../WebClient';
2+
3+
export type SlackListsDownloadStartResponse = WebAPICallResult & {
4+
channel?: string;
5+
error?: string;
6+
needed?: string;
7+
ok?: boolean;
8+
provided?: string;
9+
ts?: string;
10+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { WebAPICallResult } from '../../WebClient';
2+
3+
export type SlackListsItemsCreateResponse = WebAPICallResult & {
4+
channel?: string;
5+
error?: string;
6+
needed?: string;
7+
ok?: boolean;
8+
provided?: string;
9+
ts?: string;
10+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { WebAPICallResult } from '../../WebClient';
2+
3+
export type SlackListsItemsDeleteMultipleResponse = WebAPICallResult & {
4+
channel?: string;
5+
error?: string;
6+
needed?: string;
7+
ok?: boolean;
8+
provided?: string;
9+
ts?: string;
10+
};
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import type { WebAPICallResult } from '../../WebClient';
2+
3+
export type SlackListsItemsDeleteResponse = WebAPICallResult & {
4+
channel?: string;
5+
error?: string;
6+
needed?: string;
7+
ok?: boolean;
8+
provided?: string;
9+
ts?: string;
10+
};

0 commit comments

Comments
 (0)