App<AppCustomContext>
Defined in: src/App.ts:233
A Slack App
Type Parameters
AppCustomContext
AppCustomContext extends StringIndexed = StringIndexed
Constructors
Constructor
new App<AppCustomContext>(__namedParameters?): App<AppCustomContext>;
Defined in: src/App.ts:289
Parameters
__namedParameters?
AppOptions = {}
Returns
App<AppCustomContext>
Properties
client
client: WebClient;
Defined in: src/App.ts:235
Slack Web API client
logger
logger: Logger;
Defined in: src/App.ts:246
Logger
Accessors
webClientOptions
Get Signature
get webClientOptions(): WebClientOptions;
Defined in: src/App.ts:493
Returns
WebClientOptions
Methods
action()
Call Signature
action<Action, MiddlewareCustomContext>(actionId, ...listeners): void;
Defined in: src/App.ts:735
Type Parameters
Action
Action extends SlackAction = SlackAction
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
actionId
string | RegExp
listeners
...Middleware<SlackActionMiddlewareArgs<Action>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
Call Signature
action<Action, Constraints, MiddlewareCustomContext>(constraints, ...listeners): void;
Defined in: src/App.ts:742
Type Parameters
Action
Action extends SlackAction = SlackAction
Constraints
Constraints extends ActionConstraints<Action> = ActionConstraints<Action>
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
constraints
Constraints
listeners
...Middleware<SlackActionMiddlewareArgs<Extract<Action, {
type: Constraints["type"];
}>>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
assistant()
assistant(assistant): this;
Defined in: src/App.ts:514
Register Assistant middleware
Parameters
assistant
global assistant middleware function
Returns
this
command()
command<MiddlewareCustomContext>(commandName, ...listeners): void;
Defined in: src/App.ts:788
Type Parameters
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
commandName
string | RegExp
listeners
...Middleware<SlackCommandMiddlewareArgs, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
error()
Call Signature
error(errorHandler): void;
Defined in: src/App.ts:884
Parameters
errorHandler
ErrorHandler
Returns
void
Call Signature
error(errorHandler): void;
Defined in: src/App.ts:885
Parameters
errorHandler
ExtendedErrorHandler
Returns
void
event()
Call Signature
event<EventType, MiddlewareCustomContext>(eventName, ...listeners): void;
Defined in: src/App.ts:577
Type Parameters
EventType
EventType extends string = string
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
eventName
EventType
listeners
...Middleware<SlackEventMiddlewareArgs<EventType>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
Call Signature
event<EventType, MiddlewareCustomContext>(eventName, ...listeners): void;
Defined in: src/App.ts:581
Type Parameters
EventType
EventType extends RegExp = RegExp
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
eventName
EventType
listeners
...Middleware<SlackEventMiddlewareArgs<string>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
function()
Call Signature
function(
callbackId,
options?,
...listeners
): this;
Defined in: src/App.ts:528
Register a listener for a custom function's execution.
Parameters
callbackId
string
Unique callback ID of the custom function.
options?
SlackEventMiddlewareArgsOptions
Configurations for the listener.
listeners
...Middleware<SlackCustomFunctionMiddlewareArgs>[]
Middleware handlers to call.
Returns
this
See
- https://docs.slack.dev/tools/bolt-js/concepts/custom-steps/
- https://docs.slack.dev/workflows/creating-custom-steps-dynamic-options
Call Signature
function(callbackId, ...listeners): this;
Defined in: src/App.ts:533
Register a listener for a custom function's execution.
Parameters
callbackId
string
Unique callback ID of the custom function.
listeners
...Middleware<SlackCustomFunctionMiddlewareArgs>[]
Middleware handlers to call.
Returns
this
See
- https://docs.slack.dev/tools/bolt-js/concepts/custom-steps/
- https://docs.slack.dev/workflows/creating-custom-steps-dynamic-options
init()
init(): Promise<void>;
Defined in: src/App.ts:458
Returns
Promise<void>
message()
Call Signature
message<MiddlewareCustomContext>(...listeners): void;
Defined in: src/App.ts:618
Type Parameters
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
listeners
...MessageEventMiddleware<AppCustomContext & MiddlewareCustomContext>[]
Middlewares that process and react to a message event
Returns
void
Call Signature
message<MiddlewareCustomContext>(pattern, ...listeners): void;
Defined in: src/App.ts:627
Type Parameters
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
pattern
string | RegExp
Used for filtering out messages that don't match. Strings match via String.prototype.includes.
listeners
...MessageEventMiddleware<AppCustomContext & MiddlewareCustomContext>[]
Middlewares that process and react to the message events that matched the provided patterns.
Returns
void
Call Signature
message<MiddlewareCustomContext>(
filter,
pattern,
...listeners
): void;
Defined in: src/App.ts:639
Type Parameters
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
filter
MessageEventMiddleware<AppCustomContext & MiddlewareCustomContext>
Middleware that can filter out messages. Generally this is done by returning before calling AllMiddlewareArgs.next if there is no match. See directMention for an example.
pattern
string | RegExp
Used for filtering out messages that don't match the pattern. Strings match via String.prototype.includes.
listeners
...MessageEventMiddleware<AppCustomContext & MiddlewareCustomContext>[]
Middlewares that process and react to the message events that matched the provided pattern.
Returns
void
Call Signature
message<MiddlewareCustomContext>(filter, ...listeners): void;
Defined in: src/App.ts:650
Type Parameters
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
filter
MessageEventMiddleware
Middleware that can filter out messages. Generally this is done by returning before calling AllMiddlewareArgs.next if there is no match. See directMention for an example.
listeners
...MessageEventMiddleware<AppCustomContext & MiddlewareCustomContext>[]
Middlewares that process and react to the message events that matched the provided patterns.
Returns
void
Call Signature
message<MiddlewareCustomContext>(...patternsOrMiddleware): void;
Defined in: src/App.ts:660
This allows for further control of the filtering and response logic. Patterns and middlewares are processed in the order provided. If any patterns do not match, or a middleware does not call AllMiddlewareArgs.next, all remaining patterns and middlewares will be skipped.
Type Parameters
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
patternsOrMiddleware
...(
| string
| RegExp
| MessageEventMiddleware<AppCustomContext & MiddlewareCustomContext>)[]
A mix of patterns and/or middlewares.
Returns
void
options()
Call Signature
options<Source, MiddlewareCustomContext>(actionId, ...listeners): void;
Defined in: src/App.ts:801
Type Parameters
Source
Source extends "interactive_message" | "block_suggestion" | "dialog_suggestion" = "block_suggestion"
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
actionId
string | RegExp
listeners
...Middleware<SlackOptionsMiddlewareArgs<Source>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
Call Signature
options<Source, MiddlewareCustomContext>(constraints, ...listeners): void;
Defined in: src/App.ts:809
Type Parameters
Source
Source extends "interactive_message" | "block_suggestion" | "dialog_suggestion" = "interactive_message" | "block_suggestion" | "dialog_suggestion"
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
constraints
listeners
...Middleware<SlackOptionsMiddlewareArgs<Source>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
processEvent()
processEvent(event): Promise<void>;
Defined in: src/App.ts:894
Handles events from the receiver
Parameters
event
Returns
Promise<void>
shortcut()
Call Signature
shortcut<Shortcut, MiddlewareCustomContext>(callbackId, ...listeners): void;
Defined in: src/App.ts:682
Type Parameters
Shortcut
Shortcut extends SlackShortcut = SlackShortcut
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
callbackId
string | RegExp
listeners
...Middleware<SlackShortcutMiddlewareArgs<Shortcut>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
Call Signature
shortcut<Shortcut, Constraints, MiddlewareCustomContext>(constraints, ...listeners): void;
Defined in: src/App.ts:689
Type Parameters
Shortcut
Shortcut extends SlackShortcut = SlackShortcut
Constraints
Constraints extends ShortcutConstraints<Shortcut> = ShortcutConstraints<Shortcut>
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
constraints
Constraints
listeners
...Middleware<SlackShortcutMiddlewareArgs<Extract<Shortcut, {
type: Constraints["type"];
}>>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
start()
start(...args): Promise<Server<typeof IncomingMessage, typeof ServerResponse>>;
Defined in: src/App.ts:559
Convenience method to call start on the receiver
TODO: should replace HTTPReceiver in type definition with a generic that is constrained to Receiver
Parameters
args
[string | number | ListenOptions, ServerOptions] | []
receiver-specific start arguments
Returns
Promise<Server<typeof IncomingMessage, typeof ServerResponse>>
stop()
stop(...args): Promise<unknown>;
Defined in: src/App.ts:572
Parameters
args
...any[]
Returns
Promise<unknown>
use()
use<MiddlewareCustomContext>(m): this;
Defined in: src/App.ts:502
Register a new middleware, processed in the order registered.
Type Parameters
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
m
Middleware<AnyMiddlewareArgs, AppCustomContext & MiddlewareCustomContext>
global middleware function
Returns
this
view()
Call Signature
view<ViewActionType, MiddlewareCustomContext>(callbackId, ...listeners): void;
Defined in: src/App.ts:834
Type Parameters
ViewActionType
ViewActionType extends SlackViewAction = SlackViewAction
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
callbackId
string | RegExp
listeners
...Middleware<SlackViewMiddlewareArgs<ViewActionType>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void
Call Signature
view<ViewActionType, MiddlewareCustomContext>(constraints, ...listeners): void;
Defined in: src/App.ts:841
Type Parameters
ViewActionType
ViewActionType extends SlackViewAction = SlackViewAction
MiddlewareCustomContext
MiddlewareCustomContext extends StringIndexed = StringIndexed
Parameters
constraints
listeners
...Middleware<SlackViewMiddlewareArgs<ViewActionType>, AppCustomContext & MiddlewareCustomContext>[]
Returns
void