import { Context } from "./deps.js"; import { ChatSharedContext, UserSharedContext } from "./types.js"; type Registry = Map; type Reason = Parameters[0]; type RequestId = Parameters[1]; declare class UserRequestRegistry { protected registry: Registry; constructor(); getId(reason: R): T[R]; add(reason: R, requestId: RequestId): UserRequestRegistry>; filter(reason: R): (ctx: C) => ctx is UserSharedContext; } declare class ChatRequestRegistry { protected registry: Registry; constructor(); getId(reason: R): T[R]; add(reason: R, requestId: RequestId): ChatRequestRegistry>; filter(reason: R): (ctx: C) => ctx is ChatSharedContext; } export declare function createUserRequestRegistry(): UserRequestRegistry; export declare function createChatRequestRegistry(): ChatRequestRegistry; export {};