import { CLIEnvironmentProvider } from '../cliEnvironmentProvider'; import { FeatureFlagRegistration, FeatureFlagsEntry } from './featureFlagTypes'; export declare class FeatureFlags { private environmentProvider; private projectPath; private useNewDefaults; private static instance; private readonly registrations; private fileValueProvider; private envValueProvider; private effectiveFlags; private newProjectDefaults; private existingProjectDefaults; private constructor(); static initialize: (environmentProvider: CLIEnvironmentProvider, useNewDefaults?: boolean, additionalFlags?: Record) => Promise; static ensureDefaultFeatureFlags: (newProject: boolean) => Promise; static ensureFeatureFlag: (featureFlagSection: string, featureFlagName: string) => Promise; static getBoolean: (flagName: string) => boolean; static getNumber: (flagName: string) => number; static getEffectiveFlags: () => Readonly; static getNewProjectDefaults: () => Readonly; static getExistingProjectDefaults: () => Readonly; static removeFeatureFlagConfiguration: (removeProjectConfiguration: boolean, envNames: string[]) => Promise; static isInitialized: () => boolean; static reloadValues: () => Promise; private static removeOriginalConfigFile; private static ensureInitialized; private getValue; private buildJSONSchemaFromRegistrations; private buildDefaultValues; private validateFlags; private transformEnvFlags; private loadValues; private registerFlag; private registerFlags; } //# sourceMappingURL=featureFlags.d.ts.map