unleash-server
Version:
Unleash is an enterprise ready feature flag service. It provides different strategies for handling feature flags.
23 lines • 1.06 kB
TypeScript
import type { RequestHandler } from 'express';
import type { IFlagResolver, IFlagKey } from '../types/index.js';
/**
* @deprecated Use `requireFeatureEnabled` for feature-flag route gating.
*
* Generic conditional middleware runner.
* Prefer this only for non-feature-flag conditions.
*/
export declare const conditionalMiddleware: (condition: () => boolean, middleware: RequestHandler) => RequestHandler;
/**
* Route-level feature gate middleware.
*
* Recommended usage:
* `middleware: [requireFeatureEnabled(config.flagResolver, 'myFlag')]`
*
* Guidance:
* - Prefer route-level usage (`this.route({ middleware: [...] })`) in controllers.
* - Avoid broad prefix mounts (for example `/api/admin/projects`) where sibling routes
* can accidentally be gated.
* - The route remains registered/discoverable; disabled features return `404` at request time.
*/
export declare const requireFeatureEnabled: (flagResolver: Pick<IFlagResolver, "isEnabled">, flagName: IFlagKey) => RequestHandler;
//# sourceMappingURL=conditional-middleware.d.ts.map