# RepliableHandler

`class` in `http` · v0.2.3

<https://docs.seedcord.org/packages/http/0.2.3/classes/repliable-handler>

Shared base the repliable HTTP interaction handlers extend.

Not a public entry point. Extend [`SlashHandler`](/packages/http/0.2.3/classes/slash-handler), [`ButtonHandler`](/packages/http/0.2.3/classes/button-handler), [`ModalHandler`](/packages/http/0.2.3/classes/modal-handler), [`SelectMenuHandler`](/packages/http/0.2.3/classes/select-menu-handler), or [`ContextMenuHandler`](/packages/http/0.2.3/classes/context-menu-handler) instead. This class binds the core reply base to the http sender.

```ts
abstract class RepliableHandler<
    Event extends Repliables
> extends RepliableHandler<
    Event,
    Core,
    SentMessage,
    never,
    ReplySender
>
```

## Properties

### api

```ts
protected api: API
```

Typed Discord REST API (`@discordjs/core/http-only`) over `core.rest`, one instance per core. The interaction callbacks on `api.interactions` bypass the reply surface. The `no-raw-interaction-acks` rule flags them in handler classes.

## Methods

### buildSender

```ts
protected buildSender(
    event: Event,
    core: Core,
    routeId: string
): ReplySender
```
