import { CanActivate, ExecutionContext } from '@nestjs/common'; import { Reflector } from '@nestjs/core'; import type { FeatureFlagKey } from '@domain/types'; import { FeatureFlagService } from '@domain/featureFlags'; /** * Guard that ensures a feature flag is in the expected state * before allowing access to a route handler. * * @example * ```typescript * @Controller('premium') * @UseGuards(FeatureFlagGuard) * export class PremiumController { * @Get() * @FeatureEnabled('PREMIUM_FEATURE') * getPremiumData() { * // Only accessible if PREMIUM_FEATURE is enabled * } * } * ``` */ export declare class FeatureFlagGuard implements CanActivate { private readonly reflector; private readonly featureFlagService; private readonly logger; constructor(reflector: Reflector, featureFlagService: FeatureFlagService); canActivate(context: ExecutionContext): Promise; /** * Compare expected vs actual values. */ private matches; } //# sourceMappingURL=feature-flag.guard.d.ts.map