GramIO API Reference / @gramio/composer/dist / EventComposer
Interface: EventComposer<TBase, TEventMap, TIn, TOut, TExposed, TDerives, TMethods, TMacros>
Defined in: composer/index.d.ts:261
EventComposer interface — Composer + .on() + per-event derive tracking + custom methods
Type Parameters
| Type Parameter | Default type |
|---|---|
TBase extends object | - |
TEventMap extends Record<string, TBase> | - |
TIn extends TBase | TBase |
TOut extends TIn | TIn |
TExposed extends object | object |
TDerives extends Record<string, object> | object |
TMethods extends Record<string, (...args) => any> | object |
TMacros extends MacroDefinitions | object |
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
~ | object | - | composer/index.d.ts:307 |
~.compiled | ComposedMiddleware<any> | - | composer/index.d.ts:311 |
~.Derives | TDerives | - | composer/index.d.ts:320 |
~.errorsDefinitions | Record<string, {(...args): any; prototype: Error; }> | - | composer/index.d.ts:314 |
~.extended | Set<string> | - | composer/index.d.ts:310 |
~.macros | Record<string, MacroDef<any, any>> | - | composer/index.d.ts:319 |
~.middlewares | ScopedMiddleware<any>[] | - | composer/index.d.ts:308 |
~.name | string | - | composer/index.d.ts:312 |
~.onErrors | ErrorHandler<any>[] | - | composer/index.d.ts:309 |
~.Out | TOut | Phantom type accessor — never set at runtime, used by ContextOf<T> | composer/index.d.ts:322 |
~.seed | unknown | - | composer/index.d.ts:313 |
~.tracer | TraceHandler | - | composer/index.d.ts:318 |
Methods
as()
as(
scope):EventComposer<TBase,TEventMap,TIn,TOut,TOut,TDerives,TMethods,TMacros> &TMethods
Defined in: composer/index.d.ts:296
Parameters
| Parameter | Type |
|---|---|
scope | "global" | "scoped" |
Returns
EventComposer<TBase, TEventMap, TIn, TOut, TOut, TDerives, TMethods, TMacros> & TMethods
branch()
branch(
predicate,onTrue,onFalse?):this
Defined in: composer/index.d.ts:271
Parameters
| Parameter | Type |
|---|---|
predicate | boolean | (context) => boolean | Promise<boolean> |
onTrue | Middleware<TOut> |
onFalse? | Middleware<TOut> |
Returns
this
compose()
compose():
ComposedMiddleware<TIn>
Defined in: composer/index.d.ts:305
Returns
ComposedMiddleware<TIn>
decorate()
Call Signature
decorate<
D>(values):EventComposer<TBase,TEventMap,TIn,TOut&D,TExposed,TDerives,TMethods,TMacros> &TMethods
Defined in: composer/index.d.ts:284
Type Parameters
| Type Parameter |
|---|
D extends object |
Parameters
| Parameter | Type |
|---|---|
values | D |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & D, TExposed, TDerives, TMethods, TMacros> & TMethods
Call Signature
decorate<
D>(values,options):EventComposer<TBase,TEventMap,TIn,TOut&D,TExposed&D,TDerives,TMethods,TMacros> &TMethods
Defined in: composer/index.d.ts:285
Type Parameters
| Type Parameter |
|---|
D extends object |
Parameters
| Parameter | Type |
|---|---|
values | D |
options | { as: "global" | "scoped"; } |
options.as | "global" | "scoped" |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & D, TExposed & D, TDerives, TMethods, TMacros> & TMethods
derive()
Call Signature
derive<
D>(handler):EventComposer<TBase,TEventMap,TIn,TOut&D,TExposed,TDerives,TMethods,TMacros> &TMethods
Defined in: composer/index.d.ts:288
Type Parameters
| Type Parameter |
|---|
D extends object |
Parameters
| Parameter | Type |
|---|---|
handler | DeriveHandler<TOut, D> |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & D, TExposed, TDerives, TMethods, TMacros> & TMethods
Call Signature
derive<
D>(handler,options):EventComposer<TBase,TEventMap,TIn,TOut&D,TExposed&D,TDerives,TMethods,TMacros> &TMethods
Defined in: composer/index.d.ts:289
Type Parameters
| Type Parameter |
|---|
D extends object |
Parameters
| Parameter | Type |
|---|---|
handler | DeriveHandler<TOut, D> |
options | { as: "global" | "scoped"; } |
options.as | "global" | "scoped" |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & D, TExposed & D, TDerives, TMethods, TMacros> & TMethods
Call Signature
derive<
E,D>(event,handler):EventComposer<TBase,TEventMap,TIn,TOut,TExposed,TDerives&{ [K in string]: D },TMethods,TMacros> &TMethods
Defined in: composer/index.d.ts:292
Type Parameters
| Type Parameter |
|---|
E extends string |
D extends object |
Parameters
| Parameter | Type |
|---|---|
event | MaybeArray<E> |
handler | DeriveHandler<ResolveEventCtx<TOut, TEventMap, TDerives, E>, D> |
Returns
EventComposer<TBase, TEventMap, TIn, TOut, TExposed, TDerives & { [K in string]: D }, TMethods, TMacros> & TMethods
error()
error(
kind,errorClass):this
Defined in: composer/index.d.ts:279
Parameters
| Parameter | Type |
|---|---|
kind | string |
errorClass | {(...args): any; prototype: Error; } |
errorClass.prototype | Error |
Returns
this
extend()
Call Signature
extend<
UIn,UOut,UExposed,UDerives,UMacros>(other):EventComposer<TBase,TEventMap,TIn,TOut&UExposed,TExposed,TDerives&UDerives,TMethods,TMacros&UMacros> &TMethods
Defined in: composer/index.d.ts:297
Type Parameters
| Type Parameter | Default type |
|---|---|
UIn extends object | - |
UOut extends object | - |
UExposed extends object | - |
UDerives extends Record<string, object> | - |
UMacros extends MacroDefinitions | object |
Parameters
| Parameter | Type |
|---|---|
other | EventComposer<TBase, TEventMap, UIn, UOut, UExposed, UDerives, any, UMacros> |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & UExposed, TExposed, TDerives & UDerives, TMethods, TMacros & UMacros> & TMethods
Call Signature
extend<
UIn,UOut,UExposed,UMacros>(other):EventComposer<TBase,TEventMap,TIn,TOut&UExposed,TExposed,TDerives,TMethods,TMacros&UMacros> &TMethods
Defined in: composer/index.d.ts:298
Type Parameters
| Type Parameter | Default type |
|---|---|
UIn extends object | - |
UOut extends object | - |
UExposed extends object | - |
UMacros extends MacroDefinitions | object |
Parameters
| Parameter | Type |
|---|---|
other | Composer<UIn, UOut, UExposed, UMacros> |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & UExposed, TExposed, TDerives, TMethods, TMacros & UMacros> & TMethods
Call Signature
extend<
P>(plugin):EventComposer<TBase,TEventMap,TIn,TOut&P["_"]["Derives"]["global"],TExposed,TDerives&Omit<P["_"]["Derives"],"global">,TMethods,TMacros&P["_"]["Macros"]>
Defined in: gramio/index.d.ts:54
Type Parameters
| Type Parameter |
|---|
P extends AnyPlugin |
Parameters
| Parameter | Type |
|---|---|
plugin | P |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & P["_"]["Derives"]["global"], TExposed, TDerives & Omit<P["_"]["Derives"], "global">, TMethods, TMacros & P["_"]["Macros"]>
fork()
fork(...
middleware):this
Defined in: composer/index.d.ts:275
Parameters
| Parameter | Type |
|---|---|
...middleware | Middleware<TOut>[] |
Returns
this
group()
group(
fn):this
Defined in: composer/index.d.ts:283
Parameters
| Parameter | Type |
|---|---|
fn | (composer) => void |
Returns
this
guard()
Call Signature
guard<
Narrowing>(predicate):EventComposer<TBase,TEventMap,TIn,TOut&Narrowing,TExposed,TDerives,TMethods,TMacros> &TMethods
Defined in: composer/index.d.ts:269
Type Parameters
| Type Parameter |
|---|
Narrowing |
Parameters
| Parameter | Type |
|---|---|
predicate | (context) => context is Narrowing |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & Narrowing, TExposed, TDerives, TMethods, TMacros> & TMethods
Call Signature
guard<
S>(predicate, ...middleware):this
Defined in: composer/index.d.ts:270
Type Parameters
| Type Parameter |
|---|
S extends object |
Parameters
| Parameter | Type |
|---|---|
predicate | (context) => context is S | (context) => boolean | Promise<boolean> |
...middleware | Middleware<any>[] |
Returns
this
inspect()
inspect():
MiddlewareInfo[]
Defined in: composer/index.d.ts:303
Returns
invalidate()
invalidate():
void
Defined in: composer/index.d.ts:324
Returns
void
lazy()
lazy(
factory):this
Defined in: composer/index.d.ts:277
Parameters
| Parameter | Type |
|---|---|
factory | LazyFactory<TOut> |
Returns
this
macro()
Call Signature
macro<
Name,TDef>(name,definition):EventComposer<TBase,TEventMap,TIn,TOut,TExposed,TDerives,TMethods,TMacros&Record<Name,TDef>> &TMethods
Defined in: composer/index.d.ts:300
Register a single named macro
Type Parameters
| Type Parameter |
|---|
Name extends string |
TDef extends MacroDef<any, any> |
Parameters
| Parameter | Type |
|---|---|
name | Name |
definition | TDef |
Returns
EventComposer<TBase, TEventMap, TIn, TOut, TExposed, TDerives, TMethods, TMacros & Record<Name, TDef>> & TMethods
Call Signature
macro<
TDefs>(definitions):EventComposer<TBase,TEventMap,TIn,TOut,TExposed,TDerives,TMethods,TMacros&TDefs> &TMethods
Defined in: composer/index.d.ts:302
Register multiple macros at once
Type Parameters
| Type Parameter |
|---|
TDefs extends Record<string, MacroDef<any, any>> |
Parameters
| Parameter | Type |
|---|---|
definitions | TDefs |
Returns
EventComposer<TBase, TEventMap, TIn, TOut, TExposed, TDerives, TMethods, TMacros & TDefs> & TMethods
on()
Call Signature
on<
Narrowing>(filter,handler):this
Defined in: composer/index.d.ts:262
Type Parameters
| Type Parameter |
|---|
Narrowing |
Parameters
| Parameter | Type |
|---|---|
filter | (ctx) => ctx is Narrowing |
handler | Middleware<ResolveEventCtx<TOut, TEventMap, TDerives, CompatibleEvents<TEventMap, Narrowing>> & Narrowing> |
Returns
this
Call Signature
on(
filter,handler):this
Defined in: composer/index.d.ts:263
Parameters
| Parameter | Type |
|---|---|
filter | (ctx) => boolean |
handler | Middleware<TOut> |
Returns
this
Call Signature
on<
E,Narrowing>(event,filter,handler):this
Defined in: composer/index.d.ts:264
Type Parameters
| Type Parameter |
|---|
E extends string |
Narrowing |
Parameters
| Parameter | Type |
|---|---|
event | MaybeArray<E> |
filter | (ctx) => ctx is Narrowing |
handler | Middleware<ResolveEventCtx<TOut, TEventMap, TDerives, E> & Narrowing> |
Returns
this
Call Signature
on<
E>(event,filter,handler):this
Defined in: composer/index.d.ts:265
Type Parameters
| Type Parameter |
|---|
E extends string |
Parameters
| Parameter | Type |
|---|---|
event | MaybeArray<E> |
filter | (ctx) => boolean |
handler | Middleware<ResolveEventCtx<TOut, TEventMap, TDerives, E>> |
Returns
this
Call Signature
on<
E,Patch>(event,handler):this
Defined in: composer/index.d.ts:266
Type Parameters
| Type Parameter | Default type |
|---|---|
E extends string | - |
Patch extends object | object |
Parameters
| Parameter | Type |
|---|---|
event | MaybeArray<E> |
handler | Middleware<ResolveEventCtx<TOut, TEventMap, TDerives, E> & Patch> |
Returns
this
onError()
onError(
handler):this
Defined in: composer/index.d.ts:278
Parameters
| Parameter | Type |
|---|---|
handler | ErrorHandler<TOut> |
Returns
this
route()
Call Signature
route<
K>(router,cases,fallback?):this
Defined in: composer/index.d.ts:272
Type Parameters
| Type Parameter |
|---|
K extends string |
Parameters
| Parameter | Type |
|---|---|
router | (context) => K | Promise<K> |
cases | Partial<Record<K, (composer) => Composer<any, any, any>>> |
fallback? | (composer) => Composer<any, any, any> |
Returns
this
Call Signature
route<
K>(router,builder):this
Defined in: composer/index.d.ts:273
Type Parameters
| Type Parameter |
|---|
K extends string |
Parameters
| Parameter | Type |
|---|---|
router | (context) => K | Promise<K> |
builder | (route) => void |
Returns
this
Call Signature
route<
K>(router,cases,fallback?):this
Defined in: composer/index.d.ts:274
Type Parameters
| Type Parameter |
|---|
K extends string |
Parameters
| Parameter | Type |
|---|---|
router | (context) => K | Promise<K> |
cases | Partial<Record<K, Middleware<TOut> | Middleware<TOut>[] | Composer<any, any, any>>> |
fallback? | Middleware<TOut> | Middleware<TOut>[] | Composer<any, any, any, { }> |
Returns
this
run()
run(
context,next?):Promise<void>
Defined in: composer/index.d.ts:306
Parameters
| Parameter | Type |
|---|---|
context | TIn |
next? | Next |
Returns
Promise<void>
tap()
tap(...
middleware):this
Defined in: composer/index.d.ts:276
Parameters
| Parameter | Type |
|---|---|
...middleware | Middleware<TOut>[] |
Returns
this
trace()
trace(
handler):this
Defined in: composer/index.d.ts:304
Parameters
| Parameter | Type |
|---|---|
handler | TraceHandler |
Returns
this
use()
Call Signature
use<
Patch>(handler):this
Defined in: composer/index.d.ts:267
Type Parameters
| Type Parameter |
|---|
Patch extends object |
Parameters
| Parameter | Type |
|---|---|
handler | Middleware<TOut & Patch> |
Returns
this
Call Signature
use(...
middleware):this
Defined in: composer/index.d.ts:268
Parameters
| Parameter | Type |
|---|---|
...middleware | Middleware<TOut>[] |
Returns
this
when()
when<
UOut>(condition,fn):EventComposer<TBase,TEventMap,TIn,TOut&Partial<Omit<UOut, keyofTOut>>,TExposed,TDerives,TMethods,TMacros> &TMethods
Defined in: composer/index.d.ts:295
Type Parameters
| Type Parameter |
|---|
UOut extends object |
Parameters
| Parameter | Type |
|---|---|
condition | boolean |
fn | (composer) => Composer<TOut, UOut, any> |
Returns
EventComposer<TBase, TEventMap, TIn, TOut & Partial<Omit<UOut, keyof TOut>>, TExposed, TDerives, TMethods, TMacros> & TMethods