CfastPlugin
CfastPlugin<
TName,TProvides,TRequires,TClient> =object
Defined in: packages/core/src/types.ts:47
A cfast plugin definition created by definePlugin.
Plugins provide server-side context values via setup(), optional client-side React providers,
and optional client-side values accessible via useApp().
Type Parameters
Section titled “Type Parameters”TName extends string = string
The unique plugin name, used as the namespace key in AppContext.
TProvides
Section titled “TProvides”TProvides = unknown
The type returned by setup(), accessible as ctx[name].
TRequires
Section titled “TRequires”TRequires = unknown
The context shape this plugin depends on from prior plugins.
TClient
Section titled “TClient”TClient = unknown
Client-side values exposed via useApp().
Properties
Section titled “Properties”client?
Section titled “client?”
optionalclient:TClient
Defined in: packages/core/src/types.ts:62
Optional client-side values exposed via useApp().
name:
TName
Defined in: packages/core/src/types.ts:54
Unique identifier used as the namespace key in the app context.
Provider?
Section titled “Provider?”
optionalProvider:ComponentType<{children:ReactNode; }>
Defined in: packages/core/src/types.ts:60
Optional client-side React provider, composed into app.Provider.
setup()
Section titled “setup()”setup: (
ctx) =>TProvides|Promise<TProvides>
Defined in: packages/core/src/types.ts:56
Called per-request to produce the values this plugin provides.
Parameters
Section titled “Parameters”PluginSetupContext<TRequires>
Returns
Section titled “Returns”TProvides | Promise<TProvides>