erest
    Preparing search index...

    Interface FrameworkAdapter<T, Raw>

    Framework adapter interface Provides unified interface for different web frameworks (Express/Koa/@leizm/web built-in via subpackages; third-party adapters implement this interface with an arbitrary name)

    Raw 泛型不在接口方法签名中出现——它仅作为类型标记,由具体 adapter 实现类通过 implements FrameworkAdapter<T, ExpressRaw> 锁定,再经子包 createERest() 工厂透传到 registerTyped handler 的 reply.raw。故此处 no-unused-vars 不适用(类型层标记用法)。

    interface FrameworkAdapter<T = unknown, Raw = unknown> {
        name: string;
        attachGroupRouter(app: unknown, groupRouter: unknown, prefix: string): void;
        bindRoute(
            router: unknown,
            api: API<T>,
            handlers: T[],
            hooks?: LifecycleHooks,
            envelopers?: Envelopers,
        ): void;
        createGroupRouter(RouterCtor: unknown, prefix: string): unknown;
        makeParamsChecker(erest: ERest<T>, api: API<T>): T;
    }

    Type Parameters

    • T = unknown
    • Raw = unknown
    Index

    Properties

    name: string

    Framework identifier (e.g. "express"/"koa"/"leizmweb", or a custom adapter name)

    Methods

    • Attach group router to app

      Parameters

      • app: unknown

        Application instance

      • groupRouter: unknown

        Group router instance

      • prefix: string

        Route prefix

      Returns void

    • Bind a single route with handlers

      Parameters

      • router: unknown

        Router instance (express.Router, koa-router, etc.)

      • api: API<T>

        API schema

      • handlers: T[]

        Handler chain

      • Optionalhooks: LifecycleHooks

        生命周期 hooks(可选)

      • Optionalenvelopers: Envelopers

        全局响应信封包装器(可选,由 setResponseEnvelopers 注册)

      Returns void

    • Create a new group router with optional prefix

      Parameters

      • RouterCtor: unknown

        Router constructor

      • prefix: string

        Optional route prefix

      Returns unknown