GramIO API Reference / @gramio/composer/dist / Composer
Class: Composer<TIn, TOut, TExposed, TMacros>
Defined in: composer/index.d.ts:143
Type Parameters
| Type Parameter | Default type |
|---|---|
TIn extends object | object |
TOut extends TIn | TIn |
TExposed extends object | object |
TMacros extends MacroDefinitions | object |
Constructors
Constructor
new Composer<
TIn,TOut,TExposed,TMacros>(options?):Composer<TIn,TOut,TExposed,TMacros>
Defined in: composer/index.d.ts:160
Parameters
| Parameter | Type |
|---|---|
options? | ComposerOptions |
Returns
Composer<TIn, TOut, TExposed, TMacros>
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
~ | object | - | composer/index.d.ts:144 |
~.compiled | ComposedMiddleware<any> | - | composer/index.d.ts:148 |
~.errorsDefinitions | Record<string, {(...args): any; prototype: Error; }> | - | composer/index.d.ts:151 |
~.extended | Set<string> | - | composer/index.d.ts:147 |
~.macros | Record<string, MacroDef<any, any>> | - | composer/index.d.ts:156 |
~.middlewares | ScopedMiddleware<any>[] | - | composer/index.d.ts:145 |
~.name | string | - | composer/index.d.ts:149 |
~.onErrors | ErrorHandler<any>[] | - | composer/index.d.ts:146 |
~.Out | TOut | Phantom type accessor — never set at runtime, used by ContextOf<T> | composer/index.d.ts:158 |
~.seed | unknown | - | composer/index.d.ts:150 |
~.tracer | TraceHandler | - | composer/index.d.ts:155 |
Methods
as()
as(
scope):Composer<TIn,TOut,TOut>
Defined in: composer/index.d.ts:190
Parameters
| Parameter | Type |
|---|---|
scope | "global" | "scoped" |
Returns
Composer<TIn, TOut, TOut>
branch()
branch(
predicate,onTrue,onFalse?):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:178
Parameters
| Parameter | Type |
|---|---|
predicate | boolean | (context) => boolean | Promise<boolean> |
onTrue | Middleware<TOut> |
onFalse? | Middleware<TOut> |
Returns
Composer<TIn, TOut, TExposed>
compose()
compose():
ComposedMiddleware<TIn>
Defined in: composer/index.d.ts:195
Returns
ComposedMiddleware<TIn>
decorate()
Call Signature
decorate<
D>(values):Composer<TIn,TOut&D,TExposed>
Defined in: composer/index.d.ts:166
Type Parameters
| Type Parameter |
|---|
D extends object |
Parameters
| Parameter | Type |
|---|---|
values | D |
Returns
Composer<TIn, TOut & D, TExposed>
Call Signature
decorate<
D>(values,options):Composer<TIn,TOut&D,TExposed&D>
Defined in: composer/index.d.ts:167
Type Parameters
| Type Parameter |
|---|
D extends object |
Parameters
| Parameter | Type |
|---|---|
values | D |
options | { as: "global" | "scoped"; } |
options.as | "global" | "scoped" |
Returns
Composer<TIn, TOut & D, TExposed & D>
derive()
Call Signature
derive<
D>(handler):Composer<TIn,TOut&D,TExposed>
Defined in: composer/index.d.ts:173
Type Parameters
| Type Parameter |
|---|
D extends object |
Parameters
| Parameter | Type |
|---|---|
handler | DeriveHandler<TOut, D> |
Returns
Composer<TIn, TOut & D, TExposed>
Call Signature
derive<
D>(handler,options):Composer<TIn,TOut&D,TExposed&D>
Defined in: composer/index.d.ts:174
Type Parameters
| Type Parameter |
|---|
D extends object |
Parameters
| Parameter | Type |
|---|---|
handler | DeriveHandler<TOut, D> |
options | { as: "global" | "scoped"; } |
options.as | "global" | "scoped" |
Returns
Composer<TIn, TOut & D, TExposed & D>
error()
error(
kind,errorClass):this
Defined in: composer/index.d.ts:186
Parameters
| Parameter | Type |
|---|---|
kind | string |
errorClass | {(...args): any; prototype: Error; } |
errorClass.prototype | Error |
Returns
this
extend()
extend<
UIn,UOut,UExposed,UMacros>(other):Composer<TIn,TOut&UExposed,TExposed,TMacros&UMacros>
Defined in: composer/index.d.ts:192
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
Composer<TIn, TOut & UExposed, TExposed, TMacros & UMacros>
fork()
fork(...
middleware):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:181
Parameters
| Parameter | Type |
|---|---|
...middleware | Middleware<TOut>[] |
Returns
Composer<TIn, TOut, TExposed>
group()
group(
fn):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:191
Parameters
| Parameter | Type |
|---|---|
fn | (composer) => void |
Returns
Composer<TIn, TOut, TExposed>
guard()
guard<
S>(predicate, ...middleware):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:177
Type Parameters
| Type Parameter |
|---|
S extends object |
Parameters
| Parameter | Type |
|---|---|
predicate | (context) => context is S | (context) => boolean | Promise<boolean> |
...middleware | Middleware<any>[] |
Returns
Composer<TIn, TOut, TExposed>
inspect()
inspect():
MiddlewareInfo[]
Defined in: composer/index.d.ts:193
Returns
invalidate()
invalidate():
void
Defined in: composer/index.d.ts:161
Returns
void
lazy()
lazy(
factory):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:183
Parameters
| Parameter | Type |
|---|---|
factory | LazyFactory<TOut> |
Returns
Composer<TIn, TOut, TExposed>
macro()
Call Signature
macro<
Name,TDef>(name,definition):Composer<TIn,TOut,TExposed,TMacros&Record<Name,TDef>>
Defined in: composer/index.d.ts:163
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
Composer<TIn, TOut, TExposed, TMacros & Record<Name, TDef>>
Call Signature
macro<
TDefs>(definitions):Composer<TIn,TOut,TExposed,TMacros&TDefs>
Defined in: composer/index.d.ts:165
Register multiple macros at once
Type Parameters
| Type Parameter |
|---|
TDefs extends Record<string, MacroDef<any, any>> |
Parameters
| Parameter | Type |
|---|---|
definitions | TDefs |
Returns
Composer<TIn, TOut, TExposed, TMacros & TDefs>
onError()
onError(
handler):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:184
Parameters
| Parameter | Type |
|---|---|
handler | ErrorHandler<TOut> |
Returns
Composer<TIn, TOut, TExposed>
route()
Call Signature
route<
K>(router,builder):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:179
Type Parameters
| Type Parameter |
|---|
K extends string |
Parameters
| Parameter | Type |
|---|---|
router | (context) => K | Promise<K> |
builder | (route) => void |
Returns
Composer<TIn, TOut, TExposed>
Call Signature
route<
K>(router,cases,fallback?):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:180
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
Composer<TIn, TOut, TExposed>
run()
run(
context,next?):Promise<void>
Defined in: composer/index.d.ts:196
Parameters
| Parameter | Type |
|---|---|
context | TIn |
next? | Next |
Returns
Promise<void>
tap()
tap(...
middleware):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:182
Parameters
| Parameter | Type |
|---|---|
...middleware | Middleware<TOut>[] |
Returns
Composer<TIn, TOut, TExposed>
trace()
trace(
handler):this
Defined in: composer/index.d.ts:194
Parameters
| Parameter | Type |
|---|---|
handler | TraceHandler |
Returns
this
use()
Call Signature
use(
handler):this
Defined in: composer/index.d.ts:170
Parameters
| Parameter | Type |
|---|---|
handler | Middleware<TOut> |
Returns
this
Call Signature
use<
Patch>(handler):this
Defined in: composer/index.d.ts:171
Type Parameters
| Type Parameter |
|---|
Patch extends object |
Parameters
| Parameter | Type |
|---|---|
handler | Middleware<TOut & Patch> |
Returns
this
Call Signature
use(...
middleware):Composer<TIn,TOut,TExposed>
Defined in: composer/index.d.ts:172
Parameters
| Parameter | Type |
|---|---|
...middleware | Middleware<TOut>[] |
Returns
Composer<TIn, TOut, TExposed>
when()
when<
UOut>(condition,fn):Composer<TIn,TOut&Partial<Omit<UOut, keyofTOut>>,TExposed>
Defined in: composer/index.d.ts:185
Type Parameters
| Type Parameter |
|---|
UOut extends object |
Parameters
| Parameter | Type |
|---|---|
condition | boolean |
fn | (composer) => Composer<TOut, UOut, any> |
Returns
Composer<TIn, TOut & Partial<Omit<UOut, keyof TOut>>, TExposed>