@kya-os/mcp-i
Version:
The TypeScript MCP framework with identity features built-in
31 lines (30 loc) • 1.36 kB
TypeScript
/**
* Resume Token Store Factory
*
* Selects a {@link ResumeTokenStore} implementation from config, mirroring the
* delegation-verifier factory (`createDelegationVerifier`). This replaces the
* hardcoded in-memory store in the runtime so consent→reuse can be made durable
* (Cloudflare KV) on multi-instance / serverless deployments, while keeping the
* in-memory store as an EXPLICIT single-process dev default.
*/
import { type ResumeTokenStore } from "@kya-os/mcp-i-core";
import { type ResumeTokenKVNamespace } from "./resume-token-store-kv";
/**
* Configuration for resume-token stores.
*
* - `memory` — in-memory TTL map. Single-process dev only; tokens are lost on
* restart and not shared across instances.
* - `cloudflare-kv` — durable, edge-replicated. Survives cold starts/restarts.
*/
export interface ResumeTokenStoreConfig {
type: "memory" | "cloudflare-kv";
/** Token TTL in milliseconds (default: 600_000 = 10 minutes). */
ttlMs?: number;
/** Cloudflare KV namespace (required for `cloudflare-kv`). */
kvNamespace?: ResumeTokenKVNamespace;
}
/**
* Create a resume-token store from config. Memory is an explicit opt-in for
* single-process development; durable stores must be selected deliberately.
*/
export declare function createResumeTokenStore(config: ResumeTokenStoreConfig): ResumeTokenStore;