Skip to main content

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​

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​

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​

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​

OptionsConstraints

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​

ReceiverEvent

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​

ViewConstraints

listeners​

...Middleware<SlackViewMiddlewareArgs<ViewActionType>, AppCustomContext & MiddlewareCustomContext>[]

Returns​

void