# CoreBase

`interface` in `core` · v0.2.1

<https://docs.seedcord.org/packages/core/0.2.1/interfaces/core-base>

The transport-agnostic slice of the running framework, what core code (gates, notices, plugins' agnostic surface) accesses through `ctx.core`. Each transport's `Core` extends it with its own members.

```ts
interface CoreBase
```

## Properties

### bus

```ts
readonly bus: Bus
```

Publish and subscribe to framework and application events.

### config

```ts
readonly config: Config
```

Transports narrow this to their own config type.

### rateLimiter

```ts
readonly rateLimiter: IRateLimiter
```

Sliding-window rate limiting, the `Cooldown` gate's backend and a public direct-use API.

### rest

```ts
readonly rest: REST
```

Discord REST client. On gateway this is the discord.js client's own, and it carries no token until the Login phase. On http the token is set by `start()`.
