# @types/koa-generic-session

> TypeScript definitions for koa-generic-session

Latest version **2.2.6** (published 2025-10-24) · MIT license · 0 weekly downloads

## Install

```sh
npm install @types/koa-generic-session
pnpm add @types/koa-generic-session
yarn add @types/koa-generic-session
bun add @types/koa-generic-session
```

## Health

**Score 65/100 (B)** — status: stable.

Positive: has types; no vulnerabilities; high maintenance score; popular repo; extremely popular.

Warnings: low downloads; no esm support.

## Facts

| | |
|---|---|
| Version | 2.2.6 |
| Published | 2025-10-24 |
| First published | 2017-04-27 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 2 |
| Unpacked size | 6.5 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 51422 |
| Maintainers | types |

## Links

- npm: https://www.npmjs.com/package/@types/koa-generic-session
- Repository: https://github.com/DefinitelyTyped/DefinitelyTyped
- Homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/koa-generic-session
- npm.io page: https://npm.io/package/@types/koa-generic-session

## Dependencies (2)

- [@types/koa](https://npm.io/package/@types/koa.md) *
- [@types/cookies](https://npm.io/package/@types/cookies.md) *

## Recent versions

- 2.2.6 (latest) — 2025-10-24
- 2.2.5 (ts5.1) — 2025-04-24
- 2.2.4 (ts4.9) — 2023-11-07
- 2.2.1 (ts4.0) — 2021-12-24
- 2.2.0 (ts3.7) — 2021-11-05
- 1.0.6 (ts3.6) — 2021-07-08
- 1.0.5 (ts3.3) — 2020-11-09
- 1.0.4 (ts3.0) — 2020-05-27
- 1.0.3 (ts2.4) — 2019-09-16
- 1.0.1 (ts2.1) — 2017-06-02
- 2.2.3 — 2023-10-18
- 2.2.2 — 2023-09-14
- 1.0.2 — 2017-08-21
- 1.0.0 — 2017-04-27

## README

# Installation
> `npm install --save @types/koa-generic-session`

# Summary
This package contains type definitions for koa-generic-session (https://github.com/koajs/generic-session).

# Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/koa-generic-session.
## [index.d.ts](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/koa-generic-session/index.d.ts)
````ts
import Cookies = require("cookies");
import Koa = require("koa");

declare namespace koaSession {
    interface Session {
        cookie: Cookies.SetOption;
    }

    interface SessionIdStore<Ctx = Koa.Context> {
        get(this: Ctx): string | undefined;
        set(this: Ctx, sid: string, session: Session): void;
        reset(this: Ctx): void;
    }

    interface SessionStore {
        get(sid: string): Session | undefined | Promise<Session | undefined>;
        set(sid: string, session: Session, ttl?: number): void | Promise<void>;
        destroy(sid: string): void | Promise<void>;
    }

    interface SessionOptions {
        key?: string | undefined;
        store?: SessionStore | undefined;
        ttl?: number | undefined;
        prefix?: string | undefined;
        cookie?: Cookies.SetOption | undefined;
        allowEmpty?: boolean | undefined;
        defer?: boolean | undefined;
        reconnectTimeout?: number | undefined;
        rolling?: boolean | undefined;
        sessionIdStore?: SessionIdStore | undefined;
        genSid?(this: Koa.Context, length: number): string | Promise<string>;
        errorHandler?(error: Error, type: string, ctx: Koa.Context): void;
        valid?(ctx: Koa.Context, session: Session): boolean;
        beforeSave?(ctx: Koa.Context, session: Session): void;
    }

    class MemoryStore implements SessionStore {
        get(sid: string): Session | undefined;
        set(sid: string, session: Session): void;
        destroy(sid: string): void;
    }
}

declare module "koa" {
    interface ExtendableContext {
        sessionId: string;
        session: koaSession.Session | null;
        sessionSave: boolean | null;
        regenerateSession(): Promise<void>;
    }
}

declare function koaSession(options: koaSession.SessionOptions): Koa.Middleware;
export = koaSession;

````

### Additional Details
 * Last updated: Fri, 24 Oct 2025 04:02:41 GMT
 * Dependencies: [@types/cookies](https://npmjs.com/package/@types/cookies), [@types/koa](https://npmjs.com/package/@types/koa)

# Credits
These definitions were written by [Nick Simmons](https://github.com/nsimmons), and [Javier Garcia](https://github.com/javiertury).

---
_Source: https://npm.io/package/@types/koa-generic-session · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
