import { Application } from 'express';
import { FeatureFlagConfig } from '../data/types';
import { type FeatureFlagEvaluationSubject, type FeatureFlagKey } from '../utils/featureFlagsHelper';
export declare class FeatureFlagService {
    private readonly clientConfig;
    private clientPromise;
    constructor(config?: FeatureFlagConfig | Record<string, unknown>);
    private getClient;
    refresh(): Promise<void>;
    evaluateBooleanFlag(flagKey: FeatureFlagKey, subject: FeatureFlagEvaluationSubject): Promise<boolean>;
    evaluateBooleanFlags<TFlag extends FeatureFlagKey>(flagKeys: readonly TFlag[], subject: FeatureFlagEvaluationSubject): Promise<Record<TFlag, boolean>>;
}
export declare const isBooleanFlagEnabledOrMissing: (flagName: string, app: Application) => boolean;
