import { EvaluationContext, Provider, JsonValue, ResolutionDetails, ProviderStatus, OpenFeatureEventEmitter, ProviderMetadata, Hook, Logger } from "@openfeature/server-sdk"; import { ConfigurationClient } from "./configuration-client"; import { EvaluationCacheOptions, RefreshStrategy, ConfigData, ExperimentationOptions } from "./types"; export interface SuperpositionProviderOptions { endpoint: string; token: string; org_id: string; workspace_id: string; httpClient?: any; fallbackConfig?: ConfigData; evaluationCache?: EvaluationCacheOptions; refreshStrategy?: RefreshStrategy; experimentationOptions?: ExperimentationOptions; } export declare class SuperpositionProvider implements Provider { private config; readonly metadata: ProviderMetadata; events: OpenFeatureEventEmitter; readonly hooks: Hook[]; private client; status: ProviderStatus; private processedContextCache; constructor(config: SuperpositionProviderOptions); initialize(context?: EvaluationContext): Promise; onClose(): Promise; private evaluateFlag; private filterContext; private createResolver; resolveBooleanEvaluation(flagKey: string, defaultValue: boolean, context: EvaluationContext, logger?: Logger): Promise>; resolveStringEvaluation(flagKey: string, defaultValue: string, context: EvaluationContext, logger?: Logger): Promise>; resolveNumberEvaluation(flagKey: string, defaultValue: number, context: EvaluationContext, logger?: Logger): Promise>; resolveObjectEvaluation(flagKey: string, defaultValue: T, context: EvaluationContext, logger?: Logger): Promise>; resolveAllConfigDetails(defaultValue: Record, context: EvaluationContext, logger?: Logger): Promise>; getStatus(): ProviderStatus; getConfigurationClient(): ConfigurationClient; }