import { n as EventTag, o as EventaMatchExpression, r as Eventa } from "./eventa-CCPqecvv.mjs"; //#region src/context-hooks.d.ts interface EventaAdapterProps { cleanup: () => void; hooks: { /** * When `ctx.on`, `ctx.once` called, call `onReceived` */ onReceived: (tag: EventTag, payload: Req) => void; /** * When `ctx.emit` called, call `onSent` */ onSent: (tag: EventTag, payload: Req, options?: EmitOptions) => void; }; } type EventaAdapter =

(emit: (event: Eventa

, payload: P, options?: EmitOptions) => void) => EventaAdapterProps; //#endregion //#region src/context.d.ts interface CreateContextProps { adapter?: EventaAdapter; } declare function createContext(props?: CreateContextProps): EventContext; interface EventContext { listeners: Map, Set<(params: any) => any>>; onceListeners: Map, Set<(params: any) => any>>; emit:

(event: Eventa

, payload: P, options?: EmitOptions) => Promise; on:

(eventOrMatchExpression: Eventa

| EventaMatchExpression

, handler: (payload: Eventa

, options?: EmitOptions) => any) => () => void; once:

(eventOrMatchExpression: Eventa

| EventaMatchExpression

, handler: (payload: Eventa

, options?: EmitOptions) => any) => () => void; off:

(eventOrMatchExpression: Eventa

| EventaMatchExpression

, handler?: (payload: Eventa

, options?: EmitOptions) => any) => void; /** * Lifetime signal for this context. Aborts when `abort()` is called by an * adapter (e.g. ws close, broadcast-channel dispose, worker error). Every * `defineInvoke(...)` derived from this ctx hooks this signal so transport * death cascades into a single synchronous reject of every in-flight invoke. * * Mirrors Go's `context.Context` lifetime semantics: one signal, many * derived operations, one cancel cascades to all. */ signal: AbortSignal; /** * Abort this context's lifetime signal. Adapters call this at transport-death * points; the `reason` flows through to `invoke()` promise rejections so * callers see a meaningful Error rather than a generic AbortError. * * Idempotent — repeated calls are no-ops. */ abort: (reason?: unknown) => void; /** * Extensions (adapter-specific). * * Known usage: webworkers/worker-threads populate internal invoke config via * `extensions.__internal.invoke` to abort pending invokes on fatal errors. */ extensions?: Extensions; } type EventContextEmitFn = EventContext['emit']; //#endregion export { EventContextEmitFn as n, createContext as r, EventContext as t }; //# sourceMappingURL=context-C4Cia9QU.d.mts.map