import { type SourcegraphGraphQLAPIClient } from '../sourcegraph-api/graphql'; export declare enum FeatureFlag { TestFlagDoNotUse = "test-flag-do-not-use", CodyAutocompleteTracing = "cody-autocomplete-tracing", CodyAutocompleteStarCoderHybrid = "cody-autocomplete-default-starcoder-hybrid", CodyAutocompleteStarCoder2Hybrid = "cody-autocomplete-starcoder2-hybrid", CodyAutocompleteFIMFineTunedModelHybrid = "cody-autocomplete-fim-fine-tuned-model-hybrid", CodyAutocompleteFIMModelExperimentBaseFeatureFlag = "cody-autocomplete-fim-model-experiment-flag", CodyAutocompleteFIMModelExperimentControl = "cody-autocomplete-fim-model-experiment-control", CodyAutocompleteFIMModelExperimentCurrentBest = "cody-autocomplete-fim-model-experiment-current-best", CodyAutocompleteFIMModelExperimentVariant1 = "cody-autocomplete-fim-model-experiment-variant-1", CodyAutocompleteFIMModelExperimentVariant2 = "cody-autocomplete-fim-model-experiment-variant-2", CodyAutocompleteFIMModelExperimentVariant3 = "cody-autocomplete-fim-model-experiment-variant-3", CodyAutocompleteFIMModelExperimentVariant4 = "cody-autocomplete-fim-model-experiment-variant-4", CodyAutocompleteClaude3 = "cody-autocomplete-claude-3", CodyAutocompleteContextBfgMixed = "cody-autocomplete-context-bfg-mixed", CodyAutocompleteUserLatency = "cody-autocomplete-user-latency", CodyAutocompleteHotStreakAndSmartThrottle = "cody-autocomplete-hot-streak-and-smart-throttle", CodyAutocompleteContextExtendLanguagePool = "cody-autocomplete-context-extend-language-pool", UseSscForCodySubscription = "use-ssc-for-cody-subscription", CodyProTrialEnded = "cody-pro-trial-ended", /** Interactive tutorial, primarily for onboarding */ CodyInteractiveTutorial = "cody-interactive-tutorial", /** Automatically start indexing using embeddings. */ CodyEmbeddingsAutoIndexing = "cody-embeddings-auto-indexing", /** Whether to use generated metadata to power embeddings. */ CodyEmbeddingsGenerateMetadata = "cody-embeddings-generate-metadata", /** Enhanced context experiment */ CodyEnhancedContextExperiment = "cody-enhanced-context-experiment", /** Use symf to provide enhanced context. */ CodyEnhancedContextUseSymf = "cody-enhanced-context-use-symf", /** Use embeddings to provide enhanced context. */ CodyEnhancedContexUseEmbeddings = "cody-enhanced-context-use-embeddings", /** Whether to use server-side Context API. */ CodyServerSideContextAPI = "cody-server-side-context-api-enabled", ChatPromptSelector = "chat-prompt-selector", GitMentionProvider = "git-mention-provider" } export declare class FeatureFlagProvider { private apiClient; private exposedFeatureFlags; private lastRefreshTimestamp; private unexposedFeatureFlags; private subscriptions; private nextRefreshTimeout; constructor(apiClient: SourcegraphGraphQLAPIClient); getFromCache(flagName: FeatureFlag, endpoint?: string): boolean | undefined; getExposedExperiments(endpoint?: string): Record; evaluateFeatureFlag(flagName: FeatureFlag, endpoint?: string): Promise; refresh(): Promise; private refreshFeatureFlags; onFeatureFlagChanged(prefixFilter: string, callback: () => void, endpoint?: string): () => void; private notifyFeatureFlagChanged; private computeFeatureFlagSnapshot; } export declare const featureFlagProvider: FeatureFlagProvider; //# sourceMappingURL=FeatureFlagProvider.d.ts.map